1. 30 4月, 2022 4 次提交
  2. 27 4月, 2022 2 次提交
  3. 23 4月, 2022 1 次提交
    • G
      mptcp: infinite mapping sending · 1e39e5a3
      Geliang Tang 提交于
      This patch adds the infinite mapping sending logic.
      
      Add a new flag send_infinite_map in struct mptcp_subflow_context. Set
      it true when a single contiguous subflow is in use and the
      allow_infinite_fallback flag is true in mptcp_pm_mp_fail_received().
      
      In mptcp_sendmsg_frag(), if this flag is true, call the new function
      mptcp_update_infinite_map() to set the infinite mapping.
      
      Add a new flag infinite_map in struct mptcp_ext, set it true in
      mptcp_update_infinite_map(), and check this flag in a new helper
      mptcp_check_infinite_map().
      
      In mptcp_update_infinite_map(), set data_len to 0, and clear the
      send_infinite_map flag, then do fallback.
      
      In mptcp_established_options(), use the helper mptcp_check_infinite_map()
      to let the infinite mapping DSS can be sent out in the fallback mode.
      Suggested-by: NPaolo Abeni <pabeni@redhat.com>
      Signed-off-by: NGeliang Tang <geliang.tang@suse.com>
      Signed-off-by: NMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1e39e5a3
  4. 11 4月, 2022 1 次提交
  5. 19 2月, 2022 1 次提交
  6. 17 2月, 2022 2 次提交
  7. 07 1月, 2022 3 次提交
    • P
      mptcp: do not block subflows creation on errors · a88c9e49
      Paolo Abeni 提交于
      If the MPTCP configuration allows for multiple subflows
      creation, and the first additional subflows never reach
      the fully established status - e.g. due to packets drop or
      reset - the in kernel path manager do not move to the
      next subflow.
      
      This patch introduces a new PM helper to cope with MPJ
      subflow creation failure and delay and hook it where appropriate.
      
      Such helper triggers additional subflow creation, as needed
      and updates the PM subflow counter, if the current one is
      closing.
      
      Additionally start all the needed additional subflows
      as soon as the MPTCP socket is fully established, so we don't
      have to cope with slow MPJ handshake blocking the next subflow
      creation.
      Signed-off-by: NPaolo Abeni <pabeni@redhat.com>
      Signed-off-by: NMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a88c9e49
    • P
      mptcp: keep track of local endpoint still available for each msk · 86e39e04
      Paolo Abeni 提交于
      Include into the path manager status a bitmap tracking the list
      of local endpoints still available - not yet used - for the
      relevant mptcp socket.
      
      Keep such map updated at endpoint creation/deletion time, so
      that we can easily skip already used endpoint at local address
      selection time.
      
      The endpoint used by the initial subflow is lazyly accounted at
      subflow creation time: the usage bitmap is be up2date before
      endpoint selection and we avoid such unneeded task in some relevant
      scenarios - e.g. busy servers accepting incoming subflows but
      not creating any additional ones nor annuncing additional addresses.
      
      Overall this allows for fair local endpoints usage in case of
      subflow failure.
      
      As a side effect, this patch also enforces that each endpoint
      is used at most once for each mptcp connection.
      Signed-off-by: NPaolo Abeni <pabeni@redhat.com>
      Signed-off-by: NMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      86e39e04
    • P
      mptcp: full disconnect implementation · b29fcfb5
      Paolo Abeni 提交于
      The current mptcp_disconnect() implementation lacks several
      steps, we additionally need to reset the msk socket state
      and flush the subflow list.
      
      Factor out the needed helper to avoid code duplication.
      
      Additionally ensure that the initial subflow is disposed
      only after mptcp_close(), just reset it at disconnect time.
      Signed-off-by: NPaolo Abeni <pabeni@redhat.com>
      Signed-off-by: NMat Martineau <mathew.j.martineau@linux.intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b29fcfb5
  8. 25 8月, 2021 1 次提交
  9. 24 8月, 2021 5 次提交
  10. 14 8月, 2021 3 次提交
  11. 23 6月, 2021 1 次提交
  12. 27 3月, 2021 5 次提交
  13. 13 3月, 2021 5 次提交
  14. 13 2月, 2021 2 次提交
  15. 07 2月, 2021 1 次提交
  16. 03 2月, 2021 2 次提交
  17. 10 1月, 2021 1 次提交