make -C tools/testing/selftests TARGETS=net/forwarding TEST_PROGS=tc_actioons.sh TEST_GEN_PROGS="" run_tests make: Entering directory '/home/virtme/testing-4/tools/testing/selftests' make[1]: Entering directory '/home/virtme/testing-4/tools/testing/selftests/net/forwarding' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/home/virtme/testing-4/tools/testing/selftests/net/forwarding' make[1]: Entering directory '/home/virtme/testing-4/tools/testing/selftests/net/forwarding' TAP version 13 1..1 # timeout set to 10800 # selftests: net/forwarding: tc_actions.sh [ 26.039536][ T245] ip (245) used greatest stack depth: 23824 bytes left [ 41.490455][ T331] GACT probability NOT on # TEST: gact drop and ok (skip_hw) [ OK ] [ 46.973046][ T393] Mirror/redirect action on # TEST: mirred egress flower redirect (skip_hw) [ OK ] # TEST: mirred egress flower mirror (skip_hw) [ OK ] # TEST: mirred egress matchall mirror (skip_hw) [ OK ] [ 57.626646][ T502] ping (502) used greatest stack depth: 23480 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 62.497749][ C0] [ 62.497908][ C0] ============================================ [ 62.498230][ C0] WARNING: possible recursive locking detected [ 62.498546][ C0] 6.8.0-rc2-virtme #1 Not tainted [ 62.498803][ C0] -------------------------------------------- [ 62.499139][ C0] ncat/545 is trying to acquire lock: [ 62.499424][ C0] ffff888023040e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x221e/0x2ac0 [ 62.499914][ C0] [ 62.499914][ C0] but task is already holding lock: [ 62.500306][ C0] ffff888023041b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x221e/0x2ac0 [ 62.500769][ C0] [ 62.500769][ C0] other info that might help us debug this: [ 62.501189][ C0] Possible unsafe locking scenario: [ 62.501189][ C0] [ 62.501588][ C0] CPU0 [ 62.501762][ C0] ---- [ 62.501947][ C0] lock(slock-AF_INET/1); [ 62.502186][ C0] lock(slock-AF_INET/1); [ 62.502448][ C0] [ 62.502448][ C0] *** DEADLOCK *** [ 62.502448][ C0] [ 62.502856][ C0] May be due to missing lock nesting notation [ 62.502856][ C0] [ 62.503293][ C0] 8 locks held by ncat/545: [ 62.503557][ C0] #0: ffffffff9c3447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 62.504078][ C0] #1: ffffffff9c3447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x480 [ 62.504594][ C0] #2: ffff888023041b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x221e/0x2ac0 [ 62.505079][ C0] #3: ffffffff9c3447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 62.505569][ C0] #4: ffffffff9c3447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 62.506076][ C0] #5: ffffffff9c344780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1da/0x17e0 [ 62.506586][ C0] #6: ffffffff9c3447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 62.507138][ C0] #7: ffffffff9c3447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x480 [ 62.507671][ C0] [ 62.507671][ C0] stack backtrace: [ 62.507969][ C0] CPU: 0 PID: 545 Comm: ncat Not tainted 6.8.0-rc2-virtme #1 [ 62.508342][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 62.508979][ C0] Call Trace: [ 62.509177][ C0] [ 62.509335][ C0] dump_stack_lvl+0x64/0xb0 [ 62.509584][ C0] validate_chain+0x525/0xa00 [ 62.509841][ C0] ? __pfx_validate_chain+0x10/0x10 [ 62.510106][ C0] ? hlock_class+0x4e/0x130 [ 62.510356][ C0] ? mark_lock+0x38/0x3e0 [ 62.510606][ C0] __lock_acquire+0xb67/0x1610 [ 62.510852][ C0] ? lock_downgrade+0xa0/0x110 [ 62.511126][ C0] ? mark_lock+0x38/0x3e0 [ 62.511358][ C0] lock_acquire.part.0+0xe5/0x330 [ 62.511635][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 62.511875][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 62.512183][ C0] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 62.512479][ C0] ? lock_acquire+0x1c1/0x220 [ 62.512723][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 62.512966][ C0] _raw_spin_lock_nested+0x33/0x80 [ 62.513260][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 62.513516][ C0] tcp_v4_rcv+0x221e/0x2ac0 [ 62.513766][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 62.514028][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 62.514288][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 62.514576][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 62.514892][ C0] ip_local_deliver_finish+0x2ae/0x480 [ 62.515181][ C0] ip_local_deliver+0x19d/0x480 [ 62.515432][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 62.515704][ C0] ? tcp_v4_early_demux+0x59a/0x9d0 [ 62.515996][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 62.516319][ C0] ip_rcv+0x564/0x740 [ 62.516523][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 62.516774][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 62.517039][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 62.517354][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 62.517585][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 62.517888][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 62.518229][ C0] ? mark_held_locks+0xa5/0xf0 [ 62.518484][ C0] ? lock_acquire+0x1c1/0x220 [ 62.518725][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 62.519038][ C0] netif_receive_skb_internal+0xb0/0x300 [ 62.519327][ C0] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 62.519652][ C0] ? __copy_skb_header+0xaf/0x490 [ 62.519934][ C0] ? __skb_clone+0x57a/0x760 [ 62.520166][ C0] netif_receive_skb+0x55/0x280 [ 62.520423][ C0] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 62.520748][ C0] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 62.521086][ C0] tcf_mirred_act+0x338/0x780 [act_mirred] [ 62.521408][ C0] tcf_action_exec.part.0+0x112/0x3d0 [ 62.521754][ C0] fl_classify+0x4dc/0x650 [cls_flower] [ 62.522052][ C0] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 62.522367][ C0] ? __bfs+0x247/0x650 [ 62.522601][ C0] ? __pfx_check_irq_usage+0x10/0x10 [ 62.522878][ C0] ? __bfs+0x247/0x650 [ 62.523085][ C0] ? __pfx_hlock_conflict+0x10/0x10 [ 62.523352][ C0] ? hlock_class+0x4e/0x130 [ 62.523586][ C0] ? check_path.constprop.0+0x24/0x50 [ 62.523875][ C0] ? check_noncircular+0x14e/0x3e0 [ 62.524138][ C0] ? __pfx_check_noncircular+0x10/0x10 [ 62.524426][ C0] ? hlock_class+0x4e/0x130 [ 62.524669][ C0] ? check_prev_add+0x773/0xce0 [ 62.524923][ C0] __tcf_classify+0x329/0x7d0 [ 62.525191][ C0] tcf_classify+0x283/0x930 [ 62.525425][ C0] ? __pfx_tcf_classify+0x10/0x10 [ 62.525707][ C0] ? __dev_queue_xmit+0x1da/0x17e0 [ 62.525979][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 62.526247][ C0] ? __dev_queue_xmit+0x1da/0x17e0 [ 62.526509][ C0] tc_run+0x2e4/0x5d0 [ 62.526728][ C0] ? __pfx_tc_run+0x10/0x10 [ 62.526965][ C0] ? lock_acquire+0x1c1/0x220 [ 62.527204][ C0] ? __dev_queue_xmit+0x1da/0x17e0 [ 62.527482][ C0] __dev_queue_xmit+0x686/0x17e0 [ 62.527740][ C0] ? mark_held_locks+0xa5/0xf0 [ 62.528008][ C0] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 62.528355][ C0] ? __pfx___dev_queue_xmit+0x10/0x10 [ 62.528630][ C0] ? neigh_hh_output+0x348/0x590 [ 62.528886][ C0] ip_finish_output2+0x786/0x18e0 [ 62.529158][ C0] ? __pfx_ip_finish_output2+0x10/0x10 [ 62.529438][ C0] ? __ip_finish_output+0x10f/0x770 [ 62.529704][ C0] ip_output+0x16b/0x4f0 [ 62.529941][ C0] ? __pfx_ip_output+0x10/0x10 [ 62.530192][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 62.530491][ C0] ? ip_local_out+0x114/0x3b0 [ 62.530745][ C0] __ip_queue_xmit+0x672/0x1910 [ 62.530993][ C0] ? __create_object+0x5e/0xb0 [ 62.531241][ C0] __tcp_transmit_skb+0x22b1/0x2d20 [ 62.531510][ C0] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 62.531828][ C0] ? __tcp_send_ack.part.0+0x66/0x6e0 [ 62.532104][ C0] tcp_rcv_state_process+0x7ca/0x1fe0 [ 62.532378][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 62.532633][ C0] ? hlock_class+0x4e/0x130 [ 62.532867][ C0] ? __lock_acquired+0x18a/0x6b0 [ 62.533124][ C0] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 62.533443][ C0] ? __pfx___lock_acquired+0x10/0x10 [ 62.533722][ C0] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 62.534009][ C0] tcp_v4_do_rcv+0x154/0x860 [ 62.534246][ C0] tcp_v4_rcv+0x2449/0x2ac0 [ 62.534488][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 62.534751][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 62.535014][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 62.535318][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 62.535604][ C0] ip_local_deliver_finish+0x2ae/0x480 [ 62.535907][ C0] ip_local_deliver+0x19d/0x480 [ 62.536158][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 62.536433][ C0] ? tcp_v4_early_demux+0x59a/0x9d0 [ 62.536701][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 62.537028][ C0] ip_rcv+0x564/0x740 [ 62.537252][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 62.537496][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 62.537778][ C0] ? process_backlog+0x1ed/0x5e0 [ 62.538034][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 62.538268][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 62.538571][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 62.538919][ C0] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 62.539222][ C0] ? lock_acquire+0x1c1/0x220 [ 62.539464][ C0] ? process_backlog+0x1ed/0x5e0 [ 62.539720][ C0] process_backlog+0xd3/0x5e0 [ 62.539984][ C0] __napi_poll.constprop.0+0xa2/0x460 [ 62.540261][ C0] net_rx_action+0x440/0xb40 [ 62.540527][ C0] ? __pfx_net_rx_action+0x10/0x10 [ 62.540789][ C0] ? kvm_clock_get_cycles+0x18/0x30 [ 62.541073][ C0] ? ktime_get+0xb3/0x190 [ 62.541318][ C0] ? hrtimer_interrupt+0x30e/0x770 [ 62.541592][ C0] ? hrtimer_interrupt+0x31a/0x770 [ 62.541856][ C0] __do_softirq+0x1b9/0x7ff [ 62.542120][ C0] ? tcp_recvmsg+0xf8/0x4f0 [ 62.542361][ C0] do_softirq+0x4d/0xa0 [ 62.542577][ C0] [ 62.542732][ C0] [ 62.542913][ C0] __local_bh_enable_ip+0xf6/0x120 [ 62.543188][ C0] tcp_recvmsg+0xf8/0x4f0 [ 62.543410][ C0] ? __pfx_tcp_recvmsg+0x10/0x10 [ 62.543665][ C0] ? core_sys_select+0x620/0x710 [ 62.543927][ C0] ? __pfx_core_sys_select+0x10/0x10 [ 62.544212][ C0] inet_recvmsg+0xf9/0x2c0 [ 62.544446][ C0] ? __pfx_inet_recvmsg+0x10/0x10 [ 62.544719][ C0] ? __fget_light+0x54/0x1e0 [ 62.544976][ C0] ? sockfd_lookup_light+0x1a/0x160 [ 62.545246][ C0] __sys_recvfrom+0x2fb/0x3b0 [ 62.545510][ C0] ? __pfx___sys_recvfrom+0x10/0x10 [ 62.545782][ C0] ? __pfx___lock_release+0x10/0x10 [ 62.546073][ C0] ? do_pselect.constprop.0+0x12b/0x1e0 [ 62.546368][ C0] ? __pfx_do_pselect.constprop.0+0x10/0x10 [ 62.546672][ C0] ? __pfx_task_work_run+0x10/0x10 [ 62.546935][ C0] __x64_sys_recvfrom+0xe0/0x1c0 [ 62.547213][ C0] ? lockdep_hardirqs_on_prepare.part.0+0x1b1/0x370 [ 62.547564][ C0] do_syscall_64+0xc9/0x1e0 [ 62.547802][ C0] entry_SYSCALL_64_after_hwframe+0x6f/0x77 [ 62.548126][ C0] RIP: 0033:0x7f909c4094c0 [ 62.548358][ C0] Code: 84 00 00 00 00 00 0f 1f 40 00 f3 0f 1e fa 41 89 ca 64 8b 04 25 18 00 00 00 85 c0 75 1d 45 31 c9 45 31 c0 b8 2d 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 68 c3 0f 1f 80 00 00 00 00 41 54 48 83 ec 20 [ 62.549333][ C0] RSP: 002b:00007fff73e0c4e8 EFLAGS: 00000246 ORIG_RAX: 000000000000002d [ 62.549789][ C0] RAX: ffffffffffffffda RBX: 000055836d0aea20 RCX: 00007f909c4094c0 [ 62.550199][ C0] RDX: 0000000000002000 RSI: 00007fff73e0c570 RDI: 0000000000000008 [ 62.550603][ C0] RBP: 00007fff73e0c570 R08: 0000000000000000 R09: 0000000000000000 [ 62.551025][ C0] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000008 [ 62.551422][ C0] R13: 000055836d0aea20 R14: 0000000000000000 R15: 00007fff73e0c56c [ 62.551836][ C0] [ 75.684470][ T546] ncat (546) used greatest stack depth: 21496 bytes left TEST: mirred_egress_to_ingress_tcp (skip_hw) [ OK ] # INFO: Could not test offloaded functionality ok 1 selftests: net/forwarding: tc_actions.sh make[1]: Leaving directory '/home/virtme/testing-4/tools/testing/selftests/net/forwarding' make: Leaving directory '/home/virtme/testing-4/tools/testing/selftests' xx__-> echo $? 0 xx__->