/linux-6.8/tools/testing/selftests/net/mptcp/ |
D | mptcp_join.sh | 655 local subflows=$3 658 ip -n $ns mptcp limits set add_addr_accepted $addrs subflows $subflows 660 ip netns exec $ns ./pm_nl_ctl limits $addrs $subflows 1822 fail_test "got $cnt1:$cnt2 subflows expected $subflow_nr" 1866 # $1: subflows in ns1 ; $2: subflows in ns2 1867 # number of all subflows, including the initial subflow. 1883 # if not, count the TCP connections that are in fact MPTCP subflows 1890 fail_test "got subflows $cnt1:$cnt2 expected $1:$2" 1983 # multiple subflows 1984 if reset "multiple subflows"; then [all …]
|
D | pm_netlink.sh | 83 subflows 2" "defaults limits" 134 check "ip netns exec $ns1 ./pm_nl_ctl limits" "$default_limits" "subflows above hard limit" 138 subflows 8" "set limits"
|
D | diag.sh | 100 __chk_nr "ss -nlHtON $ns | wc -l" "$expected" "$msg - subflows"
|
D | mptcp_sockopt.sh | 30 # just to debug: check we have multiple subflows connection requests
|
D | userspace_pm.sh | 584 print_title "Subflows v4 or v6 only tests" 819 print_title "Subflows v4 and v6 mix tests"
|
D | pm_nl_ctl.c | 1181 "subflows" : "accept", max); in print_limits() 1194 uint32_t rcv_addr = 0, subflows = 0; in get_set_limits() local 1202 subflows = atoi(argv[3]); in get_set_limits() 1224 memcpy(RTA_DATA(rta), &subflows, 4); in get_set_limits()
|
D | mptcp_sockopt.c | 101 __u32 size_arrays_user; /* max subflows that userspace is interested in;
|
/linux-6.8/Documentation/netlink/specs/ |
D | mptcp_pm.yaml | 35 A MPTCP connection is established (can start new subflows). 185 name: subflows 326 - subflows 336 - subflows 340 - subflows
|
/linux-6.8/net/mptcp/ |
D | pm.c | 95 pm->subflows++; in mptcp_pm_allow_new_subflow() 104 pr_debug("msk=%p subflows=%d max=%d allow=%d", msk, pm->subflows, in mptcp_pm_allow_new_subflow() 113 ret = pm->subflows < subflows_max; in mptcp_pm_allow_new_subflow() 114 if (ret && ++pm->subflows == subflows_max) in mptcp_pm_allow_new_subflow() 197 pm->subflows--; in mptcp_pm_subflow_check_next() 505 pm->subflows = 0; in mptcp_pm_data_reset()
|
D | pm_netlink.c | 235 if (msk->pm.subflows == mptcp_pm_get_subflows_max(msk) || in mptcp_pm_nl_check_work_pending() 427 msk->pm.subflows++; in fill_remote_addresses_vec() 432 /* Forbid creation of new subflows matching existing in fill_remote_addresses_vec() 453 if (msk->pm.subflows < subflows_max) { in fill_remote_addresses_vec() 458 msk->pm.subflows++; in fill_remote_addresses_vec() 537 /* do lazy endpoint usage accounting for the MPC subflows */ in mptcp_pm_create_subflow_or_signal_addr() 560 pr_debug("local %d:%d signal %d:%d subflows %d:%d\n", in mptcp_pm_create_subflow_or_signal_addr() 563 msk->pm.subflows, subflows_max); in mptcp_pm_create_subflow_or_signal_addr() 591 msk->pm.subflows < subflows_max) { in mptcp_pm_create_subflow_or_signal_addr() 650 if (msk->pm.subflows < subflows_max) { in fill_local_addresses_vec() [all …]
|
D | sockopt.c | 372 * we must be careful with subflows in mptcp_setsockopt_sol_socket() 378 * SO_MAX_PACING_RATE is unsupported, we must be careful with subflows in mptcp_setsockopt_sol_socket() 540 /* IPV6_ADDR_PREFERENCES is not supported, we must be careful with subflows */ in mptcp_supported_sockopt() 855 * there are multiple subflows is not yet defined. It is up to the in mptcp_setsockopt() 856 * MPTCP-level socket to configure the subflows until the subflow in mptcp_setsockopt() 913 info->mptcpi_subflows = READ_ONCE(msk->pm.subflows); in mptcp_diag_fill_info() 1401 * there are multiple subflows is not yet defined. It is up to the in mptcp_getsockopt() 1402 * MPTCP-level socket to configure the subflows until the subflow in mptcp_getsockopt() 1482 /* subflows must ignore any latency-related settings: will not affect in mptcp_sockopt_sync_locked() 1521 /* propagate the rcvbuf changes to all the subflows */ in mptcp_set_rcvlowat()
|
D | mib.h | 60 MPTCP_MIB_SUBFLOWSTALE, /* Subflows entered 'stale' status */ 61 MPTCP_MIB_SUBFLOWRECOVER, /* Subflows returned to active status after being stale */
|
D | Kconfig | 10 subflows in order to utilize multiple network paths. Each subflow
|
D | protocol.h | 234 u8 subflows; member 327 u64 rtt_us; /* last maximum rtt of subflows */ 457 struct list_head node;/* conn_list of subflows */ 505 u64 iasn; /* initial ack sequence number, MPC subflows only */ 1047 if (--msk->pm.subflows < mptcp_pm_get_subflows_max(msk)) in __mptcp_pm_close_subflow()
|
D | protocol.c | 241 /* with 2 subflows, adding at end of ooo queue is quite likely in mptcp_data_queue_ofo() 1952 * Only difference: Use highest rtt estimate of the subflows in use. 2024 /* Make subflows follow along. If we do not do this, we in mptcp_rcv_space_adjust() 2078 /* we can have data pending in the subflows only if the msk in __mptcp_move_skbs() 2380 * Outgoing subflows use in-kernel sockets. 2381 * Incoming subflows do not have their own 'struct socket' allocated, 2461 /* Catch every 'all subflows closed' scenario, including peers silently in __mptcp_close_ssk() 2464 * as the protocol can still create more subflows. in __mptcp_close_ssk() 2623 /* limit retransmission to the bytes already sent on some subflows */ in __mptcp_retrans() 2932 /* we still need to enqueue subflows or not really shutting down, in mptcp_check_send_data_fin() [all …]
|
D | syncookies.c | 17 * token matches a known mptcp connection that can still accept more subflows.
|
D | options.c | 936 * for mp_join subflows in check_fully_established() 948 * for MP_JOIN subflows as the peer must not send any data in check_fully_established() 962 /* subflows are fully established as soon as we get any in check_fully_established() 970 * MP_JOIN subflows. in check_fully_established()
|
D | subflow.c | 1598 /* we account subflows before the creation, and this failures will not in __mptcp_subflow_connect() 1611 /* only the additional subflows created by kworkers have to be modified */ in mptcp_attach_cgroup() 1692 * socket, even if for additional subflows the allocation is performed in mptcp_subflow_create_socket() 2101 panic("MPTCP: failed to register subflows to ULP\n"); in mptcp_subflow_init()
|
D | pm_userspace.c | 398 msk->pm.subflows++; in mptcp_pm_nl_subflow_create_doit()
|
/linux-6.8/Documentation/networking/ |
D | mptcp-sysctl.rst | 80 The packet scheduler ignores stale subflows.
|
/linux-6.8/include/uapi/linux/ |
D | mptcp.h | 106 __u32 size_arrays_user; /* max subflows that userspace is interested in;
|
D | mptcp_pm.h | 21 * sport, dport A MPTCP connection is established (can start new subflows).
|
/linux-6.8/include/net/ |
D | mptcp.h | 104 u8 subflows; member
|
/linux-6.8/drivers/net/ethernet/netronome/nfp/flower/ |
D | offload.c | 1637 /* Do not cycle subflows if no stats to distribute. */ in __nfp_flower_update_merge_stats() 1648 * Distribute these stats to all subflows that form the merge. in __nfp_flower_update_merge_stats() 1649 * The stats will collected from TC via the subflows. in __nfp_flower_update_merge_stats()
|
/linux-6.8/net/sched/ |
D | sch_tbf.c | 319 subflows, it would be a very good solution. in tbf_dequeue()
|