lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <DDM60XIK0NUQ.S2QMK9E7HQ2U@bootlin.com>
Date: Sun, 19 Oct 2025 10:45:28 +0200
From: Alexis Lothoré <alexis.lothore@...tlin.com>
To: "Martin KaFai Lau" <martin.lau@...ux.dev>,
 Alexis Lothoré (eBPF Foundation)
 <alexis.lothore@...tlin.com>
Cc: "Alexei Starovoitov" <ast@...nel.org>, "Daniel Borkmann"
 <daniel@...earbox.net>, "Andrii Nakryiko" <andrii@...nel.org>, "Eduard
 Zingerman" <eddyz87@...il.com>, "Song Liu" <song@...nel.org>, "Yonghong
 Song" <yonghong.song@...ux.dev>, "John Fastabend"
 <john.fastabend@...il.com>, "KP Singh" <kpsingh@...nel.org>, "Stanislav
 Fomichev" <sdf@...ichev.me>, "Hao Luo" <haoluo@...gle.com>, "Jiri Olsa"
 <jolsa@...nel.org>, "Shuah Khan" <shuah@...nel.org>,
 <ebpf@...uxfoundation.org>, "Thomas Petazzoni"
 <thomas.petazzoni@...tlin.com>, "Bastien Curutchet"
 <bastien.curutchet@...tlin.com>, <bpf@...r.kernel.org>,
 <linux-kselftest@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH bpf-next 4/5] selftests/bpf: integrate test_tc_tunnel.sh
 tests into test_progs

Hello Martin,

On Sat Oct 18, 2025 at 2:18 AM CEST, Martin KaFai Lau wrote:
> On 10/17/25 7:29 AM, Alexis Lothoré (eBPF Foundation) wrote:
>> The test_tc_tunnel.sh script checks that a large variety of tunneling
>> mechanisms handled by the kernel can be handled as well by eBPF
>> programs. While this test shares similarities with test_tunnel.c (which
>> is already integrated in test_progs), those are testing slightly
>> different things:
>> - test_tunnel.c creates a tunnel interface, and then get and set tunnel
>>    keys in packet metadata, from BPF programs.
>> - test_tc_tunnels.sh manually parses/crafts packets content
>> 
>> Bring the tests covered by test_tc_tunnel.sh into the test_progs
>> framework, by creating a dedicated test_tc_tunnel.sh. This new test
>> defines a "generic" runner which, for each test configuration:
>> - will bring the relevant veth pair, each of those isolated in a
>>    dedicated namespace
>> - will check that traffic will fail if there is only an encapsulating
>>    program attached to one veth egress
>> - will check that traffic succeed if we enable some decapsulation module
>>    on kernel side
>> - will check that traffic still succeeds if we replace the kernel
>>    decapsulation with some eBPF ingress decapsulation.
>> 
>> Example of the new test execution:
>> 
>>    # ./test_progs -a tc_tunnel
>>    #447/1   tc_tunnel/ipip_none:OK
>>    #447/2   tc_tunnel/ipip6_none:OK
>>    #447/3   tc_tunnel/ip6tnl_none:OK
>>    #447/4   tc_tunnel/sit_none:OK
>>    #447/5   tc_tunnel/vxlan_eth:OK
>>    #447/6   tc_tunnel/ip6vxlan_eth:OK
>>    #447/7   tc_tunnel/gre_none:OK
>>    #447/8   tc_tunnel/gre_eth:OK
>>    #447/9   tc_tunnel/gre_mpls:OK
>>    #447/10  tc_tunnel/ip6gre_none:OK
>>    #447/11  tc_tunnel/ip6gre_eth:OK
>>    #447/12  tc_tunnel/ip6gre_mpls:OK
>>    #447/13  tc_tunnel/udp_none:OK
>>    #447/14  tc_tunnel/udp_eth:OK
>>    #447/15  tc_tunnel/udp_mpls:OK
>>    #447/16  tc_tunnel/ip6udp_none:OK
>>    #447/17  tc_tunnel/ip6udp_eth:OK
>>    #447/18  tc_tunnel/ip6udp_mpls:OK
>>    #447     tc_tunnel:OK
>>    Summary: 1/18 PASSED, 0 SKIPPED, 0 FAILED
>
> Thanks for working on this!

Thanks for the prompt and detailed review !
>
> One high level comment is to minimize switching netns to make the test 
> easier to follow.

Yeah, all the NS switches make the overall setup a bit tedious. I'll give a
try to your suggestions and see if we can reduce the number of NS
open/close pairs.

Alexis

-- 
Alexis Lothoré, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ