/
usr
/
src
/
linux-headers-5.15.0-181
/
tools
/
testing
/
selftests
/
net
/
/usr/src/linux-headers-5.15.0-181/tools/testing/selftests/net
mkdir
upload
Name
Size
Mode
Actions
af_unix/
-
0755
rm
forwarding/
-
0755
rm
mptcp/
-
0755
rm
altnames.sh
1817
0755
edit
dl
rm
bareudp.sh
21290
0755
edit
dl
rm
drop_monitor_tests.sh
4439
0755
edit
dl
rm
fcnal-test.sh
103221
0755
edit
dl
rm
fib-onlink-tests.sh
12409
0755
edit
dl
rm
fib_nexthops.sh
68003
0755
edit
dl
rm
fib_nexthop_multiprefix.sh
5870
0755
edit
dl
rm
fib_nexthop_nongw.sh
2327
0755
edit
dl
rm
fib_rule_tests.sh
5981
0755
edit
dl
rm
fib_tests.sh
57224
0755
edit
dl
rm
fin_ack_lat.sh
507
0755
edit
dl
rm
gre_gso.sh
4237
0755
edit
dl
rm
gro.sh
2132
0755
edit
dl
rm
icmp.sh
2618
0755
edit
dl
rm
icmp_redirect.sh
12820
0755
edit
dl
rm
in_netns.sh
323
0755
edit
dl
rm
ioam6.sh
25962
0755
edit
dl
rm
ip6_gre_headroom.sh
1400
0755
edit
dl
rm
ipv6_flowlabel.sh
502
0755
edit
dl
rm
ip_defrag.sh
2087
0755
edit
dl
rm
l2tp.sh
9909
0755
edit
dl
rm
lib.sh
597
0644
edit
dl
rm
Makefile
2499
0644
edit
dl
rm
msg_zerocopy.sh
3012
0755
edit
dl
rm
netdevice.sh
4521
0755
edit
dl
rm
net_helper.sh
514
0644
edit
dl
rm
pmtu.sh
74711
0755
edit
dl
rm
psock_snd.sh
2252
0755
edit
dl
rm
reuseaddr_ports_exhausted.sh
635
0755
edit
dl
rm
reuseport_addr_any.sh
81
0755
edit
dl
rm
route_localnet.sh
1871
0755
edit
dl
rm
rtnetlink.sh
29476
0755
edit
dl
rm
rxtimestamp.sh
79
0755
edit
dl
rm
setup_loopback.sh
2654
0644
edit
dl
rm
setup_veth.sh
929
0644
edit
dl
rm
so_txtime.sh
2434
0755
edit
dl
rm
srv6_end_dt4_l3vpn_test.sh
17454
0755
edit
dl
rm
srv6_end_dt6_l3vpn_test.sh
17615
0755
edit
dl
rm
srv6_end_dt46_l3vpn_test.sh
21121
0755
edit
dl
rm
tcp_fastopen_backup_key.sh
1086
0755
edit
dl
rm
test_blackhole_dev.sh
280
0755
edit
dl
rm
test_bpf.sh
225
0755
edit
dl
rm
test_vxlan_fdb_changelink.sh
678
0755
edit
dl
rm
test_vxlan_under_vrf.sh
5607
0755
edit
dl
rm
toeplitz.sh
4983
0755
edit
dl
rm
toeplitz_client.sh
667
0755
edit
dl
rm
traceroute.sh
7131
0755
edit
dl
rm
txtimestamp.sh
1702
0755
edit
dl
rm
udpgro.sh
5988
0755
edit
dl
rm
udpgro_bench.sh
2126
0755
edit
dl
rm
udpgro_fwd.sh
7145
0755
edit
dl
rm
udpgso.sh
545
0755
edit
dl
rm
udpgso_bench.sh
2852
0755
edit
dl
rm
unicast_extensions.sh
8263
0755
edit
dl
rm
veth.sh
10441
0755
edit
dl
rm
vrf-xfrm-tests.sh
10970
0755
edit
dl
rm
vrf_route_leaking.sh
14946
0755
edit
dl
rm
vrf_strict_mode_test.sh
7688
0755
edit
dl
rm
xfrm_policy.sh
14759
0755
edit
dl
rm
Edit:
/usr/src/linux-headers-5.15.0-181/tools/testing/selftests/net/msg_zerocopy.sh
(3012B)
#!/bin/bash # # Send data between two processes across namespaces # Run twice: once without and once with zerocopy set -e readonly DEV="veth0" readonly DEV_MTU=65535 readonly BIN="./msg_zerocopy" readonly RAND="$(mktemp -u XXXXXX)" readonly NSPREFIX="ns-${RAND}" readonly NS1="${NSPREFIX}1" readonly NS2="${NSPREFIX}2" readonly SADDR4='192.168.1.1' readonly DADDR4='192.168.1.2' readonly SADDR6='fd::1' readonly DADDR6='fd::2' readonly path_sysctl_mem="net.core.optmem_max" # No arguments: automated test if [[ "$#" -eq "0" ]]; then $0 4 tcp -t 1 $0 6 tcp -t 1 $0 4 udp -t 1 $0 6 udp -t 1 echo "OK. All tests passed" exit 0 fi # Argument parsing if [[ "$#" -lt "2" ]]; then echo "Usage: $0 [4|6] [tcp|udp|raw|raw_hdrincl|packet|packet_dgram] <args>" exit 1 fi readonly IP="$1" shift readonly TXMODE="$1" shift readonly EXTRA_ARGS="$@" # Argument parsing: configure addresses if [[ "${IP}" == "4" ]]; then readonly SADDR="${SADDR4}" readonly DADDR="${DADDR4}" elif [[ "${IP}" == "6" ]]; then readonly SADDR="${SADDR6}" readonly DADDR="${DADDR6}" else echo "Invalid IP version ${IP}" exit 1 fi # Argument parsing: select receive mode # # This differs from send mode for # - packet: use raw recv, because packet receives skb clones # - raw_hdrinc: use raw recv, because hdrincl is a tx-only option case "${TXMODE}" in 'packet' | 'packet_dgram' | 'raw_hdrincl') RXMODE='raw' ;; *) RXMODE="${TXMODE}" ;; esac # Start of state changes: install cleanup handler save_sysctl_mem="$(sysctl -n ${path_sysctl_mem})" cleanup() { ip netns del "${NS2}" ip netns del "${NS1}" sysctl -w -q "${path_sysctl_mem}=${save_sysctl_mem}" } trap cleanup EXIT # Configure system settings sysctl -w -q "${path_sysctl_mem}=1000000" # Create virtual ethernet pair between network namespaces ip netns add "${NS1}" ip netns add "${NS2}" ip link add "${DEV}" mtu "${DEV_MTU}" netns "${NS1}" type veth \ peer name "${DEV}" mtu "${DEV_MTU}" netns "${NS2}" # Bring the devices up ip -netns "${NS1}" link set "${DEV}" up ip -netns "${NS2}" link set "${DEV}" up # Set fixed MAC addresses on the devices ip -netns "${NS1}" link set dev "${DEV}" address 02:02:02:02:02:02 ip -netns "${NS2}" link set dev "${DEV}" address 06:06:06:06:06:06 # Add fixed IP addresses to the devices ip -netns "${NS1}" addr add 192.168.1.1/24 dev "${DEV}" ip -netns "${NS2}" addr add 192.168.1.2/24 dev "${DEV}" ip -netns "${NS1}" addr add fd::1/64 dev "${DEV}" nodad ip -netns "${NS2}" addr add fd::2/64 dev "${DEV}" nodad # Optionally disable sg or csum offload to test edge cases # ip netns exec "${NS1}" ethtool -K "${DEV}" sg off do_test() { local readonly ARGS="$1" echo "ipv${IP} ${TXMODE} ${ARGS}" ip netns exec "${NS2}" "${BIN}" "-${IP}" -i "${DEV}" -t 2 -C 2 -S "${SADDR}" -D "${DADDR}" ${ARGS} -r "${RXMODE}" & sleep 0.2 ip netns exec "${NS1}" "${BIN}" "-${IP}" -i "${DEV}" -t 1 -C 3 -S "${SADDR}" -D "${DADDR}" ${ARGS} "${TXMODE}" wait } do_test "${EXTRA_ARGS}" do_test "-z ${EXTRA_ARGS}" echo ok
Save
cmd:
run