Message ID | 20191128185806.23706-1-cascardo@canonical.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 2745aea6750ff0d2c48285d25bdb00e5b636ec8b |
Headers | show |
Series | selftests: pmtu: use -oneline for ip route list cache | expand |
Hi, On Thu, 28 Nov 2019 15:58:06 -0300 Thadeu Lima de Souza Cascardo <cascardo@canonical.com> wrote: > Some versions of iproute2 will output more than one line per entry, which > will cause the test to fail, like: > > TEST: ipv6: list and flush cached exceptions [FAIL] > can't list cached exceptions > > That happens, for example, with iproute2 4.15.0. When using the -oneline > option, this will work just fine: > > TEST: ipv6: list and flush cached exceptions [ OK ] > > This also works just fine with a more recent version of iproute2, like > 5.4.0. > > For some reason, two lines are printed for the IPv4 test no matter what > version of iproute2 is used. Use the same -oneline parameter there instead > of counting the lines twice. Thanks, it looks definitely more robust this way. Fixes: b964641e9925 ("selftests: pmtu: Make list_flush_ipv6_exception test more demanding") > Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com> Acked-by: Stefano Brivio <sbrivio@redhat.com>
From: Thadeu Lima de Souza Cascardo <cascardo@canonical.com> Date: Thu, 28 Nov 2019 15:58:06 -0300 > Some versions of iproute2 will output more than one line per entry, which > will cause the test to fail, like: > > TEST: ipv6: list and flush cached exceptions [FAIL] > can't list cached exceptions > > That happens, for example, with iproute2 4.15.0. When using the -oneline > option, this will work just fine: > > TEST: ipv6: list and flush cached exceptions [ OK ] > > This also works just fine with a more recent version of iproute2, like > 5.4.0. > > For some reason, two lines are printed for the IPv4 test no matter what > version of iproute2 is used. Use the same -oneline parameter there instead > of counting the lines twice. > > Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com> Applied with Fixes: tag added and queued up for -stable. Thanks.
diff --git a/tools/testing/selftests/net/pmtu.sh b/tools/testing/selftests/net/pmtu.sh index ab367e75f095..d697815d2785 100755 --- a/tools/testing/selftests/net/pmtu.sh +++ b/tools/testing/selftests/net/pmtu.sh @@ -1249,8 +1249,7 @@ test_list_flush_ipv4_exception() { done run_cmd ${ns_a} ping -q -M want -i 0.1 -c 2 -s 1800 "${dst2}" - # Each exception is printed as two lines - if [ "$(${ns_a} ip route list cache | wc -l)" -ne 202 ]; then + if [ "$(${ns_a} ip -oneline route list cache | wc -l)" -ne 101 ]; then err " can't list cached exceptions" fail=1 fi @@ -1300,7 +1299,7 @@ test_list_flush_ipv6_exception() { run_cmd ${ns_a} ping -q -M want -i 0.1 -w 1 -s 1800 "${dst_prefix1}${i}" done run_cmd ${ns_a} ping -q -M want -i 0.1 -w 1 -s 1800 "${dst2}" - if [ "$(${ns_a} ip -6 route list cache | wc -l)" -ne 101 ]; then + if [ "$(${ns_a} ip -oneline -6 route list cache | wc -l)" -ne 101 ]; then err " can't list cached exceptions" fail=1 fi
Some versions of iproute2 will output more than one line per entry, which will cause the test to fail, like: TEST: ipv6: list and flush cached exceptions [FAIL] can't list cached exceptions That happens, for example, with iproute2 4.15.0. When using the -oneline option, this will work just fine: TEST: ipv6: list and flush cached exceptions [ OK ] This also works just fine with a more recent version of iproute2, like 5.4.0. For some reason, two lines are printed for the IPv4 test no matter what version of iproute2 is used. Use the same -oneline parameter there instead of counting the lines twice. Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com> --- tools/testing/selftests/net/pmtu.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)