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 0 # 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 ] [ 2047.042664][ T7289] ping (7289) used greatest stack depth: 23352 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 2050.895164][ C1] [ 2050.895327][ C1] ============================================ [ 2050.895670][ C1] WARNING: possible recursive locking detected [ 2050.896038][ C1] 6.8.0-rc1-virtme #1 Not tainted [ 2050.896335][ C1] -------------------------------------------- [ 2050.896679][ C1] ncat/7337 is trying to acquire lock: [ 2050.896999][ C1] ffff8880111c0e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2159/0x29b0 [ 2050.897529][ C1] [ 2050.897529][ C1] but task is already holding lock: [ 2050.897936][ C1] ffff8880111c1b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2159/0x29b0 [ 2050.898447][ C1] [ 2050.898447][ C1] other info that might help us debug this: [ 2050.898888][ C1] Possible unsafe locking scenario: [ 2050.898888][ C1] [ 2050.899322][ C1] CPU0 [ 2050.899509][ C1] ---- [ 2050.899713][ C1] lock(slock-AF_INET/1); [ 2050.899985][ C1] lock(slock-AF_INET/1); [ 2050.900250][ C1] [ 2050.900250][ C1] *** DEADLOCK *** [ 2050.900250][ C1] [ 2050.900703][ C1] May be due to missing lock nesting notation [ 2050.900703][ C1] [ 2050.901165][ C1] 8 locks held by ncat/7337: [ 2050.901441][ C1] #0: ffffffff95d447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 2050.901987][ C1] #1: ffffffff95d447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2050.902568][ C1] #2: ffff8880111c1b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2159/0x29b0 [ 2050.903108][ C1] #3: ffffffff95d447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 2050.903646][ C1] #4: ffffffff95d447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 2050.904200][ C1] #5: ffffffff95d44780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1c1/0x1ca0 [ 2050.904766][ C1] #6: ffffffff95d447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 2050.905340][ C1] #7: ffffffff95d447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2050.905927][ C1] [ 2050.905927][ C1] stack backtrace: [ 2050.906257][ C1] CPU: 1 PID: 7337 Comm: ncat Not tainted 6.8.0-rc1-virtme #1 [ 2050.906689][ C1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 2050.907368][ C1] Call Trace: [ 2050.907578][ C1] [ 2050.907743][ C1] dump_stack_lvl+0x64/0xb0 [ 2050.908014][ C1] validate_chain+0x525/0xa00 [ 2050.908296][ C1] ? __pfx_validate_chain+0x10/0x10 [ 2050.908587][ C1] ? hlock_class+0x4e/0x130 [ 2050.908854][ C1] ? mark_lock+0x38/0x3e0 [ 2050.909114][ C1] __lock_acquire+0xb67/0x1610 [ 2050.909400][ C1] ? lock_downgrade+0x90/0x110 [ 2050.909675][ C1] lock_acquire.part.0+0xe5/0x330 [ 2050.909972][ C1] ? tcp_v4_rcv+0x2159/0x29b0 [ 2050.910252][ C1] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2050.910568][ C1] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 2050.910895][ C1] ? lock_acquire+0x1c1/0x220 [ 2050.911178][ C1] ? tcp_v4_rcv+0x2159/0x29b0 [ 2050.911465][ C1] _raw_spin_lock_nested+0x33/0x80 [ 2050.911759][ C1] ? tcp_v4_rcv+0x2159/0x29b0 [ 2050.912039][ C1] tcp_v4_rcv+0x2159/0x29b0 [ 2050.912316][ C1] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2050.912607][ C1] ? __pfx_raw_v4_input+0x10/0x10 [ 2050.912908][ C1] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2050.913258][ C1] ip_protocol_deliver_rcu+0x93/0x360 [ 2050.913567][ C1] ip_local_deliver_finish+0x2ae/0x450 [ 2050.913887][ C1] ip_local_deliver+0x19d/0x480 [ 2050.914188][ C1] ? __pfx_ip_local_deliver+0x10/0x10 [ 2050.914511][ C1] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2050.914867][ C1] ip_rcv+0x564/0x740 [ 2050.915104][ C1] ? handle_irq_event+0x112/0x1c0 [ 2050.915406][ C1] ? __pfx_ip_rcv+0x10/0x10 [ 2050.915659][ C1] ? mark_held_locks+0xa5/0xf0 [ 2050.915938][ C1] ? _raw_spin_unlock+0x23/0x40 [ 2050.916216][ C1] ? __pfx_ip_rcv+0x10/0x10 [ 2050.916485][ C1] __netif_receive_skb_one_core+0x166/0x1b0 [ 2050.916816][ C1] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2050.917197][ C1] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2050.917575][ C1] netif_receive_skb_internal+0xb0/0x300 [ 2050.917890][ C1] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 2050.918247][ C1] ? __copy_skb_header+0xaf/0x490 [ 2050.918543][ C1] ? __skb_clone+0x57a/0x760 [ 2050.918816][ C1] netif_receive_skb+0x55/0x280 [ 2050.919109][ C1] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 2050.919467][ C1] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 2050.919836][ C1] ? hlock_class+0x4e/0x130 [ 2050.920103][ C1] tcf_mirred_act+0x338/0x780 [act_mirred] [ 2050.920446][ C1] tcf_action_exec.part.0+0x115/0x3d0 [ 2050.920753][ C1] fl_classify+0x4dc/0x650 [cls_flower] [ 2050.921077][ C1] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 2050.921435][ C1] ? hlock_class+0x4e/0x130 [ 2050.921694][ C1] ? hlock_class+0x4e/0x130 [ 2050.921960][ C1] ? validate_chain+0x130/0xa00 [ 2050.922252][ C1] ? mark_lock+0x38/0x3e0 [ 2050.922499][ C1] ? __pfx_validate_chain+0x10/0x10 [ 2050.922802][ C1] ? hlock_class+0x4e/0x130 [ 2050.923078][ C1] ? hlock_class+0x4e/0x130 [ 2050.923349][ C1] ? validate_chain+0x130/0xa00 [ 2050.923625][ C1] ? __lock_acquire+0xb67/0x1610 [ 2050.923919][ C1] ? __pfx_validate_chain+0x10/0x10 [ 2050.924218][ C1] ? hlock_class+0x4e/0x130 [ 2050.924488][ C1] ? mark_lock+0x38/0x3e0 [ 2050.924737][ C1] ? __lock_acquire+0xb67/0x1610 [ 2050.925029][ C1] __tcf_classify+0x32c/0x7d0 [ 2050.925310][ C1] tcf_classify+0x283/0x930 [ 2050.925563][ C1] ? __pfx_tcf_classify+0x10/0x10 [ 2050.925855][ C1] ? lock_acquire.part.0+0xe5/0x330 [ 2050.926168][ C1] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2050.926470][ C1] tc_run+0x2e4/0x5d0 [ 2050.926699][ C1] ? handle_irq_event+0x112/0x1c0 [ 2050.926995][ C1] ? __pfx_tc_run+0x10/0x10 [ 2050.927267][ C1] ? hlock_class+0x4e/0x130 [ 2050.927523][ C1] ? lock_acquire+0x1c1/0x220 [ 2050.927804][ C1] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2050.928113][ C1] __dev_queue_xmit+0x8eb/0x1ca0 [ 2050.928408][ C1] ? __pfx___dev_queue_xmit+0x10/0x10 [ 2050.928711][ C1] ? neigh_hh_output+0xd2/0x590 [ 2050.929001][ C1] ip_finish_output2+0x786/0x18e0 [ 2050.929300][ C1] ? __pfx_ip_finish_output2+0x10/0x10 [ 2050.929607][ C1] ? __ip_finish_output+0x10f/0x770 [ 2050.929907][ C1] ip_output+0x16b/0x4f0 [ 2050.930163][ C1] ? __pfx_ip_output+0x10/0x10 [ 2050.930447][ C1] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2050.930758][ C1] ? __do_softirq+0x1bc/0x7ff [ 2050.931039][ C1] ? ip_local_out+0x114/0x3b0 [ 2050.931317][ C1] __ip_queue_xmit+0x672/0x1910 [ 2050.931592][ C1] ? __create_object+0x5e/0xb0 [ 2050.931879][ C1] __tcp_transmit_skb+0x22b1/0x2d20 [ 2050.932187][ C1] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 2050.932510][ C1] ? __tcp_send_ack.part.0+0x66/0x6e0 [ 2050.932810][ C1] tcp_rcv_state_process+0x862/0x1fd0 [ 2050.933122][ C1] ? tcp_v4_rcv+0x2159/0x29b0 [ 2050.933400][ C1] ? hlock_class+0x4e/0x130 [ 2050.933651][ C1] ? __lock_acquired+0x2cf/0x6b0 [ 2050.933945][ C1] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 2050.934268][ C1] ? __pfx___lock_acquired+0x10/0x10 [ 2050.934565][ C1] tcp_v4_do_rcv+0x154/0x850 [ 2050.934836][ C1] tcp_v4_rcv+0x235a/0x29b0 [ 2050.935116][ C1] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2050.935406][ C1] ? __pfx_raw_v4_input+0x10/0x10 [ 2050.935692][ C1] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2050.936022][ C1] ip_protocol_deliver_rcu+0x93/0x360 [ 2050.936337][ C1] ip_local_deliver_finish+0x2ae/0x450 [ 2050.936643][ C1] ip_local_deliver+0x19d/0x480 [ 2050.936931][ C1] ? __pfx_ip_local_deliver+0x10/0x10 [ 2050.937250][ C1] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2050.937622][ C1] ip_rcv+0x564/0x740 [ 2050.937858][ C1] ? __pfx_ip_rcv+0x10/0x10 [ 2050.938127][ C1] ? lock_acquire.part.0+0xe5/0x330 [ 2050.938428][ C1] ? process_backlog+0x1ed/0x5e0 [ 2050.938708][ C1] ? __pfx_ip_rcv+0x10/0x10 [ 2050.938976][ C1] __netif_receive_skb_one_core+0x166/0x1b0 [ 2050.939324][ C1] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2050.939683][ C1] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 2050.940020][ C1] ? lock_acquire+0x1c1/0x220 [ 2050.940279][ C1] ? process_backlog+0x1ed/0x5e0 [ 2050.940554][ C1] process_backlog+0xd3/0x5e0 [ 2050.940848][ C1] __napi_poll.constprop.0+0xa5/0x450 [ 2050.941151][ C1] net_rx_action+0x440/0xb40 [ 2050.941434][ C1] ? __pfx_net_rx_action+0x10/0x10 [ 2050.941716][ C1] ? handle_irq_event+0x112/0x1c0 [ 2050.942021][ C1] __do_softirq+0x1bc/0x7ff [ 2050.942304][ C1] ? tcp_recvmsg+0xf8/0x4f0 [ 2050.942561][ C1] do_softirq+0x4d/0xa0 [ 2050.942816][ C1] [ 2050.942985][ C1] [ 2050.943180][ C1] __local_bh_enable_ip+0xf6/0x120 [ 2050.943482][ C1] tcp_recvmsg+0xf8/0x4f0 [ 2050.943726][ C1] ? __pfx_tcp_recvmsg+0x10/0x10 [ 2050.944020][ C1] ? core_sys_select+0x620/0x710 [ 2050.944299][ C1] ? __pfx_core_sys_select+0x10/0x10 [ 2050.944618][ C1] inet_recvmsg+0xf9/0x2c0 [ 2050.944887][ C1] ? __pfx_inet_recvmsg+0x10/0x10 [ 2050.945184][ C1] ? __fget_light+0x54/0x1e0 [ 2050.945462][ C1] ? sockfd_lookup_light+0x1a/0x160 [ 2050.945754][ C1] __sys_recvfrom+0x2fb/0x3b0 [ 2050.946029][ C1] ? __pfx___sys_recvfrom+0x10/0x10 [ 2050.946345][ C1] ? do_pselect.constprop.0+0x12b/0x1e0 [ 2050.946673][ C1] ? lockdep_hardirqs_on_prepare.part.0+0x1b1/0x370 [ 2050.947063][ C1] __x64_sys_recvfrom+0xe0/0x1c0 [ 2050.947355][ C1] ? lockdep_hardirqs_on_prepare.part.0+0x1b1/0x370 [ 2050.947722][ C1] do_syscall_64+0xcc/0x1e0 [ 2050.947992][ C1] entry_SYSCALL_64_after_hwframe+0x6f/0x77 [ 2050.948336][ C1] RIP: 0033:0x7f84847ab4c0 [ 2050.948589][ C1] 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 [ 2050.949675][ C1] RSP: 002b:00007ffddc9a7498 EFLAGS: 00000246 ORIG_RAX: 000000000000002d [ 2050.950143][ C1] RAX: ffffffffffffffda RBX: 000055a4e25caa20 RCX: 00007f84847ab4c0 [ 2050.950598][ C1] RDX: 0000000000002000 RSI: 00007ffddc9a7520 RDI: 0000000000000008 [ 2050.951036][ C1] RBP: 00007ffddc9a7520 R08: 0000000000000000 R09: 0000000000000000 [ 2050.951497][ C1] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000008 [ 2050.951934][ C1] R13: 000055a4e25caa20 R14: 0000000000000000 R15: 00007ffddc9a751c [ 2050.952392][ C1] [ 2051.077060][ T7338] ncat (7338) used greatest stack depth: 20976 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__->