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 [ 2171.990623][ T7667] veth1: left promiscuous mode # 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 ] # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 2202.317588][ C2] [ 2202.317752][ C2] ============================================ [ 2202.318081][ C2] WARNING: possible recursive locking detected [ 2202.318387][ C2] 6.8.0-rc2-virtme #1 Not tainted [ 2202.318643][ C2] -------------------------------------------- [ 2202.318955][ C2] ksoftirqd/2/27 is trying to acquire lock: [ 2202.319269][ C2] ffff888011c41b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2202.319738][ C2] [ 2202.319738][ C2] but task is already holding lock: [ 2202.320115][ C2] ffff888011c40e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2202.320571][ C2] [ 2202.320571][ C2] other info that might help us debug this: [ 2202.320981][ C2] Possible unsafe locking scenario: [ 2202.320981][ C2] [ 2202.321354][ C2] CPU0 [ 2202.321526][ C2] ---- [ 2202.321714][ C2] lock(slock-AF_INET/1); [ 2202.321951][ C2] lock(slock-AF_INET/1); [ 2202.322176][ C2] [ 2202.322176][ C2] *** DEADLOCK *** [ 2202.322176][ C2] [ 2202.322586][ C2] May be due to missing lock nesting notation [ 2202.322586][ C2] [ 2202.323010][ C2] 8 locks held by ksoftirqd/2/27: [ 2202.323261][ C2] #0: ffffffffb29447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 2202.323752][ C2] #1: ffffffffb29447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2202.324268][ C2] #2: ffff888011c40e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 2202.324744][ C2] #3: ffffffffb29447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 2202.325218][ C2] #4: ffffffffb29447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 2202.325713][ C2] #5: ffffffffb2944780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1c1/0x1ca0 [ 2202.326205][ C2] #6: ffffffffb29447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 2202.326728][ C2] #7: ffffffffb29447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 2202.327235][ C2] [ 2202.327235][ C2] stack backtrace: [ 2202.327552][ C2] CPU: 2 PID: 27 Comm: ksoftirqd/2 Not tainted 6.8.0-rc2-virtme #1 [ 2202.327942][ C2] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 2202.328563][ C2] Call Trace: [ 2202.328738][ C2] [ 2202.328901][ C2] dump_stack_lvl+0x64/0xb0 [ 2202.329138][ C2] validate_chain+0x525/0xa00 [ 2202.329384][ C2] ? __pfx_validate_chain+0x10/0x10 [ 2202.329654][ C2] ? hlock_class+0x4e/0x130 [ 2202.329889][ C2] ? mark_lock+0x38/0x3e0 [ 2202.330128][ C2] __lock_acquire+0xb67/0x1610 [ 2202.330371][ C2] ? lock_downgrade+0xa0/0x110 [ 2202.330622][ C2] ? mark_lock+0x38/0x3e0 [ 2202.330857][ C2] lock_acquire.part.0+0xe5/0x330 [ 2202.331125][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2202.331370][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2202.331661][ C2] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 2202.331947][ C2] ? lock_acquire+0x1c1/0x220 [ 2202.332195][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2202.332444][ C2] _raw_spin_lock_nested+0x33/0x80 [ 2202.332710][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2202.332948][ C2] tcp_v4_rcv+0x2161/0x29c0 [ 2202.333195][ C2] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2202.333454][ C2] ? __pfx_raw_v4_input+0x10/0x10 [ 2202.333718][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2202.334016][ C2] ip_protocol_deliver_rcu+0x93/0x360 [ 2202.334298][ C2] ip_local_deliver_finish+0x2ae/0x450 [ 2202.334601][ C2] ip_local_deliver+0x19d/0x480 [ 2202.334856][ C2] ? __pfx_ip_local_deliver+0x10/0x10 [ 2202.335134][ C2] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2202.335465][ C2] ip_rcv+0x564/0x740 [ 2202.335674][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2202.335914][ C2] ? lock_acquire.part.0+0xe5/0x330 [ 2202.336184][ C2] ? netif_receive_skb_internal+0x84/0x300 [ 2202.336489][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2202.336723][ C2] __netif_receive_skb_one_core+0x166/0x1b0 [ 2202.337032][ C2] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2202.337349][ C2] ? mark_held_locks+0xa5/0xf0 [ 2202.337601][ C2] ? lock_acquire+0x1c1/0x220 [ 2202.337837][ C2] ? netif_receive_skb_internal+0x84/0x300 [ 2202.338144][ C2] netif_receive_skb_internal+0xb0/0x300 [ 2202.338436][ C2] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 2202.338762][ C2] ? __copy_skb_header+0xaf/0x490 [ 2202.339026][ C2] ? __skb_clone+0x57a/0x760 [ 2202.339263][ C2] netif_receive_skb+0x55/0x280 [ 2202.339517][ C2] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 2202.339834][ C2] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 2202.340161][ C2] ? __pfx_validate_chain+0x10/0x10 [ 2202.340438][ C2] tcf_mirred_act+0x338/0x780 [act_mirred] [ 2202.340734][ C2] tcf_action_exec.part.0+0x112/0x3d0 [ 2202.341015][ C2] fl_classify+0x4dc/0x650 [cls_flower] [ 2202.341313][ C2] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 2202.341643][ C2] ? __pfx_usage_match+0x10/0x10 [ 2202.341904][ C2] ? check_irq_usage+0x27e/0x850 [ 2202.342154][ C2] ? __pfx_check_irq_usage+0x10/0x10 [ 2202.342419][ C2] ? __bfs+0x247/0x650 [ 2202.342646][ C2] ? __pfx_hlock_conflict+0x10/0x10 [ 2202.342915][ C2] ? __bfs+0x247/0x650 [ 2202.343120][ C2] ? __pfx_usage_match+0x10/0x10 [ 2202.343376][ C2] ? check_path.constprop.0+0x24/0x50 [ 2202.343654][ C2] ? check_noncircular+0x14e/0x3e0 [ 2202.343929][ C2] ? __pfx_check_noncircular+0x10/0x10 [ 2202.344213][ C2] ? __pfx_validate_chain+0x10/0x10 [ 2202.344474][ C2] ? hlock_class+0x4e/0x130 [ 2202.344717][ C2] __tcf_classify+0x329/0x7d0 [ 2202.344962][ C2] tcf_classify+0x283/0x930 [ 2202.345205][ C2] ? __pfx_tcf_classify+0x10/0x10 [ 2202.345465][ C2] ? lock_acquire.part.0+0xe5/0x330 [ 2202.345725][ C2] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2202.345990][ C2] tc_run+0x2e4/0x5d0 [ 2202.346201][ C2] ? __pfx_tc_run+0x10/0x10 [ 2202.346435][ C2] ? lock_acquire+0x1c1/0x220 [ 2202.346681][ C2] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 2202.346940][ C2] __dev_queue_xmit+0x8eb/0x1ca0 [ 2202.347190][ C2] ? hlock_class+0x4e/0x130 [ 2202.347434][ C2] ? mark_lock+0x38/0x3e0 [ 2202.347659][ C2] ? __pfx___dev_queue_xmit+0x10/0x10 [ 2202.347940][ C2] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 2202.348269][ C2] ? neigh_hh_output+0x348/0x590 [ 2202.348520][ C2] ip_finish_output2+0x786/0x18e0 [ 2202.348788][ C2] ? __pfx_ip_finish_output2+0x10/0x10 [ 2202.349072][ C2] ? __ip_finish_output+0x3dd/0x770 [ 2202.349343][ C2] ip_output+0x16b/0x4f0 [ 2202.349568][ C2] ? __pfx_ip_output+0x10/0x10 [ 2202.349819][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2202.350114][ C2] ? ip_local_out+0x114/0x3b0 [ 2202.350352][ C2] __ip_queue_xmit+0x672/0x1910 [ 2202.350615][ C2] ? __skb_clone+0x57a/0x760 [ 2202.350857][ C2] __tcp_transmit_skb+0x22b1/0x2d20 [ 2202.351132][ C2] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 2202.351410][ C2] ? tcp_small_queue_check.isra.0+0xe9/0x380 [ 2202.351713][ C2] tcp_write_xmit+0xe42/0x24c0 [ 2202.351967][ C2] ? ipv4_mtu+0x37/0x360 [ 2202.352192][ C2] ? __pfx_tcp_write_xmit+0x10/0x10 [ 2202.352467][ C2] ? __pfx_tcp_current_mss+0x10/0x10 [ 2202.352740][ C2] __tcp_push_pending_frames+0x96/0x320 [ 2202.353024][ C2] tcp_rcv_state_process+0x862/0x21c0 [ 2202.353303][ C2] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 2202.353607][ C2] ? find_held_lock+0x33/0x120 [ 2202.353863][ C2] ? tcp_v4_rcv+0x2161/0x29c0 [ 2202.354114][ C2] ? hlock_class+0x4e/0x130 [ 2202.354346][ C2] tcp_v4_do_rcv+0x1ac/0x8e0 [ 2202.354581][ C2] ? __pfx_tcp_v4_do_rcv+0x10/0x10 [ 2202.354862][ C2] tcp_v4_rcv+0x2362/0x29c0 [ 2202.355103][ C2] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 2202.355354][ C2] ? __pfx_raw_v4_input+0x10/0x10 [ 2202.355613][ C2] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 2202.355907][ C2] ip_protocol_deliver_rcu+0x93/0x360 [ 2202.356185][ C2] ip_local_deliver_finish+0x2ae/0x450 [ 2202.356475][ C2] ip_local_deliver+0x19d/0x480 [ 2202.356723][ C2] ? __pfx_ip_local_deliver+0x10/0x10 [ 2202.357012][ C2] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 2202.357343][ C2] ip_rcv+0x564/0x740 [ 2202.357551][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2202.357780][ C2] ? lock_acquire.part.0+0xe5/0x330 [ 2202.358053][ C2] ? process_backlog+0x1ed/0x5e0 [ 2202.358310][ C2] ? __pfx_ip_rcv+0x10/0x10 [ 2202.358546][ C2] __netif_receive_skb_one_core+0x166/0x1b0 [ 2202.358854][ C2] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 2202.359182][ C2] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 2202.359474][ C2] ? lock_acquire+0x1c1/0x220 [ 2202.359716][ C2] ? process_backlog+0x1ed/0x5e0 [ 2202.359978][ C2] process_backlog+0xd3/0x5e0 [ 2202.360217][ C2] __napi_poll.constprop.0+0xa2/0x450 [ 2202.360492][ C2] net_rx_action+0x440/0xb40 [ 2202.360739][ C2] ? __pfx_net_rx_action+0x10/0x10 [ 2202.361001][ C2] ? __pfx___schedule+0x10/0x10 [ 2202.361255][ C2] ? __pfx___lock_release+0x10/0x10 [ 2202.361524][ C2] __do_softirq+0x1b9/0x7ff [ 2202.361761][ C2] ? __pfx_run_ksoftirqd+0x10/0x10 [ 2202.362025][ C2] run_ksoftirqd+0x2e/0x60 [ 2202.362264][ C2] smpboot_thread_fn+0x30b/0x840 [ 2202.362524][ C2] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 2202.362799][ C2] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 2202.363075][ C2] kthread+0x28f/0x360 [ 2202.363295][ C2] ? __pfx_kthread+0x10/0x10 [ 2202.363535][ C2] ret_from_fork+0x31/0x70 [ 2202.363767][ C2] ? __pfx_kthread+0x10/0x10 [ 2202.364007][ C2] ret_from_fork_asm+0x1b/0x30 [ 2202.364259][ C2] [ 2217.407158][ T7907] ncat (7907) used greatest stack depth: 21056 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__->