linux/tools/testing/selftests/net
Jiayuan Chen 46c1ef0cfc selftests: net: add test for IPv4 route with loopback IPv6 nexthop
Add a regression test for a kernel panic that occurs when an IPv4 route
references an IPv6 nexthop object created on the loopback device.

The test creates an IPv6 nexthop on lo, binds an IPv4 route to it, then
triggers a route lookup via ping to verify the kernel does not crash.

  ./fib_nexthops.sh
  Tests passed: 249
  Tests failed:   0

Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: Jiayuan Chen <jiayuan.chen@shopee.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Link: https://patch.msgid.link/20260304113817.294966-3-jiayuan.chen@linux.dev
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-03-05 07:53:17 -08:00
..
af_unix Including fixes from netfilter and CAN. 2025-12-19 07:55:35 +12:00
bench
can selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
forwarding selftests: tc_actions: don't dump 2MB of \0 to stdout 2026-02-17 17:13:07 -08:00
hsr selftests: hsr: Add more link fault tests for HSR 2026-02-10 12:02:29 +01:00
lib selftests: net: fix wrong boolean evaluation in __exit__ 2026-01-26 19:32:20 -08:00
mptcp selftests: mptcp: join: check removing signal+subflow endp 2026-03-04 18:21:13 -08:00
netfilter selftests: netfilter: nft_queue.sh: avoid flakes on debug kernels 2026-02-27 18:36:59 -08:00
openvswitch Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-09-18 11:26:06 -07:00
ovpn selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
packetdrill selftests/net: packetdrill: restore tcp_rcv_big_endseq.pkt 2026-03-02 18:47:46 -08:00
rds selftests: net: unify the Makefile formats 2025-10-06 13:14:06 -07:00
tcp_ao selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
.gitignore selftests: net: Add kernel selftest for RFC 4884 2026-01-22 18:29:49 -08:00
Makefile selftests: net: Add bridge VLAN range grouping tests 2026-02-26 19:24:29 -08:00
altnames.sh
amt.sh selftests: net: amt: wait longer for connection before sending packets 2026-01-21 19:20:30 -08:00
arp_ndisc_evict_nocarrier.sh selftests: net: add a hint about MACAddressPolicy=persistent 2025-12-01 12:02:13 -08:00
arp_ndisc_untracked_subnets.sh
bareudp.sh selftests: net: use BASH for bareudp testing 2025-10-29 17:56:03 -07:00
big_tcp.sh
bind_bhash.c selftest: net: Fix weird setsockopt() in bind_bhash.c. 2025-09-04 07:30:04 -07:00
bind_bhash.sh
bind_timewait.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
bind_wildcard.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
bpf.mk
bpf_offload.py selftests: net: bpf_offload: print loaded programs on mismatch 2025-08-20 19:28:03 -07:00
bridge_vlan_dump.sh selftests: net: Add bridge VLAN range grouping tests 2026-02-26 19:24:29 -08:00
broadcast_ether_dst.sh selftests: net: add test for destination in broadcast packets 2025-09-09 11:29:58 +02:00
broadcast_pmtu.sh selftests: net: add test for variable PMTU in broadcast routes 2025-07-14 17:29:41 -07:00
busy_poll_test.sh selftests: Add napi threaded busy poll test in `busy_poller` 2025-11-03 18:11:40 -08:00
busy_poller.c selftests: Add napi threaded busy poll test in `busy_poller` 2025-11-03 18:11:40 -08:00
cmsg_ip.sh
cmsg_sender.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
cmsg_so_mark.sh
cmsg_so_priority.sh
cmsg_time.sh
config selftests: net: tests for add double tunneling GRO/GSO 2026-01-23 11:31:14 -08:00
double_udp_encap.sh selftests: net: tests for add double tunneling GRO/GSO 2026-01-23 11:31:14 -08:00
drop_monitor_tests.sh
epoll_busy_poll.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
fcnal-ipv4.sh selftests: net: run groups from fcnal-test in parallel 2025-09-09 15:34:11 -07:00
fcnal-ipv6.sh selftests: net: run groups from fcnal-test in parallel 2025-09-09 15:34:11 -07:00
fcnal-other.sh selftests: net: run groups from fcnal-test in parallel 2025-09-09 15:34:11 -07:00
fcnal-test.sh selftests: net: add ipv6 ping to local address from localhost 2026-01-25 13:16:47 -08:00
fdb_flush.sh
fdb_notify.sh selftests: net: lib: Rename ip_link_set_master() to adf_* 2025-09-26 17:48:37 -07:00
fib-onlink-tests.sh Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-01-22 20:14:36 -08:00
fib_nexthop_multiprefix.sh
fib_nexthop_nongw.sh
fib_nexthops.sh selftests: net: add test for IPv4 route with loopback IPv6 nexthop 2026-03-05 07:53:17 -08:00
fib_rule_tests.sh
fib_tests.sh selftests: fib_test: Add test case for ipv4 multi nexthops 2025-12-30 11:07:38 +01:00
fin_ack_lat.c
fin_ack_lat.sh
fq_band_pktlimit.sh
gre_gso.sh
gre_ipv6_lladdr.sh selftests: Add IPv6 multicast route generation tests for GRE devices. 2025-07-10 18:11:04 -07:00
hwtstamp_config.c
icmp.sh
icmp_redirect.sh
icmp_rfc4884.c selftests: net: Add kernel selftest for RFC 4884 2026-01-22 18:29:49 -08:00
in_netns.sh
io_uring_zerocopy_tx.c selftests/net: io_uring: fix unknown errnum values 2025-10-17 16:57:53 -07:00
io_uring_zerocopy_tx.sh
ioam6.sh ipv6: preserve insertion order for same-scope addresses 2026-01-06 16:41:35 -08:00
ioam6_parser.c
ip6_gre_headroom.sh
ip_defrag.c
ip_defrag.sh
ip_local_port_range.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
ip_local_port_range.sh
ipsec.c selftests/net/ipsec: Fix variable size type not at the end of struct 2026-01-12 19:15:04 -08:00
ipv6_flowlabel.c
ipv6_flowlabel.sh
ipv6_flowlabel_mgr.c
ipv6_force_forwarding.sh ipv6: add `force_forwarding` sysctl to enable per-interface forwarding 2025-07-25 13:06:19 -07:00
ipv6_fragmentation.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
ipv6_route_update_soft_lockup.sh
ipvtap_test.sh selftests: net: simple selftest for ipvtap 2026-01-19 10:03:31 -08:00
l2_tos_ttl_inherit.sh
l2tp.sh
lib.sh selftests: net: lib: Fix jq parsing error 2026-02-12 18:41:18 -08:00
link_netns.py
lwt_dst_cache_ref_loop.sh
msg_zerocopy.c
msg_zerocopy.sh
nat6to4.bpf.c
nat6to4.sh
ndisc_unsolicited_na_test.sh
netdev-l2addr.sh selftests: net: add netdev-l2addr.sh for testing L2 address functionality 2025-07-11 17:00:18 -07:00
netdevice.sh
netlink-dumps.c Significant patch series in this pull request: 2025-12-06 14:01:20 -08:00
netns-name.sh
netns-sysctl.sh
nettest.c
nl_netdev.py net: define an enum for the napi threaded state 2025-07-24 18:34:55 -07:00
pmtu.sh selftests: net: speed up pmtu.sh by avoiding unnecessary cleanup 2025-09-09 16:26:44 -07:00
proc_net_pktgen.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
psock_fanout.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
psock_lib.h selftests: centralise maybe-unused definition in kselftest.h 2025-09-13 16:55:16 -07:00
psock_snd.c
psock_snd.sh
psock_tpacket.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
reuseaddr_conflict.c
reuseaddr_ports_exhausted.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
reuseaddr_ports_exhausted.sh
reuseport_addr_any.c
reuseport_addr_any.sh
reuseport_bpf.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
reuseport_bpf_cpu.c
reuseport_bpf_numa.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
reuseport_dualstack.c
route_hint.sh selftests: net: add test for dst hint mechanism with directed broadcast addresses 2025-08-25 16:07:16 -07:00
route_localnet.sh
rps_default_mask.sh selftests: net: fix spelling and grammar mistakes 2025-09-01 13:08:07 -07:00
rtnetlink.py
rtnetlink.sh ipv6: clean up routes when manually removing address with a lifetime 2025-11-14 17:44:47 -08:00
rtnetlink_notification.sh
run_afpackettests
run_netsocktests
rxtimestamp.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
rxtimestamp.sh
sample_map_ret0.bpf.c
sample_ret0.bpf.c
sctp_hello.c selftests: net: fix server bind failure in sctp_vrf.sh 2025-10-20 16:41:33 -07:00
sctp_vrf.sh selftests: net: fix server bind failure in sctp_vrf.sh 2025-10-20 16:41:33 -07:00
settings
sk_bind_sendto_listen.c
sk_connect_zero_addr.c
sk_so_peek_off.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
skf_net_off.c
skf_net_off.sh
so_incoming_cpu.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
so_netns_cookie.c
so_rcv_listener.c
so_txtime.c selftests/net: initialize char variable to null 2025-11-26 15:23:27 -08:00
so_txtime.sh
socket.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
srv6_end_dt4_l3vpn_test.sh
srv6_end_dt6_l3vpn_test.sh
srv6_end_dt46_l3vpn_test.sh
srv6_end_dx4_netfilter_test.sh
srv6_end_dx6_netfilter_test.sh
srv6_end_flavors_test.sh
srv6_end_next_csid_l3vpn_test.sh
srv6_end_x_next_csid_l3vpn_test.sh
srv6_hencap_red_l3vpn_test.sh
srv6_hl2encap_red_l2vpn_test.sh
stress_reuseport_listen.c
stress_reuseport_listen.sh
tap.c selftests: net: fix "buffer overflow detected" for tap.c 2025-12-23 12:30:23 +01:00
tcp_fastopen_backup_key.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
tcp_fastopen_backup_key.sh
tcp_inq.c
tcp_mmap.c
tcp_port_share.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
test_bpf.sh
test_bridge_backup_port.sh selftests: net: Test bridge backup port when port is administratively down 2025-08-14 17:45:36 -07:00
test_bridge_neigh_suppress.sh
test_ingress_egress_chaining.sh
test_neigh.sh selftests: net: Fix flaky neighbor garbage collection test 2025-08-01 13:51:41 -07:00
test_so_rcv.sh
test_vxlan_fdb_changelink.sh selftests: net: lib: Rename ip_link_set_up() to adf_* 2025-09-26 17:48:37 -07:00
test_vxlan_mdb.sh
test_vxlan_nh.sh selftests: net: Add a selftest for VXLAN with FDB nexthop groups 2025-09-02 16:57:00 -07:00
test_vxlan_nolocalbypass.sh
test_vxlan_under_vrf.sh
test_vxlan_vnifiltering.sh
tfo.c selftests: net: improve error handling in passive TFO test 2026-01-17 18:01:26 -08:00
tfo_passive.sh selftests: net: fix passive TFO test to fail if child processes failed 2026-01-17 18:01:26 -08:00
timestamping.c
tls.c selftests: tls: avoid flakiness in data_steal 2026-01-09 17:33:28 -08:00
traceroute.sh selftests: traceroute: Add ICMP extensions tests 2025-10-29 18:28:30 -07:00
tun.c selftests: net: tun: don't abort XFAIL cases 2026-03-05 07:34:55 -08:00
tuntap_helpers.h selftest: tun: Introduce tuntap_helpers.h header for TUN/TAP testing 2026-01-23 11:43:28 -08:00
txring_overwrite.c
txtimestamp.c selftests: net: reduce txtimestamp deschedule flakes 2026-01-13 11:46:39 -08:00
txtimestamp.sh
udpgro.sh selftests: net: increase inter-packet timeout in udpgro.sh 2025-07-15 15:26:47 +02:00
udpgro_bench.sh
udpgro_frglist.sh
udpgro_fwd.sh selftest: net: add a test-case for encap segmentation after GRO 2026-02-03 19:23:41 -08:00
udpgso.c
udpgso.sh
udpgso_bench.sh
udpgso_bench_rx.c
udpgso_bench_tx.c selftests: complete kselftest include centralization 2025-11-27 14:24:31 -08:00
unicast_extensions.sh
veth.sh
vlan_bridge_binding.sh selftests: net: check jq command is supported 2025-10-14 15:12:18 +02:00
vlan_hw_filter.sh selftests: avoid using ifconfig 2025-08-01 14:40:19 -07:00
vrf-xfrm-tests.sh
vrf_route_leaking.sh
vrf_strict_mode_test.sh
xfrm_policy.sh
xfrm_policy_add_speed.sh
ynl.mk selftests: net: move netlink-dumps back to progs 2025-09-08 12:57:05 -07:00