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 ] [ 2362.655277][ T7554] ping (7554) used greatest stack depth: 23352 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 2371.276724][ C3] [ 2371.276899][ C3] ============================================ [ 2371.277228][ C3] WARNING: possible recursive locking detected [ 2371.277536][ C3] 6.8.0-rc2-virtme #1 Not tainted [ 2371.277796][ C3] -------------------------------------------- [ 2371.278118][ C3] ksoftirqd/3/32 is trying to acquire lock: [ 2371.278432][ C3] ffff888009661b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2371.278934][ C3] [ 2371.278934][ C3] but task is already holding lock: [ 2371.279305][ C3] ffff888009660e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2371.279773][ C3] [ 2371.279773][ C3] other info that might help us debug this: [ 2371.280182][ C3] Possible unsafe locking scenario: [ 2371.280182][ C3] [ 2371.280559][ C3] CPU0 [ 2371.280728][ C3] ---- [ 2371.280908][ C3] lock(slock-AF_INET/1); [ 2371.281167][ C3] lock(slock-AF_INET/1); [ 2371.281400][ C3] [ 2371.281400][ C3] *** DEADLOCK *** [ 2371.281400][ C3] [ 2371.281812][ C3] May be due to missing lock nesting notation [ 2371.281812][ C3] [ 2371.282259][ C3] 8 locks held by ksoftirqd/3/32: [ 2371.282510][ C3] #0: ffffffffbbb447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 2371.282989][ C3] #1: ffffffffbbb447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2371.283514][ C3] #2: ffff888009660e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2371.283997][ C3] #3: ffffffffbbb447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 2371.284485][ C3] #4: ffffffffbbb447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 2371.284977][ C3] #5: ffffffffbbb44780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1c1/0x1ca0 [ 2371.285501][ C3] #6: ffffffffbbb447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 2371.286022][ C3] #7: ffffffffbbb447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2371.286533][ C3] [ 2371.286533][ C3] stack backtrace: [ 2371.286852][ C3] CPU: 3 PID: 32 Comm: ksoftirqd/3 Not tainted 6.8.0-rc2-virtme #1 [ 2371.287257][ C3] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 2371.287886][ C3] Call Trace: [ 2371.288059][ C3] [ 2371.288216][ C3] dump_stack_lvl+0x64/0xb0 [ 2371.288476][ C3] validate_chain+0x525/0xa00 [ 2371.288737][ C3] ? __pfx_validate_chain+0x10/0x10 [ 2371.289014][ C3] ? hlock_class+0x4e/0x130 [ 2371.289250][ C3] ? mark_lock+0x38/0x3e0 [ 2371.289482][ C3] __lock_acquire+0xb67/0x1610 [ 2371.289750][ C3] ? lock_downgrade+0xa0/0x110 [ 2371.290000][ C3] ? mark_lock+0x38/0x3e0 [ 2371.290231][ C3] lock_acquire.part.0+0xe5/0x330 [ 2371.290509][ C3] ? tcp_v4_rcv+0x2161/0x29c0 [ 2371.290754][ C3] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2371.291043][ C3] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 2371.291346][ C3] ? lock_acquire+0x1c1/0x220 [ 2371.291591][ C3] ? tcp_v4_rcv+0x2161/0x29c0 [ 2371.291840][ C3] _raw_spin_lock_nested+0x33/0x80 [ 2371.292117][ C3] ? tcp_v4_rcv+0x2161/0x29c0 [ 2371.292352][ C3] tcp_v4_rcv+0x2161/0x29c0 [ 2371.292589][ C3] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2371.292877][ C3] ? __pfx_raw_v4_input+0x10/0x10 [ 2371.293151][ C3] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2371.293456][ C3] ip_protocol_deliver_rcu+0x93/0x360 [ 2371.293750][ C3] ip_local_deliver_finish+0x2ae/0x450 [ 2371.294060][ C3] ip_local_deliver+0x19d/0x480 [ 2371.294315][ C3] ? __pfx_ip_local_deliver+0x10/0x10 [ 2371.294597][ C3] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2371.294957][ C3] ip_rcv+0x564/0x740 [ 2371.295167][ C3] ? __pfx_ip_rcv+0x10/0x10 [ 2371.295409][ C3] ? lock_acquire.part.0+0xe5/0x330 [ 2371.295691][ C3] ? netif_receive_skb_internal+0x84/0x300 [ 2371.295991][ C3] ? __pfx_ip_rcv+0x10/0x10 [ 2371.296230][ C3] __netif_receive_skb_one_core+0x166/0x1b0 [ 2371.296553][ C3] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2371.296878][ C3] ? mark_held_locks+0xa5/0xf0 [ 2371.297132][ C3] ? lock_acquire+0x1c1/0x220 [ 2371.297386][ C3] ? netif_receive_skb_internal+0x84/0x300 [ 2371.297684][ C3] netif_receive_skb_internal+0xb0/0x300 [ 2371.297977][ C3] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 2371.298315][ C3] ? __copy_skb_header+0xaf/0x490 [ 2371.298579][ C3] ? __skb_clone+0x57a/0x760 [ 2371.298824][ C3] netif_receive_skb+0x55/0x280 [ 2371.299094][ C3] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 2371.299415][ C3] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 2371.299777][ C3] ? unwind_next_frame+0x1cc/0x1d10 [ 2371.300051][ C3] tcf_mirred_act+0x338/0x780 [act_mirred] [ 2371.300373][ C3] tcf_action_exec.part.0+0x112/0x3d0 [ 2371.300659][ C3] fl_classify+0x4dc/0x650 [cls_flower] [ 2371.300972][ C3] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 2371.301294][ C3] ? __pfx_usage_match+0x10/0x10 [ 2371.301543][ C3] ? check_irq_usage+0x27e/0x850 [ 2371.301807][ C3] ? validate_chain+0x130/0xa00 [ 2371.302071][ C3] ? __pfx_check_irq_usage+0x10/0x10 [ 2371.302334][ C3] ? __bfs+0x247/0x650 [ 2371.302549][ C3] ? __pfx_hlock_conflict+0x10/0x10 [ 2371.302821][ C3] ? __bfs+0x247/0x650 [ 2371.303051][ C3] ? __pfx_usage_match+0x10/0x10 [ 2371.303300][ C3] ? check_path.constprop.0+0x24/0x50 [ 2371.303574][ C3] ? check_noncircular+0x14e/0x3e0 [ 2371.303842][ C3] ? __pfx_check_noncircular+0x10/0x10 [ 2371.304140][ C3] __tcf_classify+0x329/0x7d0 [ 2371.304389][ C3] tcf_classify+0x283/0x930 [ 2371.304625][ C3] ? __pfx_tcf_classify+0x10/0x10 [ 2371.304907][ C3] ? lock_acquire.part.0+0xe5/0x330 [ 2371.305177][ C3] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2371.305445][ C3] tc_run+0x2e4/0x5d0 [ 2371.305671][ C3] ? __pfx_tc_run+0x10/0x10 [ 2371.305907][ C3] ? lock_acquire+0x1c1/0x220 [ 2371.306151][ C3] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2371.306430][ C3] __dev_queue_xmit+0x8eb/0x1ca0 [ 2371.306684][ C3] ? hlock_class+0x4e/0x130 [ 2371.306915][ C3] ? mark_lock+0x38/0x3e0 [ 2371.307161][ C3] ? __pfx___dev_queue_xmit+0x10/0x10 [ 2371.307440][ C3] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 2371.307774][ C3] ? neigh_hh_output+0x348/0x590 [ 2371.308049][ C3] ip_finish_output2+0x786/0x18e0 [ 2371.308318][ C3] ? __pfx_ip_finish_output2+0x10/0x10 [ 2371.308610][ C3] ? __ip_finish_output+0x3dd/0x770 [ 2371.308893][ C3] ip_output+0x16b/0x4f0 [ 2371.309113][ C3] ? __pfx_ip_output+0x10/0x10 [ 2371.309387][ C3] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2371.309676][ C3] ? ip_local_out+0x114/0x3b0 [ 2371.309919][ C3] __ip_queue_xmit+0x672/0x1910 [ 2371.310200][ C3] ? __skb_clone+0x57a/0x760 [ 2371.310448][ C3] __tcp_transmit_skb+0x22b1/0x2d20 [ 2371.310727][ C3] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 2371.311037][ C3] ? tcp_small_queue_check.isra.0+0xe9/0x380 [ 2371.311353][ C3] tcp_write_xmit+0xe42/0x24c0 [ 2371.311619][ C3] ? ipv4_mtu+0x37/0x360 [ 2371.311860][ C3] ? __pfx_tcp_write_xmit+0x10/0x10 [ 2371.312127][ C3] ? __pfx_tcp_current_mss+0x10/0x10 [ 2371.312406][ C3] __tcp_push_pending_frames+0x96/0x320 [ 2371.312703][ C3] tcp_rcv_state_process+0x862/0x21c0 [ 2371.312979][ C3] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 2371.313276][ C3] ? find_held_lock+0x33/0x120 [ 2371.313544][ C3] ? tcp_v4_rcv+0x2161/0x29c0 [ 2371.313791][ C3] ? hlock_class+0x4e/0x130 [ 2371.314035][ C3] tcp_v4_do_rcv+0x1ac/0x8e0 [ 2371.314311][ C3] ? __pfx_tcp_v4_do_rcv+0x10/0x10 [ 2371.314578][ C3] tcp_v4_rcv+0x2362/0x29c0 [ 2371.314815][ C3] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2371.315087][ C3] ? __pfx_raw_v4_input+0x10/0x10 [ 2371.315351][ C3] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2371.315644][ C3] ip_protocol_deliver_rcu+0x93/0x360 [ 2371.315935][ C3] ip_local_deliver_finish+0x2ae/0x450 [ 2371.316213][ C3] ip_local_deliver+0x19d/0x480 [ 2371.316471][ C3] ? __pfx_ip_local_deliver+0x10/0x10 [ 2371.316766][ C3] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2371.317089][ C3] ip_rcv+0x564/0x740 [ 2371.317296][ C3] ? __pfx_ip_rcv+0x10/0x10 [ 2371.317554][ C3] ? lock_acquire.part.0+0xe5/0x330 [ 2371.317819][ C3] ? process_backlog+0x1ed/0x5e0 [ 2371.318081][ C3] ? __pfx_ip_rcv+0x10/0x10 [ 2371.318340][ C3] __netif_receive_skb_one_core+0x166/0x1b0 [ 2371.318646][ C3] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2371.318980][ C3] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 2371.319291][ C3] ? lock_acquire+0x1c1/0x220 [ 2371.319539][ C3] ? process_backlog+0x1ed/0x5e0 [ 2371.319799][ C3] process_backlog+0xd3/0x5e0 [ 2371.320072][ C3] __napi_poll.constprop.0+0xa2/0x450 [ 2371.320358][ C3] net_rx_action+0x440/0xb40 [ 2371.320603][ C3] ? __pfx_net_rx_action+0x10/0x10 [ 2371.320864][ C3] ? __pfx___schedule+0x10/0x10 [ 2371.321137][ C3] ? __pfx___lock_release+0x10/0x10 [ 2371.321405][ C3] __do_softirq+0x1b9/0x7ff [ 2371.321643][ C3] ? __pfx_run_ksoftirqd+0x10/0x10 [ 2371.321921][ C3] run_ksoftirqd+0x2e/0x60 [ 2371.322151][ C3] smpboot_thread_fn+0x30b/0x840 [ 2371.322406][ C3] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 2371.322700][ C3] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 2371.322978][ C3] kthread+0x28f/0x360 [ 2371.323190][ C3] ? __pfx_kthread+0x10/0x10 [ 2371.323447][ C3] ret_from_fork+0x31/0x70 [ 2371.323682][ C3] ? __pfx_kthread+0x10/0x10 [ 2371.323925][ C3] ret_from_fork_asm+0x1b/0x30 [ 2371.324194][ C3] [ 2390.472858][ T7598] ncat (7598) used greatest stack depth: 20528 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__->