2021-06-23 07:38:40

by kernel test robot

[permalink] [raw]
Subject: [mptcp] aa4272438c: kernel-selftests.net/mptcp.mptcp_join.sh.fail



Greeting,

FYI, we noticed the following commit (built with gcc-9):

commit: aa4272438cf6a936bf04e6bdd0d43f7043e1f497 ("[PATCH v2 3/4] mptcp: fix syncookie process if mptcp can not_accept new subflow")
url: https://github.com/0day-ci/linux/commits/Jianguo-Wu/Fix-some-mptcp-syncookie-process-bugs/20210617-101149
base: https://github.com/multipath-tcp/mptcp_net-next.git export

in testcase: kernel-selftests
version: kernel-selftests-x86_64-f8879e85-1_20210618
with following parameters:

group: mptcp
ucode: 0xe2

test-description: The kernel contains a set of "self tests" under the tools/testing/selftests/ directory. These are intended to be small unit tests to exercise individual code paths in the kernel.
test-url: https://www.kernel.org/doc/Documentation/kselftest.txt


on test machine: 4 threads Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz with 32G memory

caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):




If you fix the issue, kindly add following tag
Reported-by: kernel test robot <[email protected]>

KERNEL SELFTESTS: linux_headers_dir is /usr/src/linux-headers-x86_64-rhel-8.3-kselftests-aa4272438cf6a936bf04e6bdd0d43f7043e1f497
2019-02-14 10:12:15 ln -sf /usr/bin/clang
2019-02-14 10:12:15 ln -sf /usr/bin/llc
2019-02-14 10:12:15 sed -i s/default_timeout=45/default_timeout=300/ kselftest/runner.sh
2019-02-14 10:12:15 sed -i s/default_timeout=45/default_timeout=300/ /kselftests/kselftest/runner.sh
source /lkp/lkp/src/lib/tests/kernel-selftests-ext.sh
2019-02-14 10:12:15 /kselftests/run_kselftest.sh -c net/mptcp
TAP version 13
1..6
# selftests: net/mptcp: mptcp_connect.sh
# Created /tmp/tmp.DURHi00pWJ (size 2566172 /tmp/tmp.DURHi00pWJ) containing data sent by client
# Created /tmp/tmp.uKlAyig8Nq (size 2317340 /tmp/tmp.uKlAyig8Nq) containing data sent by server
# New MPTCP socket can be blocked via sysctl [ OK ]
# setsockopt(..., TCP_ULP, "mptcp", ...) blocked [ OK ]
# INFO: validating network environment with pings
# INFO: Using loss of 0.67% delay 44 ms reorder 96% 2% with delay 11ms on ns3eth4
# ns1 MPTCP -> ns1 (10.0.1.1:10000 ) MPTCP (duration 72ms) [ OK ]
# ns1 MPTCP -> ns1 (10.0.1.1:10001 ) TCP (duration 31ms) [ OK ]
# ns1 TCP -> ns1 (10.0.1.1:10002 ) MPTCP (duration 27ms) [ OK ]
# ns1 MPTCP -> ns1 (dead:beef:1::1:10003) MPTCP (duration 73ms) [ OK ]
# ns1 MPTCP -> ns1 (dead:beef:1::1:10004) TCP (duration 30ms) [ OK ]
# ns1 TCP -> ns1 (dead:beef:1::1:10005) MPTCP (duration 29ms) [ OK ]
# ns1 MPTCP -> ns2 (10.0.1.2:10006 ) MPTCP (duration 36ms) [ OK ]
# ns1 MPTCP -> ns2 (dead:beef:1::2:10007) MPTCP (duration 38ms) [ OK ]
# ns1 MPTCP -> ns2 (10.0.2.1:10008 ) MPTCP (duration 35ms) [ OK ]
# ns1 MPTCP -> ns2 (dead:beef:2::1:10009) MPTCP (duration 38ms) [ OK ]
# ns1 MPTCP -> ns3 (10.0.2.2:10010 ) MPTCP (duration 603ms) [ OK ]
# ns1 MPTCP -> ns3 (dead:beef:2::2:10011) MPTCP (duration 605ms) [ OK ]
# ns1 MPTCP -> ns3 (10.0.3.2:10012 ) MPTCP (duration 463ms) [ OK ]
# ns1 MPTCP -> ns3 (dead:beef:3::2:10013) MPTCP (duration 502ms) [ OK ]
# ns1 MPTCP -> ns4 (10.0.3.1:10014 ) MPTCP (duration 466ms) [ OK ]
# ns1 MPTCP -> ns4 (dead:beef:3::1:10015) MPTCP (duration 560ms) [ OK ]
# ns2 MPTCP -> ns1 (10.0.1.1:10016 ) MPTCP (duration 34ms) [ OK ]
# ns2 MPTCP -> ns1 (dead:beef:1::1:10017) MPTCP (duration 38ms) [ OK ]
# ns2 MPTCP -> ns3 (10.0.2.2:10018 ) MPTCP (duration 4248ms) [ OK ]
# ns2 MPTCP -> ns3 (dead:beef:2::2:10019) MPTCP (duration 4473ms) [ OK ]
# ns2 MPTCP -> ns3 (10.0.3.2:10020 ) MPTCP (duration 501ms) [ OK ]
# ns2 MPTCP -> ns3 (dead:beef:3::2:10021) MPTCP (duration 455ms) [ OK ]
# ns2 MPTCP -> ns4 (10.0.3.1:10022 ) MPTCP (duration 433ms) [ OK ]
# ns2 MPTCP -> ns4 (dead:beef:3::1:10023) MPTCP (duration 605ms) [ OK ]
# ns3 MPTCP -> ns1 (10.0.1.1:10024 ) MPTCP (duration 565ms) [ OK ]
# ns3 MPTCP -> ns1 (dead:beef:1::1:10025) MPTCP (duration 1899ms) [ OK ]
# ns3 MPTCP -> ns2 (10.0.1.2:10026 ) MPTCP (duration 3675ms) [ OK ]
# ns3 MPTCP -> ns2 (dead:beef:1::2:10027) MPTCP (duration 530ms) [ OK ]
# ns3 MPTCP -> ns2 (10.0.2.1:10028 ) MPTCP (duration 1563ms) [ OK ]
# ns3 MPTCP -> ns2 (dead:beef:2::1:10029) MPTCP (duration 2789ms) [ OK ]
# ns3 MPTCP -> ns4 (10.0.3.1:10030 ) MPTCP (duration 461ms) [ OK ]
# ns3 MPTCP -> ns4 (dead:beef:3::1:10031) MPTCP (duration 382ms) [ OK ]
# ns4 MPTCP -> ns1 (10.0.1.1:10032 ) MPTCP (duration 470ms) [ OK ]
# ns4 MPTCP -> ns1 (dead:beef:1::1:10033) MPTCP (duration 729ms) [ OK ]
# ns4 MPTCP -> ns2 (10.0.1.2:10034 ) MPTCP (duration 465ms) [ OK ]
# ns4 MPTCP -> ns2 (dead:beef:1::2:10035) MPTCP (duration 2105ms) [ OK ]
# ns4 MPTCP -> ns2 (10.0.2.1:10036 ) MPTCP (duration 628ms) [ OK ]
# ns4 MPTCP -> ns2 (dead:beef:2::1:10037) MPTCP (duration 3716ms) [ OK ]
# ns4 MPTCP -> ns3 (10.0.2.2:10038 ) MPTCP (duration 299ms) [ OK ]
# ns4 MPTCP -> ns3 (dead:beef:2::2:10039) MPTCP (duration 319ms) [ OK ]
# ns4 MPTCP -> ns3 (10.0.3.2:10040 ) MPTCP (duration 96ms) [ OK ]
# ns4 MPTCP -> ns3 (dead:beef:3::2:10041) MPTCP (duration 287ms) [ OK ]
# INFO: with peek mode: saveWithPeek
# ns1 MPTCP -> ns1 (10.0.1.1:10042 ) MPTCP (duration 71ms) [ OK ]
# ns1 MPTCP -> ns1 (10.0.1.1:10043 ) TCP (duration 31ms) [ OK ]
# ns1 TCP -> ns1 (10.0.1.1:10044 ) MPTCP (duration 29ms) [ OK ]
# ns1 MPTCP -> ns1 (dead:beef:1::1:10045) MPTCP (duration 73ms) [ OK ]
# ns1 MPTCP -> ns1 (dead:beef:1::1:10046) TCP (duration 31ms) [ OK ]
# ns1 TCP -> ns1 (dead:beef:1::1:10047) MPTCP (duration 30ms) [ OK ]
# INFO: with peek mode: saveAfterPeek
# ns1 MPTCP -> ns1 (10.0.1.1:10048 ) MPTCP (duration 72ms) [ OK ]
# ns1 MPTCP -> ns1 (10.0.1.1:10049 ) TCP (duration 29ms) [ OK ]
# ns1 TCP -> ns1 (10.0.1.1:10050 ) MPTCP (duration 28ms) [ OK ]
# ns1 MPTCP -> ns1 (dead:beef:1::1:10051) MPTCP (duration 72ms) [ OK ]
# ns1 MPTCP -> ns1 (dead:beef:1::1:10052) TCP (duration 32ms) [ OK ]
# ns1 TCP -> ns1 (dead:beef:1::1:10053) MPTCP (duration 29ms) [ OK ]
# Time: 51 seconds
ok 1 selftests: net/mptcp: mptcp_connect.sh
# selftests: net/mptcp: pm_netlink.sh
# defaults addr list [ OK ]
# defaults limits [ OK ]
# simple add/get addr [ OK ]
# dump addrs [ OK ]
# simple del addr [ OK ]
# dump addrs after del [ OK ]
# duplicate addr [ OK ]
# id addr increment [ OK ]
# hard addr limit [ OK ]
# above hard addr limit [ OK ]
# id limit [ OK ]
# flush addrs [ OK ]
# rcv addrs above hard limit [ OK ]
# subflows above hard limit [ OK ]
# set limits [ OK ]
# set ids [ OK ]
# wrap-around ids [ OK ]
ok 2 selftests: net/mptcp: pm_netlink.sh
# selftests: net/mptcp: mptcp_join.sh
# Created /tmp/tmp.XLN2tSpAs6 (size 1 KB) containing data sent by client
# Created /tmp/tmp.JtTHPKAwD4 (size 1 KB) containing data sent by server
# 01 no JOIN syn[ ok ] - synack[ ok ] - ack[ ok ]
# 02 single subflow, limited by client syn[ ok ] - synack[ ok ] - ack[ ok ]
# 03 single subflow, limited by server syn[ ok ] - synack[ ok ] - ack[ ok ]
# 04 single subflow syn[ ok ] - synack[ ok ] - ack[ ok ]
# 05 multiple subflows syn[ ok ] - synack[ ok ] - ack[ ok ]
# 06 multiple subflows, limited by server syn[ ok ] - synack[ ok ] - ack[ ok ]
# 07 single subflow, dev syn[ ok ] - synack[ ok ] - ack[ ok ]
# 08 unused signal address syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 09 signal address syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 10 subflow and signal syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 11 multiple subflows and signal syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 12 signal addresses syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 13 signal invalid addresses syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# Created /tmp/tmp.XLN2tSpAs6 (size 76928 KB) containing data sent by client
# 14 multiple flows, signal, link failure syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 15 signal address, ADD_ADDR timeout syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 16 signal address, ADD_ADDR6 timeout syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 17 signal addresses, ADD_ADDR timeout syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 18 invalid address, ADD_ADDR timeout syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 19 remove single subflow syn[ ok ] - synack[ ok ] - ack[ ok ]
# rm [ ok ] - sf [ ok ]
# 20 remove multiple subflows syn[ ok ] - synack[ ok ] - ack[ ok ]
# rm [ ok ] - sf [ ok ]
# 21 remove single address syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 22 remove subflow and signal syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 23 remove subflows and signal syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 24 remove addresses syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 25 remove invalid addresses syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 26 flush subflows and signal syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 27 flush subflows syn[ ok ] - synack[ ok ] - ack[ ok ]
# rm [ ok ] - sf [ ok ]
# 28 flush addresses syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 29 flush invalid addresses syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 30 remove id 0 subflow syn[ ok ] - synack[ ok ] - ack[ ok ]
# rm [ ok ] - sf [ ok ]
# 31 remove id 0 address syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 32 add single subflow syn[ ok ] - synack[ ok ] - ack[ ok ]
# 33 add signal address syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 34 add multiple subflows syn[ ok ] - synack[ ok ] - ack[ ok ]
# 35 add multiple subflows IPv6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 36 add multiple addresses IPv6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 37 single subflow IPv6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 38 unused signal address IPv6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 39 single address IPv6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 40 remove single address IPv6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 41 remove subflow and signal IPv6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 42 single subflow IPv4-mapped syn[ ok ] - synack[ ok ] - ack[ ok ]
# 43 signal address IPv4-mapped syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 44 single subflow v4-map-v6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 45 signal address v4-map-v6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 46 single subflow v6-map-v4 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 47 signal address v6-map-v4 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 48 no JOIN with diff families v4-v6 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 49 no JOIN with diff families v4-v6-2 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 50 no JOIN with diff families v6-v4 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 51 single subflow, backup syn[ ok ] - synack[ ok ] - ack[ ok ]
# ptx[ ok ] - prx [ ok ]
# 52 single address, backup syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# ptx[ ok ] - prx [ ok ]
# 53 signal address with port syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ] - pt [ ok ]
# syn[ ok ] - synack[ ok ] - ack[ ok ]
# syn[ ok ] - ack [ ok ]
# 54 subflow and signal with port syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ] - pt [ ok ]
# syn[ ok ] - synack[ ok ] - ack[ ok ]
# syn[ ok ] - ack [ ok ]
# 55 remove single address with port syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ] - pt [ ok ]
# syn[ ok ] - synack[ ok ] - ack[ ok ]
# syn[ ok ] - ack [ ok ]
# rm [ ok ] - sf [ ok ]
# 56 remove subflow and signal with port syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ] - pt [ ok ]
# syn[ ok ] - synack[ ok ] - ack[ ok ]
# syn[ ok ] - ack [ ok ]
# rm [ ok ] - sf [ ok ]
# 57 flush subflows and signal with port syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# rm [ ok ] - sf [ ok ]
# 58 multiple addresses with port syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ] - pt [ ok ]
# syn[ ok ] - synack[ ok ] - ack[ ok ]
# syn[ ok ] - ack [ ok ]
# 59 multiple addresses with ports syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ] - pt [ ok ]
# syn[ ok ] - synack[ ok ] - ack[ ok ]
# syn[ ok ] - ack [ ok ]
# 60 single subflow with syn cookies syn[ ok ] - synack[ ok ] - ack[ ok ]
# 61 multiple subflows with syn cookies syn[ ok ] - synack[ ok ] - ack[ ok ]
# 62 subflows limited by server w cookies syn[ ok ] - synack[fail] got 1 JOIN[s] synack expected 2
# - ack[ ok ]
# Server ns stats
# MPTcpExtMPCapableSYNRX 1 0.0
# MPTcpExtMPCapableACKRX 1 0.0
# MPTcpExtMPJoinSynRx 2 0.0
# MPTcpExtMPJoinAckRx 1 0.0
# Client ns stats
# MPTcpExtMPCapableSYNTX 1 0.0
# MPTcpExtMPCapableSYNACKRX 1 0.0
# MPTcpExtMPJoinSynAckRx 1 0.0
# 63 signal address with syn cookies syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 64 subflow and signal w cookies syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 65 subflows and signal w. cookies syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 66 checksum test 0 0 sum[ ok ] - csum [ ok ]
# 67 checksum test 1 1 sum[ ok ] - csum [ ok ]
# 68 checksum test 0 1 sum[ ok ] - csum [ ok ]
# 69 checksum test 1 0 sum[ ok ] - csum [ ok ]
# 70 single subflow allow join id0 ns1 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 71 single subflow allow join id0 ns2 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 72 signal address allow join id0 ns1 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 73 signal address allow join id0 ns2 syn[ ok ] - synack[ ok ] - ack[ ok ]
# add[ ok ] - echo [ ok ]
# 74 subflow and address allow join id0 1 syn[ ok ] - synack[ ok ] - ack[ ok ]
# 75 subflow and address allow join id0 2 syn[ ok ] - synack[ ok ] - ack[ ok ]
not ok 3 selftests: net/mptcp: mptcp_join.sh # exit=1
# selftests: net/mptcp: diag.sh
# no msk on netns creation [ ok ]
# after MPC handshake [ ok ]
# ....chk remote_key [ ok ]
# ....chk no fallback [ ok ]
# check fallback [ ok ]
# many msk socket present [ ok ]
ok 4 selftests: net/mptcp: diag.sh
# selftests: net/mptcp: simult_flows.sh
# balanced bwidth 4600 max 5005 [ OK ]
# balanced bwidth - reverse direction 4577 max 5005 [ OK ]
# balanced bwidth with unbalanced delay 4570 max 5005 [ OK ]
# balanced bwidth with unbalanced delay - reverse direction 4556 max 5005 [ OK ]
# unbalanced bwidth 2976 max 3245 [ OK ]
# unbalanced bwidth - reverse direction 2926 max 3245 [ OK ]
# unbalanced bwidth with unbalanced delay 2940 max 3245 [ OK ]
# unbalanced bwidth with unbalanced delay - reverse direction 2975 max 3245 [ OK ]
# unbalanced bwidth with opposed, unbalanced delay 2919 max 3245 [ OK ]
# unbalanced bwidth with opposed, unbalanced delay - reverse direction 2919 max 3245 [ OK ]
ok 5 selftests: net/mptcp: simult_flows.sh
# selftests: net/mptcp: mptcp_sockopt.sh
# Created /tmp/tmp.l74Qy9jbKk (size 1 KB) containing data sent by client
# Created /tmp/tmp.Vbf1hnYWl8 (size 1 KB) containing data sent by server
# PASS: all packets had packet mark set
ok 6 selftests: net/mptcp: mptcp_sockopt.sh



To reproduce:

git clone https://github.com/intel/lkp-tests.git
cd lkp-tests
bin/lkp install job.yaml # job file is attached in this email
bin/lkp split-job --compatible job.yaml # generate the yaml file for lkp run
bin/lkp run generated-yaml-file



---
0DAY/LKP+ Test Infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/[email protected] Intel Corporation

Thanks,
Oliver Sang


Attachments:
(No filename) (20.98 kB)
config-5.13.0-rc3-01715-gaa4272438cf6 (178.40 kB)
job-script (6.61 kB)
dmesg.xz (23.96 kB)
kernel-selftests (19.40 kB)
job.yaml (5.62 kB)
reproduce (239.00 B)
Download all attachments