APPLIED [OEM-5.6] Re: [F/G/H/Unstable][F/oem-5.6][F/oem-5.10][SRU][PATCH 0/1] selftests: fix the return value for UDP GRO test

Timo Aaltonen tjaalton at ubuntu.com
Thu Feb 18 10:21:38 UTC 2021


On 13.1.2021 11.39, Po-Hsu Lin wrote:
> [Impact]
> In udpgro.sh, the exit value is 0 even if there are some failed sub
> test cases:
> 
> $ sudo ./udpgro.sh
> ipv4
>   no GRO
> BTF debug data section '.BTF' rejected: Invalid argument (22)!
>   - Length: 568
> Verifier analysis:
> 
> magic: 0xeb9f
> version: 1
> flags: 0x0
> hdr_len: 24
> type_off: 0
> type_len: 256
> str_off: 256
> str_len: 288
> btf_total_size: 568
> [1] PTR (anon) type_id=2
> [2] STRUCT xdp_md size=20 vlen=5
>   data type_id=3 bits_offset=0
>   data_end type_id=3 bits_offset=32
>   data_meta type_id=3 bits_offset=64
>   ingress_ifindex type_id=3 bits_offset=96
>   rx_queue_index type_id=3 bits_offset=128
> [3] TYPEDEF __u32 type_id=4
> [4] INT unsigned int size=4 bits_offset=0 nr_bits=32 encoding=(none)
> [5] FUNC_PROTO (anon) return=6 args=(1 ctx)
> [6] INT int size=4 bits_offset=0 nr_bits=32 encoding=SIGNED
> [7] FUNC xdp_dummy_prog type_id=5
> [8] INT char size=1 bits_offset=0 nr_bits=8 encoding=SIGNED
> [9] ARRAY (anon) type_id=8 index_type_id=10 nr_elems=4
> [10] INT __ARRAY_SIZE_TYPE__ size=4 bits_offset=0 nr_bits=32 encoding=(none)
> [11] VAR _license type_id=9 linkage=1
> [12] DATASEC license size=0 vlen=1 size == 0
> 
> ./udpgso_bench_rx: poll: 0x0 expected 0x1
> 
> failed
> ./udpgso_bench_tx: write: Connection refused
> 
> ...
> 
>   multiple GRO socks
> BTF debug data section '.BTF' rejected: Invalid argument (22)!
>   - Length: 568
> Verifier analysis:
> 
> magic: 0xeb9f
> version: 1
> flags: 0x0
> hdr_len: 24
> type_off: 0
> type_len: 256
> str_off: 256
> str_len: 288
> btf_total_size: 568
> [1] PTR (anon) type_id=2
> [2] STRUCT xdp_md size=20 vlen=5
>   data type_id=3 bits_offset=0
>   data_end type_id=3 bits_offset=32
>   data_meta type_id=3 bits_offset=64
>   ingress_ifindex type_id=3 bits_offset=96
>   rx_queue_index type_id=3 bits_offset=128
> [3] TYPEDEF __u32 type_id=4
> [4] INT unsigned int size=4 bits_offset=0 nr_bits=32 encoding=(none)
> [5] FUNC_PROTO (anon) return=6 args=(1 ctx)
> [6] INT int size=4 bits_offset=0 nr_bits=32 encoding=SIGNED
> [7] FUNC xdp_dummy_prog type_id=5
> [8] INT char size=1 bits_offset=0 nr_bits=8 encoding=SIGNED
> [9] ARRAY (anon) type_id=8 index_type_id=10 nr_elems=4
> [10] INT __ARRAY_SIZE_TYPE__ size=4 bits_offset=0 nr_bits=32 encoding=(none)
> [11] VAR _license type_id=9 linkage=1
> [12] DATASEC license size=0 vlen=1 size == 0
> 
> ./udpgso_bench_rx: poll: 0x0 expected 0x1
> 
> ./udpgso_bench_rx: poll: 0x0 expected 0x1
> 
> failed
> $ echo $?
> 0
> 
> [Fix]
> * 3503ee6c0bec5f ("selftests: fix the return value for UDP GRO test")
> 
> We have this test since Focal.
> This patch can be cherry-picked into all the affected kernels.
> 
> [Test]
> Run this test with:
>    sudo ./udpgro.sh
> 
> And check its final return value with:
>    echo $?
> 
> If there is any failure, the return value should not be 0.
> 
> [Where problems could occur]
> If this fix is incorrect it might affect the test execution, but it
> should be fine as this is just affecting the test tool. Also, with
> this patch, we are expecting to see this test case to fail until
> bug 1908501 got fixed.
> 
> Po-Hsu Lin (1):
>    selftests: fix the return value for UDP GRO test
> 
>   tools/testing/selftests/net/udpgro.sh | 34 ++++++++++++++++++++++++++++++++++
>   1 file changed, 34 insertions(+)
> 

applied to oem-5.6, thanks

-- 
t



More information about the kernel-team mailing list