canonical-ubuntu-qa team mailing list archive
-
canonical-ubuntu-qa team
-
Mailing list archive
-
Message #07032
[Bug 2000667] Re: cmsg_so_mark.sh / cmsg_time.sh / cmsg_ipv6.sh in net from ubuntu_kernel_selftests hang with non-amd64
** Tags added: kernel-daily-bug
--
You received this bug notification because you are a member of Canonical
Platform QA Team, which is subscribed to ubuntu-kernel-tests.
https://bugs.launchpad.net/bugs/2000667
Title:
cmsg_so_mark.sh / cmsg_time.sh / cmsg_ipv6.sh in net from
ubuntu_kernel_selftests hang with non-amd64
Status in ubuntu-kernel-tests:
Fix Released
Status in linux package in Ubuntu:
Fix Released
Status in linux source package in Kinetic:
Fix Released
Status in linux source package in Lunar:
Fix Released
Bug description:
[Impact]
cmsg_* tests in net tests from ubuntu_kernel_selftests will hang on
non-amd64 systems and eventually causing "Incomplete" test results on
RISCV kernels due to the timeout setting.
This is because of an infinity while loop caused by a char variable
used here to take the getopt() return value in cmsg_sender.c, it should
be an int instead.
[Fix]
* 1573c68820 ("selftests: net: fix cmsg_so_mark.sh test hang")
This patch can be cherry-picked into both Kinetic and Lunar, these test
cases are only available in these newer kernels.
[Test]
Compile the patched cmsg_sender.c on a non-amd64 system, and the cmsg_*
tests will no longer hanging.
[Where problems could occur ]
Change limited to testing tools, no actual impact to real functions.
[Original Bug Report]
Issue found with 5.19.0-1010.11, 5.19.0-1011.12
This issue does not exist in 5.19.0-1009.10 because the net test can't
be built by that time.
Test output:
Running 'make run_tests -C net TEST_PROGS=cmsg_so_mark.sh TEST_GEN_PROGS='' TEST_CUSTOM_PROGS='''
make: Entering directory '/home/ubuntu/autotest/client/tmp/ubuntu_kernel_selftests/src/linux/tools/testing/selftests/net'
make --no-builtin-rules ARCH=riscv -C ../../../.. headers_install
make[1]: Entering directory '/home/ubuntu/autotest/client/tmp/ubuntu_kernel_selftests/src/linux'
INSTALL ./usr/include
make[1]: Leaving directory '/home/ubuntu/autotest/client/tmp/ubuntu_kernel_selftests/src/linux'
TAP version 13
1..1
# selftests: net: cmsg_so_mark.sh
Timer expired (5400 sec.), nuking pid 82951
A manual test shows it will stuck with:
$ sudo ./cmsg_so_mark.sh
+ NS=ns
+ IP4=172.16.0.1/24
+ TGT4=172.16.0.2
+ IP6=2001:db8:1::1/64
+ TGT6=2001:db8:1::2
+ MARK=1000
+ trap cleanup EXIT
+ ip netns add ns
+ ip netns exec ns sysctl -w 'net.ipv4.ping_group_range=0 2147483647'
+ ip -netns ns link add type dummy
+ ip -netns ns link set dev dummy0 up
+ ip -netns ns addr add 172.16.0.1/24 dev dummy0
+ ip -netns ns addr add 2001:db8:1::1/64 dev dummy0
+ ip -netns ns rule add fwmark 1000 lookup 300
+ ip -6 -netns ns rule add fwmark 1000 lookup 300
+ ip -netns ns route add prohibit any table 300
+ ip -6 -netns ns route add prohibit any table 300
+ BAD=0
+ TOTAL=0
+ for ovr in setsock cmsg both
+ for i in 4 6
+ '[' 4 == 4 ']'
+ TGT=172.16.0.2
+ for p in u i r
+ '[' u == u ']'
+ prot=UDP
+ '[' u == i ']'
+ '[' u == r ']'
+ '[' setsock == setsock ']'
+ m=-M
+ '[' setsock == cmsg ']'
+ '[' setsock == both ']'
+ ip netns exec ns ./cmsg_sender -4 -p u -M 1001 172.16.0.2 1234
(test stuck here)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-kernel-tests/+bug/2000667/+subscriptions