]> git.itanic.dy.fi Git - linux-stable/commitdiff
selftests/net: fix grep checking for fib_nexthop_multiprefix
authorHangbin Liu <liuhangbin@gmail.com>
Wed, 13 Dec 2023 06:08:49 +0000 (14:08 +0800)
committerJakub Kicinski <kuba@kernel.org>
Fri, 15 Dec 2023 02:38:35 +0000 (18:38 -0800)
When running fib_nexthop_multiprefix test I saw all IPv6 test failed.
e.g.

 ]# ./fib_nexthop_multiprefix.sh
 TEST: IPv4: host 0 to host 1, mtu 1300                              [ OK ]
 TEST: IPv6: host 0 to host 1, mtu 1300                              [FAIL]

 With -v it shows

 COMMAND: ip netns exec h0 /usr/sbin/ping6 -s 1350 -c5 -w5 2001:db8:101::1
 PING 2001:db8:101::1(2001:db8:101::1) 1350 data bytes
 From 2001:db8:100::64 icmp_seq=1 Packet too big: mtu=1300

 --- 2001:db8:101::1 ping statistics ---
 1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms

 Route get
 2001:db8:101::1 via 2001:db8:100::64 dev eth0 src 2001:db8:100::1 metric 1024 expires 599sec mtu 1300 pref medium
 Searching for:
     2001:db8:101::1 from :: via 2001:db8:100::64 dev eth0 src 2001:db8:100::1 .* mtu 1300

The reason is when CONFIG_IPV6_SUBTREES is not enabled, rt6_fill_node() will
not put RTA_SRC info. After fix:

]# ./fib_nexthop_multiprefix.sh
TEST: IPv4: host 0 to host 1, mtu 1300                              [ OK ]
TEST: IPv6: host 0 to host 1, mtu 1300                              [ OK ]

Fixes: 735ab2f65dce ("selftests: Add test with multiple prefixes using single nexthop")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://lore.kernel.org/r/20231213060856.4030084-7-liuhangbin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/fib_nexthop_multiprefix.sh

index 51df5e305855a7aa3c7ca61782697a3a5d6bb617..b52d59547fc598f47731e2b81af90269042d5e95 100755 (executable)
@@ -209,12 +209,12 @@ validate_v6_exception()
                echo "Route get"
                ip -netns h0 -6 ro get ${dst}
                echo "Searching for:"
-               echo "    ${dst} from :: via ${r1} dev eth0 src ${h0} .* mtu ${mtu}"
+               echo "    ${dst}.* via ${r1} dev eth0 src ${h0} .* mtu ${mtu}"
                echo
        fi
 
        ip -netns h0 -6 ro get ${dst} | \
-       grep -q "${dst} from :: via ${r1} dev eth0 src ${h0} .* mtu ${mtu}"
+       grep -q "${dst}.* via ${r1} dev eth0 src ${h0} .* mtu ${mtu}"
        rc=$?
 
        log_test $rc 0 "IPv6: host 0 to host ${i}, mtu ${mtu}"