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 # TEST: gact drop and ok (skip_hw) [ OK ] # TEST: mirred egress flower redirect (skip_hw) [ OK ] # TEST: mirred egress flower mirror (skip_hw) [ OK ] # TEST: mirred egress matchall mirror (skip_hw) [ OK ] [ 2361.591460][ T8058] ping (8058) used greatest stack depth: 23352 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 2365.925796][ C2] [ 2365.925961][ C2] ============================================ [ 2365.926286][ C2] WARNING: possible recursive locking detected [ 2365.926613][ C2] 6.8.0-rc2-virtme #1 Not tainted [ 2365.926875][ C2] -------------------------------------------- [ 2365.927200][ C2] ncat/8101 is trying to acquire lock: [ 2365.927479][ C2] ffff8880077c0e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2365.927957][ C2] [ 2365.927957][ C2] but task is already holding lock: [ 2365.928337][ C2] ffff8880077c1b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2365.928808][ C2] [ 2365.928808][ C2] other info that might help us debug this: [ 2365.929217][ C2] Possible unsafe locking scenario: [ 2365.929217][ C2] [ 2365.929600][ C2] CPU0 [ 2365.929784][ C2] ---- [ 2365.929958][ C2] lock(slock-AF_INET/1); [ 2365.930221][ C2] lock(slock-AF_INET/1); [ 2365.930451][ C2] [ 2365.930451][ C2] *** DEADLOCK *** [ 2365.930451][ C2] [ 2365.930865][ C2] May be due to missing lock nesting notation [ 2365.930865][ C2] [ 2365.931305][ C2] 8 locks held by ncat/8101: [ 2365.931553][ C2] #0: ffffffffb47447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 2365.932057][ C2] #1: ffffffffb47447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2365.932578][ C2] #2: ffff8880077c1b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2365.933061][ C2] #3: ffffffffb47447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 2365.933545][ C2] #4: ffffffffb47447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 2365.934072][ C2] #5: ffffffffb4744780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1c1/0x1ca0 [ 2365.934608][ C2] #6: ffffffffb47447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 2365.935151][ C2] #7: ffffffffb47447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2365.935696][ C2] [ 2365.935696][ C2] stack backtrace: [ 2365.936014][ C2] CPU: 2 PID: 8101 Comm: ncat Not tainted 6.8.0-rc2-virtme #1 [ 2365.936430][ C2] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 2365.937068][ C2] Call Trace: [ 2365.937256][ C2] [ 2365.937450][ C2] dump_stack_lvl+0x64/0xb0 [ 2365.937695][ C2] validate_chain+0x525/0xa00 [ 2365.937951][ C2] ? __pfx_validate_chain+0x10/0x10 [ 2365.938257][ C2] ? hlock_class+0x4e/0x130 [ 2365.938512][ C2] ? mark_lock+0x38/0x3e0 [ 2365.938737][ C2] __lock_acquire+0xb67/0x1610 [ 2365.938983][ C2] ? lock_downgrade+0xa0/0x110 [ 2365.939249][ C2] ? mark_lock+0x38/0x3e0 [ 2365.939499][ C2] lock_acquire.part.0+0xe5/0x330 [ 2365.939778][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2365.940037][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2365.940365][ C2] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 2365.940668][ C2] ? lock_acquire+0x1c1/0x220 [ 2365.940921][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2365.941161][ C2] _raw_spin_lock_nested+0x33/0x80 [ 2365.941455][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2365.941726][ C2] tcp_v4_rcv+0x2161/0x29c0 [ 2365.941977][ C2] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2365.942264][ C2] ? __pfx_raw_v4_input+0x10/0x10 [ 2365.942534][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2365.942844][ C2] ip_protocol_deliver_rcu+0x93/0x360 [ 2365.943141][ C2] ip_local_deliver_finish+0x2ae/0x450 [ 2365.943440][ C2] ip_local_deliver+0x19d/0x480 [ 2365.943709][ C2] ? __pfx_ip_local_deliver+0x10/0x10 [ 2365.944017][ C2] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2365.944359][ C2] ip_rcv+0x564/0x740 [ 2365.944588][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2365.944834][ C2] ? lock_acquire.part.0+0xe5/0x330 [ 2365.945105][ C2] ? netif_receive_skb_internal+0x84/0x300 [ 2365.945418][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2365.945672][ C2] __netif_receive_skb_one_core+0x166/0x1b0 [ 2365.946010][ C2] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2365.946354][ C2] ? mark_held_locks+0xa5/0xf0 [ 2365.946599][ C2] ? lock_acquire+0x1c1/0x220 [ 2365.946849][ C2] ? netif_receive_skb_internal+0x84/0x300 [ 2365.947149][ C2] netif_receive_skb_internal+0xb0/0x300 [ 2365.947435][ C2] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 2365.947764][ C2] ? __copy_skb_header+0xaf/0x490 [ 2365.948028][ C2] ? __skb_clone+0x57a/0x760 [ 2365.948275][ C2] netif_receive_skb+0x55/0x280 [ 2365.948531][ C2] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 2365.948854][ C2] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 2365.949189][ C2] tcf_mirred_act+0x338/0x780 [act_mirred] [ 2365.949505][ C2] tcf_action_exec.part.0+0x112/0x3d0 [ 2365.949792][ C2] fl_classify+0x4dc/0x650 [cls_flower] [ 2365.950082][ C2] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 2365.950416][ C2] ? __pfx_usage_match+0x10/0x10 [ 2365.950679][ C2] ? check_irq_usage+0x27e/0x850 [ 2365.950947][ C2] ? __pfx_check_irq_usage+0x10/0x10 [ 2365.951227][ C2] ? __bfs+0x247/0x650 [ 2365.951452][ C2] ? __pfx_hlock_conflict+0x10/0x10 [ 2365.951741][ C2] ? hlock_class+0x4e/0x130 [ 2365.951997][ C2] ? check_path.constprop.0+0x24/0x50 [ 2365.952290][ C2] ? check_noncircular+0x14e/0x3e0 [ 2365.952571][ C2] ? __pfx_check_noncircular+0x10/0x10 [ 2365.952861][ C2] __tcf_classify+0x329/0x7d0 [ 2365.953115][ C2] tcf_classify+0x283/0x930 [ 2365.953356][ C2] ? __pfx_tcf_classify+0x10/0x10 [ 2365.953639][ C2] ? lock_acquire.part.0+0xe5/0x330 [ 2365.953928][ C2] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2365.954204][ C2] tc_run+0x2e4/0x5d0 [ 2365.954442][ C2] ? __pfx_tc_run+0x10/0x10 [ 2365.954684][ C2] ? lock_acquire+0x1c1/0x220 [ 2365.954946][ C2] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2365.955247][ C2] __dev_queue_xmit+0x8eb/0x1ca0 [ 2365.955530][ C2] ? hlock_class+0x4e/0x130 [ 2365.955777][ C2] ? mark_lock+0x38/0x3e0 [ 2365.956011][ C2] ? __pfx___dev_queue_xmit+0x10/0x10 [ 2365.956325][ C2] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 2365.956680][ C2] ? neigh_hh_output+0x348/0x590 [ 2365.956942][ C2] ip_finish_output2+0x786/0x18e0 [ 2365.957233][ C2] ? __pfx_ip_finish_output2+0x10/0x10 [ 2365.957520][ C2] ? __ip_finish_output+0x10f/0x770 [ 2365.957801][ C2] ip_output+0x16b/0x4f0 [ 2365.958066][ C2] ? __pfx_ip_output+0x10/0x10 [ 2365.958335][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2365.958632][ C2] ? ip_local_out+0x114/0x3b0 [ 2365.958913][ C2] __ip_queue_xmit+0x672/0x1910 [ 2365.959166][ C2] ? __create_object+0x5e/0xb0 [ 2365.959433][ C2] __tcp_transmit_skb+0x22b1/0x2d20 [ 2365.959743][ C2] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 2365.960040][ C2] ? __tcp_send_ack.part.0+0x66/0x6e0 [ 2365.960354][ C2] tcp_rcv_state_process+0x8a7/0x21c0 [ 2365.960658][ C2] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 2365.960962][ C2] ? find_held_lock+0x33/0x120 [ 2365.961230][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2365.961480][ C2] ? hlock_class+0x4e/0x130 [ 2365.961729][ C2] tcp_v4_do_rcv+0x1ac/0x8e0 [ 2365.961983][ C2] ? __pfx_tcp_v4_do_rcv+0x10/0x10 [ 2365.962279][ C2] tcp_v4_rcv+0x2362/0x29c0 [ 2365.962524][ C2] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2365.962796][ C2] ? __pfx_raw_v4_input+0x10/0x10 [ 2365.963066][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2365.963380][ C2] ip_protocol_deliver_rcu+0x93/0x360 [ 2365.963682][ C2] ip_local_deliver_finish+0x2ae/0x450 [ 2365.963990][ C2] ip_local_deliver+0x19d/0x480 [ 2365.964254][ C2] ? __pfx_ip_local_deliver+0x10/0x10 [ 2365.964555][ C2] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2365.964877][ C2] ip_rcv+0x564/0x740 [ 2365.965086][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2365.965334][ C2] ? lock_acquire.part.0+0xe5/0x330 [ 2365.965622][ C2] ? process_backlog+0x1ed/0x5e0 [ 2365.965892][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2365.966132][ C2] __netif_receive_skb_one_core+0x166/0x1b0 [ 2365.966445][ C2] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2365.966771][ C2] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 2365.967070][ C2] ? lock_acquire+0x1c1/0x220 [ 2365.967316][ C2] ? process_backlog+0x1ed/0x5e0 [ 2365.967583][ C2] process_backlog+0xd3/0x5e0 [ 2365.967826][ C2] __napi_poll.constprop.0+0xa2/0x450 [ 2365.968110][ C2] net_rx_action+0x440/0xb40 [ 2365.968350][ C2] ? __pfx_net_rx_action+0x10/0x10 [ 2365.968621][ C2] ? kvm_clock_get_cycles+0x18/0x30 [ 2365.968896][ C2] ? ktime_get+0xb3/0x190 [ 2365.969130][ C2] ? hrtimer_interrupt+0x30e/0x770 [ 2365.969393][ C2] ? hrtimer_interrupt+0x31a/0x770 [ 2365.969656][ C2] __do_softirq+0x1b9/0x7ff [ 2365.969899][ C2] ? tcp_recvmsg+0xf8/0x4f0 [ 2365.970141][ C2] do_softirq+0x4d/0xa0 [ 2365.970367][ C2] [ 2365.970522][ C2] [ 2365.970687][ C2] __local_bh_enable_ip+0xf6/0x120 [ 2365.970971][ C2] tcp_recvmsg+0xf8/0x4f0 [ 2365.971213][ C2] ? __pfx_tcp_recvmsg+0x10/0x10 [ 2365.971474][ C2] ? core_sys_select+0x620/0x710 [ 2365.971745][ C2] ? __pfx_core_sys_select+0x10/0x10 [ 2365.972037][ C2] inet_recvmsg+0xf9/0x2c0 [ 2365.972291][ C2] ? __pfx_inet_recvmsg+0x10/0x10 [ 2365.972554][ C2] ? __fget_light+0x54/0x1e0 [ 2365.972797][ C2] ? sockfd_lookup_light+0x1a/0x160 [ 2365.973080][ C2] __sys_recvfrom+0x2fb/0x3b0 [ 2365.973329][ C2] ? __pfx___sys_recvfrom+0x10/0x10 [ 2365.973614][ C2] ? __pfx___lock_release+0x10/0x10 [ 2365.973914][ C2] ? do_pselect.constprop.0+0x12b/0x1e0 [ 2365.974224][ C2] ? __pfx_do_pselect.constprop.0+0x10/0x10 [ 2365.974538][ C2] ? restore_fpregs_from_fpstate+0x99/0x160 [ 2365.974856][ C2] ? __pfx_restore_fpregs_from_fpstate+0x10/0x10 [ 2365.975200][ C2] __x64_sys_recvfrom+0xe0/0x1c0 [ 2365.975482][ C2] ? lockdep_hardirqs_on_prepare.part.0+0x1b1/0x370 [ 2365.975828][ C2] do_syscall_64+0xc9/0x1e0 [ 2365.976089][ C2] entry_SYSCALL_64_after_hwframe+0x6f/0x77 [ 2365.976426][ C2] RIP: 0033:0x7f434bb8c4c0 [ 2365.976656][ C2] 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 [ 2365.977692][ C2] RSP: 002b:00007ffe37a3a678 EFLAGS: 00000246 ORIG_RAX: 000000000000002d [ 2365.978129][ C2] RAX: ffffffffffffffda RBX: 000056224e8c7a20 RCX: 00007f434bb8c4c0 [ 2365.978548][ C2] RDX: 0000000000002000 RSI: 00007ffe37a3a700 RDI: 0000000000000008 [ 2365.978987][ C2] RBP: 00007ffe37a3a700 R08: 0000000000000000 R09: 0000000000000000 [ 2365.979414][ C2] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000008 [ 2365.979825][ C2] R13: 000056224e8c7a20 R14: 0000000000000000 R15: 00007ffe37a3a6fc [ 2365.980285][ C2] [ 2366.860524][ T8102] ncat (8102) used greatest stack depth: 21240 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__->