* [PATCH bpf 0/2] selftests/bpf: fix false failures
@ 2019-10-08 13:10 Jiri Benc
2019-10-08 13:10 ` [PATCH bpf 1/2] selftests/bpf: set rp_filter in test_flow_dissector Jiri Benc
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Jiri Benc @ 2019-10-08 13:10 UTC (permalink / raw)
To: bpf, netdev
The test_flow_dissector and test_lwt_ip_encap selftests were failing for me.
It was caused by the tests not being enough system/distro independent.
Jiri Benc (2):
selftests/bpf: set rp_filter in test_flow_dissector
selftests/bpf: more compatible nc options in test_lwt_ip_encap
tools/testing/selftests/bpf/test_flow_dissector.sh | 3 +++
tools/testing/selftests/bpf/test_lwt_ip_encap.sh | 6 +++---
2 files changed, 6 insertions(+), 3 deletions(-)
--
2.18.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH bpf 1/2] selftests/bpf: set rp_filter in test_flow_dissector
2019-10-08 13:10 [PATCH bpf 0/2] selftests/bpf: fix false failures Jiri Benc
@ 2019-10-08 13:10 ` Jiri Benc
2019-10-08 16:45 ` Petar Penkov
2019-10-08 13:10 ` [PATCH bpf 2/2] selftests/bpf: more compatible nc options in test_lwt_ip_encap Jiri Benc
2019-10-08 22:03 ` [PATCH bpf 0/2] selftests/bpf: fix false failures Daniel Borkmann
2 siblings, 1 reply; 5+ messages in thread
From: Jiri Benc @ 2019-10-08 13:10 UTC (permalink / raw)
To: bpf, netdev; +Cc: Petar Penkov
Many distributions enable rp_filter. However, the flow dissector test
generates packets that have 1.1.1.1 set as (inner) source address without
this address being reachable. This causes the selftest to fail.
The selftests should not assume a particular initial configuration. Switch
off rp_filter.
Fixes: 50b3ed57dee9 ("selftests/bpf: test bpf flow dissection")
Cc: Petar Penkov <ppenkov@google.com>
Signed-off-by: Jiri Benc <jbenc@redhat.com>
---
tools/testing/selftests/bpf/test_flow_dissector.sh | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tools/testing/selftests/bpf/test_flow_dissector.sh b/tools/testing/selftests/bpf/test_flow_dissector.sh
index d23d4da66b83..e2d06191bd35 100755
--- a/tools/testing/selftests/bpf/test_flow_dissector.sh
+++ b/tools/testing/selftests/bpf/test_flow_dissector.sh
@@ -63,6 +63,9 @@ fi
# Setup
tc qdisc add dev lo ingress
+echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter
+echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
+echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter
echo "Testing IPv4..."
# Drops all IP/UDP packets coming from port 9
--
2.18.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH bpf 1/2] selftests/bpf: set rp_filter in test_flow_dissector
2019-10-08 13:10 ` [PATCH bpf 1/2] selftests/bpf: set rp_filter in test_flow_dissector Jiri Benc
@ 2019-10-08 16:45 ` Petar Penkov
0 siblings, 0 replies; 5+ messages in thread
From: Petar Penkov @ 2019-10-08 16:45 UTC (permalink / raw)
To: Jiri Benc; +Cc: bpf, Networking, Petar Penkov
On Tue, Oct 8, 2019 at 6:11 AM Jiri Benc <jbenc@redhat.com> wrote:
>
> Many distributions enable rp_filter. However, the flow dissector test
> generates packets that have 1.1.1.1 set as (inner) source address without
> this address being reachable. This causes the selftest to fail.
>
> The selftests should not assume a particular initial configuration. Switch
> off rp_filter.
>
> Fixes: 50b3ed57dee9 ("selftests/bpf: test bpf flow dissection")
> Cc: Petar Penkov <ppenkov@google.com>
> Signed-off-by: Jiri Benc <jbenc@redhat.com>
Acked-by: Petar Penkov <ppenkov@google.com>
> ---
> tools/testing/selftests/bpf/test_flow_dissector.sh | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/tools/testing/selftests/bpf/test_flow_dissector.sh b/tools/testing/selftests/bpf/test_flow_dissector.sh
> index d23d4da66b83..e2d06191bd35 100755
> --- a/tools/testing/selftests/bpf/test_flow_dissector.sh
> +++ b/tools/testing/selftests/bpf/test_flow_dissector.sh
> @@ -63,6 +63,9 @@ fi
>
> # Setup
> tc qdisc add dev lo ingress
> +echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter
> +echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
> +echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter
>
> echo "Testing IPv4..."
> # Drops all IP/UDP packets coming from port 9
> --
> 2.18.1
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH bpf 2/2] selftests/bpf: more compatible nc options in test_lwt_ip_encap
2019-10-08 13:10 [PATCH bpf 0/2] selftests/bpf: fix false failures Jiri Benc
2019-10-08 13:10 ` [PATCH bpf 1/2] selftests/bpf: set rp_filter in test_flow_dissector Jiri Benc
@ 2019-10-08 13:10 ` Jiri Benc
2019-10-08 22:03 ` [PATCH bpf 0/2] selftests/bpf: fix false failures Daniel Borkmann
2 siblings, 0 replies; 5+ messages in thread
From: Jiri Benc @ 2019-10-08 13:10 UTC (permalink / raw)
To: bpf, netdev; +Cc: Peter Oskolkov
Out of the three nc implementations widely in use, at least two (BSD netcat
and nmap-ncat) do not support -l combined with -s. Modify the nc invocation
to be accepted by all of them.
Fixes: 17a90a788473 ("selftests/bpf: test that GSO works in lwt_ip_encap")
Cc: Peter Oskolkov <posk@google.com>
Signed-off-by: Jiri Benc <jbenc@redhat.com>
---
tools/testing/selftests/bpf/test_lwt_ip_encap.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/testing/selftests/bpf/test_lwt_ip_encap.sh b/tools/testing/selftests/bpf/test_lwt_ip_encap.sh
index acf7a74f97cd..59ea56945e6c 100755
--- a/tools/testing/selftests/bpf/test_lwt_ip_encap.sh
+++ b/tools/testing/selftests/bpf/test_lwt_ip_encap.sh
@@ -314,15 +314,15 @@ test_gso()
command -v nc >/dev/null 2>&1 || \
{ echo >&2 "nc is not available: skipping TSO tests"; return; }
- # listen on IPv*_DST, capture TCP into $TMPFILE
+ # listen on port 9000, capture TCP into $TMPFILE
if [ "${PROTO}" == "IPv4" ] ; then
IP_DST=${IPv4_DST}
ip netns exec ${NS3} bash -c \
- "nc -4 -l -s ${IPv4_DST} -p 9000 > ${TMPFILE} &"
+ "nc -4 -l -p 9000 > ${TMPFILE} &"
elif [ "${PROTO}" == "IPv6" ] ; then
IP_DST=${IPv6_DST}
ip netns exec ${NS3} bash -c \
- "nc -6 -l -s ${IPv6_DST} -p 9000 > ${TMPFILE} &"
+ "nc -6 -l -p 9000 > ${TMPFILE} &"
RET=$?
else
echo " test_gso: unknown PROTO: ${PROTO}"
--
2.18.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH bpf 0/2] selftests/bpf: fix false failures
2019-10-08 13:10 [PATCH bpf 0/2] selftests/bpf: fix false failures Jiri Benc
2019-10-08 13:10 ` [PATCH bpf 1/2] selftests/bpf: set rp_filter in test_flow_dissector Jiri Benc
2019-10-08 13:10 ` [PATCH bpf 2/2] selftests/bpf: more compatible nc options in test_lwt_ip_encap Jiri Benc
@ 2019-10-08 22:03 ` Daniel Borkmann
2 siblings, 0 replies; 5+ messages in thread
From: Daniel Borkmann @ 2019-10-08 22:03 UTC (permalink / raw)
To: Jiri Benc; +Cc: bpf, netdev
On Tue, Oct 08, 2019 at 03:10:43PM +0200, Jiri Benc wrote:
> The test_flow_dissector and test_lwt_ip_encap selftests were failing for me.
> It was caused by the tests not being enough system/distro independent.
>
> Jiri Benc (2):
> selftests/bpf: set rp_filter in test_flow_dissector
> selftests/bpf: more compatible nc options in test_lwt_ip_encap
>
> tools/testing/selftests/bpf/test_flow_dissector.sh | 3 +++
> tools/testing/selftests/bpf/test_lwt_ip_encap.sh | 6 +++---
> 2 files changed, 6 insertions(+), 3 deletions(-)
Applied, thanks!
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-10-08 22:03 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-08 13:10 [PATCH bpf 0/2] selftests/bpf: fix false failures Jiri Benc
2019-10-08 13:10 ` [PATCH bpf 1/2] selftests/bpf: set rp_filter in test_flow_dissector Jiri Benc
2019-10-08 16:45 ` Petar Penkov
2019-10-08 13:10 ` [PATCH bpf 2/2] selftests/bpf: more compatible nc options in test_lwt_ip_encap Jiri Benc
2019-10-08 22:03 ` [PATCH bpf 0/2] selftests/bpf: fix false failures Daniel Borkmann
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).