summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorFernando Fernandez Mancera <fmancera@suse.de>2026-03-13 15:48:27 +0300
committerPaolo Abeni <pabeni@redhat.com>2026-03-17 14:53:30 +0300
commitfdd973148a117f3244c9a0a6abf343da57f76ea7 (patch)
treed9eae59c0c299a8b8012334048faa67d1f0069c7 /tools
parentfebe8012458fd9057d3fb70f6b37ef67a07ff8a1 (diff)
downloadlinux-fdd973148a117f3244c9a0a6abf343da57f76ea7.tar.xz
selftests: net: add ipv6 RA route to ECMP merge test
As commit bbf4a17ad9ff ("ipv6: Fix ECMP sibling count mismatch when clearing RTF_ADDRCONF") pointed out, RA routes are not elegible for ECMP merging. Add a test scenario mixing RA and static routes with gateway to check that they are not getting merged. Signed-off-by: Fernando Fernandez Mancera <fmancera@suse.de> Link: https://patch.msgid.link/20260313124827.3945-1-fmancera@suse.de Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/testing/selftests/net/config2
-rwxr-xr-xtools/testing/selftests/net/fib_tests.sh17
2 files changed, 19 insertions, 0 deletions
diff --git a/tools/testing/selftests/net/config b/tools/testing/selftests/net/config
index cd49b7dfe216..2a390cae41bf 100644
--- a/tools/testing/selftests/net/config
+++ b/tools/testing/selftests/net/config
@@ -43,6 +43,8 @@ CONFIG_IPV6_ILA=m
CONFIG_IPV6_IOAM6_LWTUNNEL=y
CONFIG_IPV6_MROUTE=y
CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_ROUTER_PREF=y
CONFIG_IPV6_RPL_LWTUNNEL=y
CONFIG_IPV6_SEG6_LWTUNNEL=y
CONFIG_IPV6_SIT=y
diff --git a/tools/testing/selftests/net/fib_tests.sh b/tools/testing/selftests/net/fib_tests.sh
index 439461080c60..05dadc3f55b1 100755
--- a/tools/testing/selftests/net/fib_tests.sh
+++ b/tools/testing/selftests/net/fib_tests.sh
@@ -1534,6 +1534,23 @@ fib6_ra_to_static()
log_test $ret 0 "ipv6 promote RA route to static"
+ # Prepare for RA route with gateway
+ $NS_EXEC sysctl -wq net.ipv6.conf.veth1.accept_ra_rt_info_max_plen=64
+
+ # Add initial route to cause ECMP merging
+ $IP -6 route add 2001:12::/64 via fe80::dead:beef dev veth1
+
+ $NS_EXEC ra6 -i veth2 -d 2001:10::1 -R 2001:12::/64#1#120
+
+ # Routes are not merged as RA routes are not elegible for ECMP
+ check_rt_num 2 "$($IP -6 route list | grep -c "2001:12::/64 via")"
+
+ $IP -6 route append 2001:12::/64 via fe80::dead:feeb dev veth1
+
+ check_rt_num 2 "$($IP -6 route list | grep -c "nexthop via")"
+
+ log_test "$ret" 0 "ipv6 RA route with nexthop do not merge into ECMP with static"
+
set +e
cleanup &> /dev/null