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 [ 38.290658][ T330] GACT probability NOT on # TEST: gact drop and ok (skip_hw) [ OK ] [ 43.080921][ T392] 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 ] # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 63.083908][ C0] [ 63.084152][ C0] ============================================ [ 63.084631][ C0] WARNING: possible recursive locking detected [ 63.085102][ C0] 6.8.0-rc2-virtme #1 Not tainted [ 63.085512][ C0] -------------------------------------------- [ 63.085976][ C0] ksoftirqd/0/16 is trying to acquire lock: [ 63.086408][ C0] ffff888008279b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x221e/0x2ac0 [ 63.087121][ C0] [ 63.087121][ C0] but task is already holding lock: [ 63.087687][ C0] ffff888008278e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x221e/0x2ac0 [ 63.088377][ C0] [ 63.088377][ C0] other info that might help us debug this: [ 63.088984][ C0] Possible unsafe locking scenario: [ 63.088984][ C0] [ 63.089543][ C0] CPU0 [ 63.089796][ C0] ---- [ 63.090050][ C0] lock(slock-AF_INET/1); [ 63.090387][ C0] lock(slock-AF_INET/1); [ 63.090729][ C0] [ 63.090729][ C0] *** DEADLOCK *** [ 63.090729][ C0] [ 63.091325][ C0] May be due to missing lock nesting notation [ 63.091325][ C0] [ 63.091948][ C0] 8 locks held by ksoftirqd/0/16: [ 63.092328][ C0] #0: ffffffffa61447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 63.093029][ C0] #1: ffffffffa61447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x480 [ 63.093787][ C0] #2: ffff888008278e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x221e/0x2ac0 [ 63.094504][ C0] #3: ffffffffa61447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 63.095230][ C0] #4: ffffffffa61447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 63.095955][ C0] #5: ffffffffa6144780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1da/0x17e0 [ 63.096699][ C0] #6: ffffffffa61447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 63.097465][ C0] #7: ffffffffa61447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x480 [ 63.098229][ C0] [ 63.098229][ C0] stack backtrace: [ 63.098675][ C0] CPU: 0 PID: 16 Comm: ksoftirqd/0 Not tainted 6.8.0-rc2-virtme #1 [ 63.099278][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 63.100176][ C0] Call Trace: [ 63.100442][ C0] [ 63.100671][ C0] dump_stack_lvl+0x64/0xb0 [ 63.101018][ C0] validate_chain+0x525/0xa00 [ 63.101384][ C0] ? __pfx_validate_chain+0x10/0x10 [ 63.101783][ C0] ? hlock_class+0x4e/0x130 [ 63.102132][ C0] ? mark_lock+0x38/0x3e0 [ 63.102478][ C0] __lock_acquire+0xb67/0x1610 [ 63.102845][ C0] ? lock_downgrade+0xa0/0x110 [ 63.103215][ C0] ? mark_lock+0x38/0x3e0 [ 63.103548][ C0] lock_acquire.part.0+0xe5/0x330 [ 63.103938][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 63.104303][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 63.104723][ C0] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 63.105140][ C0] ? lock_acquire+0x1c1/0x220 [ 63.105507][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 63.105866][ C0] _raw_spin_lock_nested+0x33/0x80 [ 63.106261][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 63.106628][ C0] tcp_v4_rcv+0x221e/0x2ac0 [ 63.106988][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 63.107363][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 63.107756][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 63.108189][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 63.108594][ C0] ip_local_deliver_finish+0x2ae/0x480 [ 63.109017][ C0] ip_local_deliver+0x19d/0x480 [ 63.109397][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 63.109798][ C0] ? tcp_v4_early_demux+0x59a/0x9d0 [ 63.110217][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 63.110711][ C0] ip_rcv+0x564/0x740 [ 63.111022][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 63.111358][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 63.111742][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 63.112158][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 63.112486][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 63.112921][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 63.113393][ C0] ? mark_held_locks+0xa5/0xf0 [ 63.113755][ C0] ? lock_acquire+0x1c1/0x220 [ 63.114116][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 63.114565][ C0] netif_receive_skb_internal+0xb0/0x300 [ 63.115017][ C0] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 63.115481][ C0] ? __copy_skb_header+0xaf/0x490 [ 63.115858][ C0] ? __skb_clone+0x57a/0x760 [ 63.116192][ C0] netif_receive_skb+0x55/0x280 [ 63.116554][ C0] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 63.117011][ C0] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 63.117508][ C0] tcf_mirred_act+0x338/0x780 [act_mirred] [ 63.117954][ C0] tcf_action_exec.part.0+0x112/0x3d0 [ 63.118376][ C0] fl_classify+0x4dc/0x650 [cls_flower] [ 63.118832][ C0] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 63.119302][ C0] ? __pfx_check_irq_usage+0x10/0x10 [ 63.119693][ C0] ? __bfs+0x247/0x650 [ 63.120005][ C0] ? __pfx_hlock_conflict+0x10/0x10 [ 63.120397][ C0] ? check_path.constprop.0+0x24/0x50 [ 63.120795][ C0] ? check_noncircular+0x14e/0x3e0 [ 63.121170][ C0] ? hlock_class+0x4e/0x130 [ 63.121506][ C0] ? __pfx_check_noncircular+0x10/0x10 [ 63.121915][ C0] ? __pfx_hlock_conflict+0x10/0x10 [ 63.122319][ C0] ? __pfx_validate_chain+0x10/0x10 [ 63.122729][ C0] ? hlock_class+0x4e/0x130 [ 63.123049][ C0] ? hlock_class+0x4e/0x130 [ 63.123386][ C0] ? check_prev_add+0x773/0xce0 [ 63.123762][ C0] __tcf_classify+0x329/0x7d0 [ 63.124121][ C0] tcf_classify+0x283/0x930 [ 63.124472][ C0] ? __pfx_tcf_classify+0x10/0x10 [ 63.124855][ C0] ? __dev_queue_xmit+0x1da/0x17e0 [ 63.125258][ C0] ? __dev_queue_xmit+0x1da/0x17e0 [ 63.125652][ C0] tc_run+0x2e4/0x5d0 [ 63.125970][ C0] ? __pfx_tc_run+0x10/0x10 [ 63.126333][ C0] ? lock_acquire+0x1c1/0x220 [ 63.126707][ C0] ? __dev_queue_xmit+0x1da/0x17e0 [ 63.127218][ C0] __dev_queue_xmit+0x686/0x17e0 [ 63.127611][ C0] ? mark_held_locks+0xa5/0xf0 [ 63.127967][ C0] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 63.128472][ C0] ? __pfx___dev_queue_xmit+0x10/0x10 [ 63.128892][ C0] ? __pfx_vrf_output_direct_finish+0x1/0x10 [vrf] [ 63.129399][ C0] ip_finish_output2+0x786/0x18e0 [ 63.129794][ C0] ? __pfx_ip_finish_output2+0x10/0x10 [ 63.130219][ C0] ? __ip_finish_output+0x3dd/0x770 [ 63.130622][ C0] ip_output+0x16b/0x4f0 [ 63.130956][ C0] ? __pfx_ip_output+0x10/0x10 [ 63.131299][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 63.131720][ C0] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 63.132217][ C0] ? ip_local_out+0x114/0x3b0 [ 63.132585][ C0] __ip_queue_xmit+0x672/0x1910 [ 63.132967][ C0] ? __skb_clone+0x57a/0x760 [ 63.133318][ C0] __tcp_transmit_skb+0x22b1/0x2d20 [ 63.133716][ C0] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 63.134138][ C0] ? tcp_small_queue_check.isra.0+0xe9/0x380 [ 63.134607][ C0] tcp_write_xmit+0x94f/0x1cb0 [ 63.134986][ C0] ? ipv4_mtu+0x37/0x360 [ 63.135314][ C0] ? __pfx_tcp_write_xmit+0x10/0x10 [ 63.135705][ C0] ? __pfx_tcp_current_mss+0x10/0x10 [ 63.136123][ C0] __tcp_push_pending_frames+0x96/0x320 [ 63.136561][ C0] tcp_rcv_state_process+0x786/0x1fe0 [ 63.136978][ C0] ? tcp_v4_rcv+0x221e/0x2ac0 [ 63.137345][ C0] ? hlock_class+0x4e/0x130 [ 63.137684][ C0] ? __lock_acquired+0x18a/0x6b0 [ 63.137953][ C0] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 63.138268][ C0] ? __pfx___lock_acquired+0x10/0x10 [ 63.138689][ C0] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 63.139079][ C0] tcp_v4_do_rcv+0x154/0x860 [ 63.139340][ C0] tcp_v4_rcv+0x2449/0x2ac0 [ 63.139584][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 63.139844][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 63.140101][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 63.140402][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 63.140692][ C0] ip_local_deliver_finish+0x2ae/0x480 [ 63.141080][ C0] ip_local_deliver+0x19d/0x480 [ 63.141455][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 63.141875][ C0] ? tcp_v4_early_demux+0x59a/0x9d0 [ 63.142275][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 63.142757][ C0] ip_rcv+0x564/0x740 [ 63.143077][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 63.143429][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 63.143813][ C0] ? process_backlog+0x1ed/0x5e0 [ 63.144189][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 63.144535][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 63.144981][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 63.145476][ C0] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 63.145923][ C0] ? lock_acquire+0x1c1/0x220 [ 63.146297][ C0] ? process_backlog+0x1ed/0x5e0 [ 63.146673][ C0] process_backlog+0xd3/0x5e0 [ 63.147031][ C0] __napi_poll.constprop.0+0xa2/0x460 [ 63.147437][ C0] net_rx_action+0x440/0xb40 [ 63.147785][ C0] ? __pfx_net_rx_action+0x10/0x10 [ 63.148181][ C0] ? __pfx___schedule+0x10/0x10 [ 63.148544][ C0] ? __pfx___lock_release+0x10/0x10 [ 63.148946][ C0] __do_softirq+0x1b9/0x7ff [ 63.149294][ C0] ? __pfx_run_ksoftirqd+0x10/0x10 [ 63.149700][ C0] run_ksoftirqd+0x2e/0x60 [ 63.150054][ C0] smpboot_thread_fn+0x30b/0x840 [ 63.150433][ C0] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 63.150837][ C0] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 63.151246][ C0] kthread+0x28f/0x360 [ 63.151564][ C0] ? __pfx_kthread+0x10/0x10 [ 63.151917][ C0] ret_from_fork+0x31/0x70 [ 63.152260][ C0] ? __pfx_kthread+0x10/0x10 [ 63.152607][ C0] ret_from_fork_asm+0x1b/0x30 [ 63.152966][ C0] [ 85.929802][ T551] ncat (551) used greatest stack depth: 21312 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__->