mirror-linux/tools/testing/selftests/net
Danielle Ratson 2d580c73af selftests: forwarding: Fix race condition in mirror installation
[ Upstream commit c7c059fba6 ]

When mirroring to a gretap in hardware the device expects to be
programmed with the egress port and all the encapsulating headers. This
requires the driver to resolve the path the packet will take in the
software data path and program the device accordingly.

If the path cannot be resolved (in this case because of an unresolved
neighbor), then mirror installation fails until the path is resolved.
This results in a race that causes the test to sometimes fail.

Fix this by setting the neighbor's state to permanent in a couple of
tests, so that it is always valid.

Fixes: 35c31d5c32 ("selftests: forwarding: Test mirror-to-gretap w/ UL 802.1d")
Fixes: 239e754af8 ("selftests: forwarding: Test mirror-to-gretap w/ UL 802.1q")
Signed-off-by: Danielle Ratson <danieller@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Petr Machata <petrm@nvidia.com>
Link: https://lore.kernel.org/r/268816ac729cb6028c7a34d4dda6f4ec7af55333.1687264607.git.petrm@nvidia.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-06-28 11:12:33 +02:00
..
af_unix af_unix: selftest: Fix the size of the parameter to connect() 2023-01-18 11:58:27 +01:00
bpf selftests net: fix kselftest net fatal error 2022-06-29 20:15:57 -07:00
forwarding selftests: forwarding: Fix race condition in mirror installation 2023-06-28 11:12:33 +02:00
mptcp selftests: mptcp: join: fix "userspace pm add & remove address" 2023-06-28 11:12:22 +02:00
openvswitch selftests: openvswitch: adjust datapath NL message declaration 2023-04-20 12:35:10 +02:00
.gitignore af_unix: Add test for sock_diag and UDIAG_SHOW_UID. 2022-12-01 10:32:20 +01:00
Makefile selftests: add selftest for chaining of tc ingress handling to egress 2022-10-19 14:04:36 +01:00
altnames.sh
amt.sh selftests: set amt.sh executable 2022-01-05 10:27:19 -08:00
arp_ndisc_evict_nocarrier.sh selftests: net: return non-zero for failures reported in arp_ndisc_evict_nocarrier 2023-01-12 12:02:22 +01:00
arp_ndisc_untracked_subnets.sh selftests: net: arp_ndisc_untracked_subnets: test for arp_accept and accept_untracked_na 2022-07-15 18:55:50 -07:00
bareudp.sh
bind_bhash.c selftests/net: Add test for timing a bind request to a port with a populated bhash entry 2022-08-24 19:30:09 -07:00
bind_bhash.sh selftests/net: Add test for timing a bind request to a port with a populated bhash entry 2022-08-24 19:30:09 -07:00
cmsg_ipv6.sh selftest: net: Improve IPV6_TCLASS/IPV6_HOPLIMIT tests apparmor compatibility 2023-02-22 12:59:42 +01:00
cmsg_sender.c selftests: net: fix cmsg_so_mark.sh test hang 2023-01-24 07:24:31 +01:00
cmsg_so_mark.sh selftests: net: cmsg_so_mark: test with SO_MARK set by setsockopt 2022-02-10 15:04:51 +00:00
cmsg_time.sh selftests: net: test standard socket cmsgs across UDP and ICMP sockets 2022-02-10 15:04:52 +00:00
config selftests/tls: Fix tls selftests dependency to correct algorithm 2022-12-02 20:48:47 -08:00
devlink_port_split.py selftests: net: devlink_port_split.py: skip test if no suitable device available 2023-03-22 13:33:50 +01:00
drop_monitor_tests.sh
fcnal-test.sh selftests: net: fcnal-test: check if FIPS mode is enabled 2023-06-28 11:12:29 +02:00
fib-onlink-tests.sh
fib_nexthop_multiprefix.sh
fib_nexthop_nongw.sh selftests/net: test nexthop without gw 2022-07-14 14:41:19 +02:00
fib_nexthops.sh net: selftests: Fix optstring 2023-05-24 17:32:48 +01:00
fib_rule_tests.sh selftests: net: fib_rule_tests: fix support for running individual tests 2022-07-01 13:37:13 +01:00
fib_tests.sh selftests: fib_tests: mute cleanup error message 2023-05-30 14:03:20 +01:00
fin_ack_lat.c
fin_ack_lat.sh
gre_gso.sh selftests: net: switch to socat in the GSO GRE test 2021-11-12 19:59:01 -08:00
gro.c Networking changes for 5.17. 2022-01-10 19:06:09 -08:00
gro.sh
hwtstamp_config.c
icmp.sh
icmp_redirect.sh selftests: icmp_redirect: pass xfail=0 to log_test() 2021-12-12 12:56:41 +00:00
in_netns.sh
io_uring_zerocopy_tx.c selftest/net: adjust io_uring sendzc notif handling 2022-09-23 14:57:27 -06:00
io_uring_zerocopy_tx.sh selftests/net: don't tests batched TCP io_uring zc 2022-11-02 08:27:24 -06:00
ioam6.sh selftests: net: fix IOAM test skip return code 2022-08-02 09:51:31 +02:00
ioam6_parser.c selftests: net: ioam: expect support for Queue depth data 2022-01-21 19:26:39 -08:00
ip6_gre_headroom.sh
ip_defrag.c
ip_defrag.sh
ipsec.c selftests/net: Refactor xfrm_fill_key() to use array of structs 2022-08-16 11:28:13 +02:00
ipv6_flowlabel.c ping: support ipv6 ping socket flow labels 2022-07-22 12:40:27 +01:00
ipv6_flowlabel.sh ping: support ipv6 ping socket flow labels 2022-07-22 12:40:27 +01:00
ipv6_flowlabel_mgr.c
l2_tos_ttl_inherit.sh selftests/net: l2_tos_ttl_inherit.sh: Ensure environment cleanup on failure. 2023-01-18 11:58:31 +01:00
l2tp.sh
msg_zerocopy.c
msg_zerocopy.sh
ndisc_unsolicited_na_test.sh net/ipv6: Expand and rename accept_unsolicited_na to accept_untracked_na 2022-05-31 11:36:57 +02:00
netdevice.sh
nettest.c net-next: Fix IP_UNICAST_IF option behavior for connected sockets 2022-08-31 19:51:06 -07:00
pmtu.sh selftests/net: Find nettest in current directory 2022-11-21 12:58:26 +00:00
psock_fanout.c selftests: net: fix array_size.cocci warning 2022-03-17 15:21:16 +01:00
psock_lib.h
psock_snd.c selftests/net: enable lo.accept_local in psock_snd test 2022-05-25 21:58:35 -07:00
psock_snd.sh
psock_tpacket.c
reuseaddr_conflict.c
reuseaddr_ports_exhausted.c
reuseaddr_ports_exhausted.sh
reuseport_addr_any.c
reuseport_addr_any.sh
reuseport_bpf.c selftests: Fix the if conditions of in test_extra_filter() 2022-09-27 11:00:02 +02:00
reuseport_bpf_cpu.c
reuseport_bpf_numa.c selftests: net: fix array_size.cocci warning 2022-03-07 12:23:27 +00:00
reuseport_dualstack.c
route_localnet.sh
rtnetlink.sh selftests: rtnetlink: correct xfrm policy rule in kci_test_ipsec_offload 2022-12-02 20:49:30 -08:00
run_afpackettests
run_netsocktests
rxtimestamp.c selftests/net: remove ARRAY_SIZE define from individual tests 2021-12-10 17:50:57 -07:00
rxtimestamp.sh
settings kselftests/net: adapt the timeout to the largest runtime 2022-01-13 12:53:22 +00:00
setup_loopback.sh
setup_veth.sh
sk_bind_sendto_listen.c selftests/net: Add sk_bind_sendto_listen and sk_connect_zero_addr 2022-08-24 19:30:09 -07:00
sk_connect_zero_addr.c selftests/net: Add sk_bind_sendto_listen and sk_connect_zero_addr 2022-08-24 19:30:09 -07:00
so_netns_cookie.c
so_txtime.c selftests/net: so_txtime: usage(): fix documentation of default clock 2022-05-03 13:18:26 +02:00
so_txtime.sh
socket.c selftests/net: remove ARRAY_SIZE define from individual tests 2021-12-10 17:50:57 -07:00
srv6_end_dt4_l3vpn_test.sh selftets: seg6: disable rp_filter by default in srv6_end_dt4_l3vpn_test 2023-05-24 17:32:43 +01:00
srv6_end_dt6_l3vpn_test.sh
srv6_end_dt46_l3vpn_test.sh selftests: srv6: make srv6_end_dt46_l3vpn_test more robust 2023-05-17 11:53:33 +02:00
srv6_end_next_csid_l3vpn_test.sh selftests: seg6: add selftest for NEXT-C-SID flavor in SRv6 End behavior 2022-09-20 12:33:22 +02:00
srv6_hencap_red_l3vpn_test.sh selftests: seg6: add selftest for SRv6 H.Encaps.Red behavior 2022-07-29 12:14:03 +01:00
srv6_hl2encap_red_l2vpn_test.sh selftests: seg6: add selftest for SRv6 H.L2Encaps.Red behavior 2022-07-29 12:14:03 +01:00
stress_reuseport_listen.c net: selftests: Stress reuseport listen 2022-05-12 16:52:18 -07:00
stress_reuseport_listen.sh net: selftests: Stress reuseport listen 2022-05-12 16:52:18 -07:00
tap.c selftests: add few test cases for tap driver 2022-08-05 08:59:15 +01:00
tcp_fastopen_backup_key.c selftests/net: remove ARRAY_SIZE define from individual tests 2021-12-10 17:50:57 -07:00
tcp_fastopen_backup_key.sh
tcp_inq.c
tcp_mmap.c
test_blackhole_dev.sh
test_bpf.sh
test_ingress_egress_chaining.sh selftests: add selftest for chaining of tc ingress handling to egress 2022-10-19 14:04:36 +01:00
test_vxlan_fdb_changelink.sh
test_vxlan_under_vrf.sh selftests: test_vxlan_under_vrf: Fix broken test case 2022-03-25 17:00:11 -07:00
test_vxlan_vnifiltering.sh selftests: Fix failing VXLAN VNI filtering test 2023-02-14 19:11:48 +01:00
timestamping.c selftests/net: timestamping: Fix bind_phc check 2022-01-31 11:44:04 +00:00
tls.c selftests: net: tls: check if FIPS mode is enabled 2023-06-28 11:12:29 +02:00
toeplitz.c selftests/net: toeplitz: fix race on tpacket_v3 block close 2023-02-01 08:34:26 +01:00
toeplitz.sh selftests: net: Use "grep -E" instead of "egrep" 2022-12-02 20:56:41 -08:00
toeplitz_client.sh
traceroute.sh
tun.c selftest: tun: add test for NAPI dismantle 2022-06-30 11:34:10 -07:00
txring_overwrite.c
txtimestamp.c selftests: net: change fprintf format specifiers 2022-03-21 16:37:54 -07:00
txtimestamp.sh
udpgro.sh selftests/net: fix missing xdp_dummy 2022-11-18 12:01:14 +00:00
udpgro_bench.sh selftests/net: fix missing xdp_dummy 2022-11-18 12:01:14 +00:00
udpgro_frglist.sh selftests/net: fix missing xdp_dummy 2022-11-18 12:01:14 +00:00
udpgro_fwd.sh selftests/net: fix missing xdp_dummy 2022-11-18 12:01:14 +00:00
udpgso.c selftests: Calculate udpgso segment count without header adjustment 2021-12-23 19:20:06 -08:00
udpgso.sh
udpgso_bench.sh selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs 2023-02-09 11:28:10 +01:00
udpgso_bench_rx.c selftests/net: Interpret UDP_GRO cmsg data as an int value 2023-03-10 09:33:07 +01:00
udpgso_bench_tx.c selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking 2023-02-09 11:28:11 +01:00
unicast_extensions.sh
veth.sh selftests/net: fix missing xdp_dummy 2022-11-18 12:01:14 +00:00
vrf-xfrm-tests.sh selftests: net: vrf-xfrm-tests: change authentication and encryption algos 2023-06-28 11:12:29 +02:00
vrf_route_leaking.sh
vrf_strict_mode_test.sh selftests: net: vrf_strict_mode_test: add support to select a test to run 2022-05-02 10:48:29 +02:00
xfrm_policy.sh