Linux-kselftest Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] selftests: pmtu: use -oneline for ip route list cache
@ 2019-11-28 18:58 Thadeu Lima de Souza Cascardo
  2019-11-29 14:39 ` Stefano Brivio
  2019-11-29 20:30 ` David Miller
  0 siblings, 2 replies; 3+ messages in thread
From: Thadeu Lima de Souza Cascardo @ 2019-11-28 18:58 UTC (permalink / raw)
  To: netdev; +Cc: linux-kernel, linux-kselftest, shuah, davem, sbrivio

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(-)

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
-- 
2.20.1


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] selftests: pmtu: use -oneline for ip route list cache
  2019-11-28 18:58 [PATCH] selftests: pmtu: use -oneline for ip route list cache Thadeu Lima de Souza Cascardo
@ 2019-11-29 14:39 ` Stefano Brivio
  2019-11-29 20:30 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: Stefano Brivio @ 2019-11-29 14:39 UTC (permalink / raw)
  To: Thadeu Lima de Souza Cascardo
  Cc: netdev, linux-kernel, linux-kselftest, shuah, davem

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>

-- 
Stefano


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] selftests: pmtu: use -oneline for ip route list cache
  2019-11-28 18:58 [PATCH] selftests: pmtu: use -oneline for ip route list cache Thadeu Lima de Souza Cascardo
  2019-11-29 14:39 ` Stefano Brivio
@ 2019-11-29 20:30 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2019-11-29 20:30 UTC (permalink / raw)
  To: cascardo; +Cc: netdev, linux-kernel, linux-kselftest, shuah, sbrivio

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.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, back to index

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-28 18:58 [PATCH] selftests: pmtu: use -oneline for ip route list cache Thadeu Lima de Souza Cascardo
2019-11-29 14:39 ` Stefano Brivio
2019-11-29 20:30 ` David Miller

Linux-kselftest Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-kselftest/0 linux-kselftest/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-kselftest linux-kselftest/ https://lore.kernel.org/linux-kselftest \
		linux-kselftest@vger.kernel.org
	public-inbox-index linux-kselftest

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kselftest


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git