netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net 0/3] selftests: net: a few pmtu.sh fixes
@ 2024-01-30 17:47 Paolo Abeni
  2024-01-30 17:47 ` [PATCH net 1/3] selftests: net: add missing config for pmtu.sh tests Paolo Abeni
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Paolo Abeni @ 2024-01-30 17:47 UTC (permalink / raw)
  To: netdev
  Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	David Ahern, Guillaume Nault, Vadim Fedorenko, Florian Westphal,
	linux-kselftest

This series try to address CI failures for the pmtu.sh tests. It
does _not_ attempt to enable all the currently skipped cases, to
avoid adding more entropy.

Tested with:

make -C tools/testing/selftests/ TARGETS=net install
vng --build  --config tools/testing/selftests/net/config
vng --run . --user root -- \
	./tools/testing/selftests/kselftest_install/run_kselftest.sh \
	-t net:pmtu.sh

Paolo Abeni (3):
  selftests: net: add missing config for pmtu.sh tests
  selftests: net: fix available tunnels detection
  selftests: net: don't access /dev/stdout in pmtu.sh

 tools/testing/selftests/net/config  |  3 +++
 tools/testing/selftests/net/pmtu.sh | 18 +++++++++---------
 2 files changed, 12 insertions(+), 9 deletions(-)

-- 
2.43.0


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

* [PATCH net 1/3] selftests: net: add missing config for pmtu.sh tests
  2024-01-30 17:47 [PATCH net 0/3] selftests: net: a few pmtu.sh fixes Paolo Abeni
@ 2024-01-30 17:47 ` Paolo Abeni
  2024-01-30 19:30   ` Guillaume Nault
  2024-01-30 17:47 ` [PATCH net 2/3] selftests: net: fix available tunnels detection Paolo Abeni
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 9+ messages in thread
From: Paolo Abeni @ 2024-01-30 17:47 UTC (permalink / raw)
  To: netdev
  Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	David Ahern, Guillaume Nault, Vadim Fedorenko, Florian Westphal,
	linux-kselftest

The mentioned test uses a few Kconfig still missing the
net config, add them.

Before:
  # Error: Specified qdisc kind is unknown.
  # Error: Specified qdisc kind is unknown.
  # Error: Qdisc not classful.
  # We have an error talking to the kernel
  # Error: Qdisc not classful.
  # We have an error talking to the kernel
  #   policy_routing not supported
  # TEST: ICMPv4 with DSCP and ECN: PMTU exceptions                     [SKIP]

After:
  # TEST: ICMPv4 with DSCP and ECN: PMTU exceptions                     [ OK ]

Fixes: ec730c3e1f0e ("selftest: net: Test IPv4 PMTU exceptions with DSCP and ECN")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
---
 tools/testing/selftests/net/config | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/tools/testing/selftests/net/config b/tools/testing/selftests/net/config
index d4b38177ed04..88835cdbf0ea 100644
--- a/tools/testing/selftests/net/config
+++ b/tools/testing/selftests/net/config
@@ -60,6 +60,7 @@ CONFIG_NET_SCH_HTB=m
 CONFIG_NET_SCH_FQ=m
 CONFIG_NET_SCH_ETF=m
 CONFIG_NET_SCH_NETEM=y
+CONFIG_NET_SCH_PRIO=m
 CONFIG_NFT_COMPAT=m
 CONFIG_NF_FLOW_TABLE=m
 CONFIG_PSAMPLE=m
@@ -77,6 +78,8 @@ CONFIG_NET_SCH_INGRESS=m
 CONFIG_NET_CLS_FLOWER=m
 CONFIG_NET_ACT_TUNNEL_KEY=m
 CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_CSUM=m
 CONFIG_BAREUDP=m
 CONFIG_IPV6_IOAM6_LWTUNNEL=y
 CONFIG_CRYPTO_SM4_GENERIC=y
-- 
2.43.0


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

* [PATCH net 2/3] selftests: net: fix available tunnels detection
  2024-01-30 17:47 [PATCH net 0/3] selftests: net: a few pmtu.sh fixes Paolo Abeni
  2024-01-30 17:47 ` [PATCH net 1/3] selftests: net: add missing config for pmtu.sh tests Paolo Abeni
@ 2024-01-30 17:47 ` Paolo Abeni
  2024-01-30 19:38   ` Guillaume Nault
  2024-01-30 17:47 ` [PATCH net 3/3] selftests: net: don't access /dev/stdout in pmtu.sh Paolo Abeni
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 9+ messages in thread
From: Paolo Abeni @ 2024-01-30 17:47 UTC (permalink / raw)
  To: netdev
  Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	David Ahern, Guillaume Nault, Vadim Fedorenko, Florian Westphal,
	linux-kselftest

The pmtu.sh test tries to detect the tunnel protocols available
in the running kernel and properly skip the unsupported cases.

In a few more complex setup, such detection is unsuccessful, as
the script currently ignores some intermediate error code at
setup time.

Before:
  # which: no nettest in (/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin)
  # TEST: vti6: PMTU exceptions (ESP-in-UDP)                            [FAIL]
  #   PMTU exception wasn't created after creating tunnel exceeding link layer MTU
  # ./pmtu.sh: line 931: kill: (7543) - No such process
  # ./pmtu.sh: line 931: kill: (7544) - No such process

After:
  #   xfrm4 not supported
  # TEST: vti4: PMTU exceptions                                         [SKIP]

Fixes: ece1278a9b81 ("selftests: net: add ESP-in-UDP PMTU test")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
---
 tools/testing/selftests/net/pmtu.sh | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/tools/testing/selftests/net/pmtu.sh b/tools/testing/selftests/net/pmtu.sh
index f10879788f61..31892b366913 100755
--- a/tools/testing/selftests/net/pmtu.sh
+++ b/tools/testing/selftests/net/pmtu.sh
@@ -707,23 +707,23 @@ setup_xfrm6() {
 }
 
 setup_xfrm4udp() {
-	setup_xfrm 4 ${veth4_a_addr} ${veth4_b_addr} "encap espinudp 4500 4500 0.0.0.0"
-	setup_nettest_xfrm 4 4500
+	setup_xfrm 4 ${veth4_a_addr} ${veth4_b_addr} "encap espinudp 4500 4500 0.0.0.0" && \
+		setup_nettest_xfrm 4 4500
 }
 
 setup_xfrm6udp() {
-	setup_xfrm 6 ${veth6_a_addr} ${veth6_b_addr} "encap espinudp 4500 4500 0.0.0.0"
-	setup_nettest_xfrm 6 4500
+	setup_xfrm 6 ${veth6_a_addr} ${veth6_b_addr} "encap espinudp 4500 4500 0.0.0.0" && \
+		setup_nettest_xfrm 6 4500
 }
 
 setup_xfrm4udprouted() {
-	setup_xfrm 4 ${prefix4}.${a_r1}.1 ${prefix4}.${b_r1}.1 "encap espinudp 4500 4500 0.0.0.0"
-	setup_nettest_xfrm 4 4500
+	setup_xfrm 4 ${prefix4}.${a_r1}.1 ${prefix4}.${b_r1}.1 "encap espinudp 4500 4500 0.0.0.0" && \
+		setup_nettest_xfrm 4 4500
 }
 
 setup_xfrm6udprouted() {
-	setup_xfrm 6 ${prefix6}:${a_r1}::1 ${prefix6}:${b_r1}::1 "encap espinudp 4500 4500 0.0.0.0"
-	setup_nettest_xfrm 6 4500
+	setup_xfrm 6 ${prefix6}:${a_r1}::1 ${prefix6}:${b_r1}::1 "encap espinudp 4500 4500 0.0.0.0" && \
+		setup_nettest_xfrm 6 4500
 }
 
 setup_routing_old() {
-- 
2.43.0


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

* [PATCH net 3/3] selftests: net: don't access /dev/stdout in pmtu.sh
  2024-01-30 17:47 [PATCH net 0/3] selftests: net: a few pmtu.sh fixes Paolo Abeni
  2024-01-30 17:47 ` [PATCH net 1/3] selftests: net: add missing config for pmtu.sh tests Paolo Abeni
  2024-01-30 17:47 ` [PATCH net 2/3] selftests: net: fix available tunnels detection Paolo Abeni
@ 2024-01-30 17:47 ` Paolo Abeni
  2024-01-30 19:40   ` Guillaume Nault
  2024-01-30 19:13 ` [PATCH net 0/3] selftests: net: a few pmtu.sh fixes David Ahern
  2024-02-01  5:20 ` patchwork-bot+netdevbpf
  4 siblings, 1 reply; 9+ messages in thread
From: Paolo Abeni @ 2024-01-30 17:47 UTC (permalink / raw)
  To: netdev
  Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	David Ahern, Guillaume Nault, Vadim Fedorenko, Florian Westphal,
	linux-kselftest

When running the pmtu.sh via the kselftest infra, accessing
/dev/stdout gives unexpected results:
  # dd: failed to open '/dev/stdout': Device or resource busy
  # TEST: IPv4, bridged vxlan4: PMTU exceptions                         [FAIL]

Let dd use directly the standard output to fix the above:
  # TEST: IPv4, bridged vxlan4: PMTU exceptions - nexthop objects       [ OK ]

Fixes: 136a1b434bbb ("selftests: net: test vxlan pmtu exceptions with tcp")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
---
 tools/testing/selftests/net/pmtu.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/net/pmtu.sh b/tools/testing/selftests/net/pmtu.sh
index 31892b366913..3f118e3f1c66 100755
--- a/tools/testing/selftests/net/pmtu.sh
+++ b/tools/testing/selftests/net/pmtu.sh
@@ -1339,7 +1339,7 @@ test_pmtu_ipvX_over_bridged_vxlanY_or_geneveY_exception() {
 
 		sleep 1
 
-		dd if=/dev/zero of=/dev/stdout status=none bs=1M count=1 | ${target} socat -T 3 -u STDIN $TCPDST,connect-timeout=3
+		dd if=/dev/zero status=none bs=1M count=1 | ${target} socat -T 3 -u STDIN $TCPDST,connect-timeout=3
 
 		size=$(du -sb $tmpoutfile)
 		size=${size%%/tmp/*}
-- 
2.43.0


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

* Re: [PATCH net 0/3] selftests: net: a few pmtu.sh fixes
  2024-01-30 17:47 [PATCH net 0/3] selftests: net: a few pmtu.sh fixes Paolo Abeni
                   ` (2 preceding siblings ...)
  2024-01-30 17:47 ` [PATCH net 3/3] selftests: net: don't access /dev/stdout in pmtu.sh Paolo Abeni
@ 2024-01-30 19:13 ` David Ahern
  2024-02-01  5:20 ` patchwork-bot+netdevbpf
  4 siblings, 0 replies; 9+ messages in thread
From: David Ahern @ 2024-01-30 19:13 UTC (permalink / raw)
  To: Paolo Abeni, netdev
  Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	Guillaume Nault, Vadim Fedorenko, Florian Westphal,
	linux-kselftest

On 1/30/24 10:47 AM, Paolo Abeni wrote:
> This series try to address CI failures for the pmtu.sh tests. It
> does _not_ attempt to enable all the currently skipped cases, to
> avoid adding more entropy.
> 
> Tested with:
> 
> make -C tools/testing/selftests/ TARGETS=net install
> vng --build  --config tools/testing/selftests/net/config
> vng --run . --user root -- \
> 	./tools/testing/selftests/kselftest_install/run_kselftest.sh \
> 	-t net:pmtu.sh
> 
> Paolo Abeni (3):
>   selftests: net: add missing config for pmtu.sh tests
>   selftests: net: fix available tunnels detection
>   selftests: net: don't access /dev/stdout in pmtu.sh
> 
>  tools/testing/selftests/net/config  |  3 +++
>  tools/testing/selftests/net/pmtu.sh | 18 +++++++++---------
>  2 files changed, 12 insertions(+), 9 deletions(-)
> 

selftests are getting a lot of love right now :-)

Reviewed-by: David Ahern <dsahern@kernel.org>


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

* Re: [PATCH net 1/3] selftests: net: add missing config for pmtu.sh tests
  2024-01-30 17:47 ` [PATCH net 1/3] selftests: net: add missing config for pmtu.sh tests Paolo Abeni
@ 2024-01-30 19:30   ` Guillaume Nault
  0 siblings, 0 replies; 9+ messages in thread
From: Guillaume Nault @ 2024-01-30 19:30 UTC (permalink / raw)
  To: Paolo Abeni
  Cc: netdev, David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	David Ahern, Vadim Fedorenko, Florian Westphal, linux-kselftest

On Tue, Jan 30, 2024 at 06:47:16PM +0100, Paolo Abeni wrote:
> The mentioned test uses a few Kconfig still missing the
> net config, add them.
> 
> Before:
>   # Error: Specified qdisc kind is unknown.
>   # Error: Specified qdisc kind is unknown.
>   # Error: Qdisc not classful.
>   # We have an error talking to the kernel
>   # Error: Qdisc not classful.
>   # We have an error talking to the kernel
>   #   policy_routing not supported
>   # TEST: ICMPv4 with DSCP and ECN: PMTU exceptions                     [SKIP]
> 
> After:
>   # TEST: ICMPv4 with DSCP and ECN: PMTU exceptions                     [ OK ]
> 

Reviewed-by: Guillaume Nault <gnault@redhat.com>


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

* Re: [PATCH net 2/3] selftests: net: fix available tunnels detection
  2024-01-30 17:47 ` [PATCH net 2/3] selftests: net: fix available tunnels detection Paolo Abeni
@ 2024-01-30 19:38   ` Guillaume Nault
  0 siblings, 0 replies; 9+ messages in thread
From: Guillaume Nault @ 2024-01-30 19:38 UTC (permalink / raw)
  To: Paolo Abeni
  Cc: netdev, David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	David Ahern, Vadim Fedorenko, Florian Westphal, linux-kselftest

On Tue, Jan 30, 2024 at 06:47:17PM +0100, Paolo Abeni wrote:
> The pmtu.sh test tries to detect the tunnel protocols available
> in the running kernel and properly skip the unsupported cases.
> 
> In a few more complex setup, such detection is unsuccessful, as
> the script currently ignores some intermediate error code at
> setup time.
> 
> Before:
>   # which: no nettest in (/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin)
>   # TEST: vti6: PMTU exceptions (ESP-in-UDP)                            [FAIL]
>   #   PMTU exception wasn't created after creating tunnel exceeding link layer MTU
>   # ./pmtu.sh: line 931: kill: (7543) - No such process
>   # ./pmtu.sh: line 931: kill: (7544) - No such process
> 
> After:
>   #   xfrm4 not supported
>   # TEST: vti4: PMTU exceptions                                         [SKIP]
> 

Reviewed-by: Guillaume Nault <gnault@redhat.com>


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

* Re: [PATCH net 3/3] selftests: net: don't access /dev/stdout in pmtu.sh
  2024-01-30 17:47 ` [PATCH net 3/3] selftests: net: don't access /dev/stdout in pmtu.sh Paolo Abeni
@ 2024-01-30 19:40   ` Guillaume Nault
  0 siblings, 0 replies; 9+ messages in thread
From: Guillaume Nault @ 2024-01-30 19:40 UTC (permalink / raw)
  To: Paolo Abeni
  Cc: netdev, David S. Miller, Eric Dumazet, Jakub Kicinski, Shuah Khan,
	David Ahern, Vadim Fedorenko, Florian Westphal, linux-kselftest

On Tue, Jan 30, 2024 at 06:47:18PM +0100, Paolo Abeni wrote:
> When running the pmtu.sh via the kselftest infra, accessing
> /dev/stdout gives unexpected results:
>   # dd: failed to open '/dev/stdout': Device or resource busy
>   # TEST: IPv4, bridged vxlan4: PMTU exceptions                         [FAIL]
> 
> Let dd use directly the standard output to fix the above:
>   # TEST: IPv4, bridged vxlan4: PMTU exceptions - nexthop objects       [ OK ]
> 

Reviewed-by: Guillaume Nault <gnault@redhat.com>


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

* Re: [PATCH net 0/3] selftests: net: a few pmtu.sh fixes
  2024-01-30 17:47 [PATCH net 0/3] selftests: net: a few pmtu.sh fixes Paolo Abeni
                   ` (3 preceding siblings ...)
  2024-01-30 19:13 ` [PATCH net 0/3] selftests: net: a few pmtu.sh fixes David Ahern
@ 2024-02-01  5:20 ` patchwork-bot+netdevbpf
  4 siblings, 0 replies; 9+ messages in thread
From: patchwork-bot+netdevbpf @ 2024-02-01  5:20 UTC (permalink / raw)
  To: Paolo Abeni
  Cc: netdev, davem, edumazet, kuba, shuah, dsahern, gnault,
	vadim.fedorenko, fw, linux-kselftest

Hello:

This series was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Tue, 30 Jan 2024 18:47:15 +0100 you wrote:
> This series try to address CI failures for the pmtu.sh tests. It
> does _not_ attempt to enable all the currently skipped cases, to
> avoid adding more entropy.
> 
> Tested with:
> 
> make -C tools/testing/selftests/ TARGETS=net install
> vng --build  --config tools/testing/selftests/net/config
> vng --run . --user root -- \
> 	./tools/testing/selftests/kselftest_install/run_kselftest.sh \
> 	-t net:pmtu.sh
> 
> [...]

Here is the summary with links:
  - [net,1/3] selftests: net: add missing config for pmtu.sh tests
    https://git.kernel.org/netdev/net/c/f7c25d8e17dd
  - [net,2/3] selftests: net: fix available tunnels detection
    https://git.kernel.org/netdev/net/c/e4e4b6d568d2
  - [net,3/3] selftests: net: don't access /dev/stdout in pmtu.sh
    https://git.kernel.org/netdev/net/c/bc0970d5ac1d

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



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

end of thread, other threads:[~2024-02-01  5:20 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-30 17:47 [PATCH net 0/3] selftests: net: a few pmtu.sh fixes Paolo Abeni
2024-01-30 17:47 ` [PATCH net 1/3] selftests: net: add missing config for pmtu.sh tests Paolo Abeni
2024-01-30 19:30   ` Guillaume Nault
2024-01-30 17:47 ` [PATCH net 2/3] selftests: net: fix available tunnels detection Paolo Abeni
2024-01-30 19:38   ` Guillaume Nault
2024-01-30 17:47 ` [PATCH net 3/3] selftests: net: don't access /dev/stdout in pmtu.sh Paolo Abeni
2024-01-30 19:40   ` Guillaume Nault
2024-01-30 19:13 ` [PATCH net 0/3] selftests: net: a few pmtu.sh fixes David Ahern
2024-02-01  5:20 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).