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 ] # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 1277.456785][ C0] [ 1277.456938][ C0] ============================================ [ 1277.457258][ C0] WARNING: possible recursive locking detected [ 1277.457587][ C0] 6.8.0-rc2-virtme #1 Not tainted [ 1277.457844][ C0] -------------------------------------------- [ 1277.458160][ C0] ksoftirqd/0/16 is trying to acquire lock: [ 1277.458471][ C0] ffff888009889b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 1277.458948][ C0] [ 1277.458948][ C0] but task is already holding lock: [ 1277.459319][ C0] ffff888009888e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 1277.459777][ C0] [ 1277.459777][ C0] other info that might help us debug this: [ 1277.460196][ C0] Possible unsafe locking scenario: [ 1277.460196][ C0] [ 1277.460573][ C0] CPU0 [ 1277.460746][ C0] ---- [ 1277.460928][ C0] lock(slock-AF_INET/1); [ 1277.461163][ C0] lock(slock-AF_INET/1); [ 1277.461406][ C0] [ 1277.461406][ C0] *** DEADLOCK *** [ 1277.461406][ C0] [ 1277.461816][ C0] May be due to missing lock nesting notation [ 1277.461816][ C0] [ 1277.462236][ C0] 8 locks held by ksoftirqd/0/16: [ 1277.462503][ C0] #0: ffffffffac1447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 1277.462993][ C0] #1: ffffffffac1447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 1277.463514][ C0] #2: ffff888009888e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2161/0x29c0 [ 1277.464001][ C0] #3: ffffffffac1447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 1277.464488][ C0] #4: ffffffffac1447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 1277.464988][ C0] #5: ffffffffac144780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1c1/0x1ca0 [ 1277.465493][ C0] #6: ffffffffac1447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 1277.466026][ C0] #7: ffffffffac1447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 1277.466548][ C0] [ 1277.466548][ C0] stack backtrace: [ 1277.466855][ C0] CPU: 0 PID: 16 Comm: ksoftirqd/0 Not tainted 6.8.0-rc2-virtme #1 [ 1277.467266][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 1277.467888][ C0] Call Trace: [ 1277.468065][ C0] [ 1277.468228][ C0] dump_stack_lvl+0x64/0xb0 [ 1277.468473][ C0] validate_chain+0x525/0xa00 [ 1277.468728][ C0] ? __pfx_validate_chain+0x10/0x10 [ 1277.468997][ C0] ? hlock_class+0x4e/0x130 [ 1277.469237][ C0] ? mark_lock+0x38/0x3e0 [ 1277.469463][ C0] __lock_acquire+0xb67/0x1610 [ 1277.469710][ C0] ? lock_downgrade+0xa0/0x110 [ 1277.469964][ C0] ? mark_lock+0x38/0x3e0 [ 1277.470201][ C0] lock_acquire.part.0+0xe5/0x330 [ 1277.470468][ C0] ? tcp_v4_rcv+0x2161/0x29c0 [ 1277.470717][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 1277.471014][ C0] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 1277.471301][ C0] ? lock_acquire+0x1c1/0x220 [ 1277.471552][ C0] ? tcp_v4_rcv+0x2161/0x29c0 [ 1277.471802][ C0] _raw_spin_lock_nested+0x33/0x80 [ 1277.472073][ C0] ? tcp_v4_rcv+0x2161/0x29c0 [ 1277.472320][ C0] tcp_v4_rcv+0x2161/0x29c0 [ 1277.472567][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 1277.472822][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 1277.473090][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 1277.473390][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 1277.473676][ C0] ip_local_deliver_finish+0x2ae/0x450 [ 1277.473959][ C0] ip_local_deliver+0x19d/0x480 [ 1277.474217][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 1277.474492][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 1277.474822][ C0] ip_rcv+0x564/0x740 [ 1277.475038][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 1277.475277][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 1277.475553][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 1277.475859][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 1277.476101][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 1277.476408][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 1277.476745][ C0] ? mark_held_locks+0xa5/0xf0 [ 1277.476998][ C0] ? lock_acquire+0x1c1/0x220 [ 1277.477250][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 1277.477547][ C0] netif_receive_skb_internal+0xb0/0x300 [ 1277.477837][ C0] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 1277.478167][ C0] ? __copy_skb_header+0xaf/0x490 [ 1277.478426][ C0] ? __skb_clone+0x57a/0x760 [ 1277.478665][ C0] netif_receive_skb+0x55/0x280 [ 1277.478925][ C0] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 1277.479244][ C0] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 1277.479582][ C0] tcf_mirred_act+0x338/0x780 [act_mirred] [ 1277.479887][ C0] tcf_action_exec.part.0+0x112/0x3d0 [ 1277.480175][ C0] fl_classify+0x4dc/0x650 [cls_flower] [ 1277.480471][ C0] ? kernel_text_address+0x17/0xe0 [ 1277.480746][ C0] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 1277.481062][ C0] ? __pfx_usage_match+0x10/0x10 [ 1277.481327][ C0] ? check_irq_usage+0x27e/0x850 [ 1277.481580][ C0] ? stack_trace_save+0x95/0xd0 [ 1277.481833][ C0] ? __pfx_check_irq_usage+0x10/0x10 [ 1277.482112][ C0] ? __bfs+0x247/0x650 [ 1277.482329][ C0] ? __pfx_hlock_conflict+0x10/0x10 [ 1277.482605][ C0] ? __bfs+0x247/0x650 [ 1277.482824][ C0] ? __pfx_usage_match+0x10/0x10 [ 1277.483090][ C0] ? check_path.constprop.0+0x24/0x50 [ 1277.483369][ C0] ? check_noncircular+0x14e/0x3e0 [ 1277.483640][ C0] ? __pfx_check_noncircular+0x10/0x10 [ 1277.483935][ C0] __tcf_classify+0x329/0x7d0 [ 1277.484186][ C0] tcf_classify+0x283/0x930 [ 1277.484420][ C0] ? __pfx_tcf_classify+0x10/0x10 [ 1277.484682][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 1277.484957][ C0] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 1277.485227][ C0] tc_run+0x2e4/0x5d0 [ 1277.485443][ C0] ? __pfx_tc_run+0x10/0x10 [ 1277.485683][ C0] ? lock_acquire+0x1c1/0x220 [ 1277.485939][ C0] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 1277.486207][ C0] __dev_queue_xmit+0x8eb/0x1ca0 [ 1277.486470][ C0] ? hlock_class+0x4e/0x130 [ 1277.486706][ C0] ? mark_lock+0x38/0x3e0 [ 1277.486941][ C0] ? __pfx___dev_queue_xmit+0x10/0x10 [ 1277.487218][ C0] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 1277.487560][ C0] ? neigh_hh_output+0x348/0x590 [ 1277.487822][ C0] ip_finish_output2+0x786/0x18e0 [ 1277.488088][ C0] ? __pfx_ip_finish_output2+0x10/0x10 [ 1277.488372][ C0] ? __ip_finish_output+0x3dd/0x770 [ 1277.488646][ C0] ip_output+0x16b/0x4f0 [ 1277.488869][ C0] ? __pfx_ip_output+0x10/0x10 [ 1277.489124][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 1277.489415][ C0] ? ip_local_out+0x114/0x3b0 [ 1277.489665][ C0] __ip_queue_xmit+0x672/0x1910 [ 1277.489919][ C0] ? __skb_clone+0x57a/0x760 [ 1277.490167][ C0] __tcp_transmit_skb+0x22b1/0x2d20 [ 1277.490436][ C0] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 1277.490720][ C0] ? tcp_small_queue_check.isra.0+0xe9/0x380 [ 1277.491036][ C0] tcp_write_xmit+0xe42/0x24c0 [ 1277.491288][ C0] ? ipv4_mtu+0x37/0x360 [ 1277.491511][ C0] ? __pfx_tcp_write_xmit+0x10/0x10 [ 1277.491781][ C0] ? __pfx_tcp_current_mss+0x10/0x10 [ 1277.492063][ C0] __tcp_push_pending_frames+0x96/0x320 [ 1277.492355][ C0] tcp_rcv_state_process+0x862/0x21c0 [ 1277.492644][ C0] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 1277.492947][ C0] ? find_held_lock+0x33/0x120 [ 1277.493201][ C0] ? tcp_v4_rcv+0x2161/0x29c0 [ 1277.493441][ C0] ? hlock_class+0x4e/0x130 [ 1277.493678][ C0] tcp_v4_do_rcv+0x1ac/0x8e0 [ 1277.493926][ C0] ? __pfx_tcp_v4_do_rcv+0x10/0x10 [ 1277.494195][ C0] tcp_v4_rcv+0x2362/0x29c0 [ 1277.494438][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 1277.494689][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 1277.494958][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 1277.495254][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 1277.495538][ C0] ip_local_deliver_finish+0x2ae/0x450 [ 1277.495822][ C0] ip_local_deliver+0x19d/0x480 [ 1277.496083][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 1277.496364][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 1277.496695][ C0] ip_rcv+0x564/0x740 [ 1277.496905][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 1277.497150][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 1277.497419][ C0] ? process_backlog+0x1ed/0x5e0 [ 1277.497685][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 1277.497925][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 1277.498237][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 1277.498564][ C0] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 1277.498859][ C0] ? lock_acquire+0x1c1/0x220 [ 1277.499112][ C0] ? process_backlog+0x1ed/0x5e0 [ 1277.499373][ C0] process_backlog+0xd3/0x5e0 [ 1277.499622][ C0] __napi_poll.constprop.0+0xa2/0x450 [ 1277.499905][ C0] net_rx_action+0x440/0xb40 [ 1277.500152][ C0] ? __pfx_net_rx_action+0x10/0x10 [ 1277.500417][ C0] ? __pfx___schedule+0x10/0x10 [ 1277.500675][ C0] ? __pfx___lock_release+0x10/0x10 [ 1277.500948][ C0] __do_softirq+0x1b9/0x7ff [ 1277.501191][ C0] ? __pfx_run_ksoftirqd+0x10/0x10 [ 1277.501456][ C0] run_ksoftirqd+0x2e/0x60 [ 1277.501690][ C0] smpboot_thread_fn+0x30b/0x840 [ 1277.501956][ C0] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 1277.502242][ C0] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 1277.502528][ C0] kthread+0x28f/0x360 [ 1277.502748][ C0] ? __pfx_kthread+0x10/0x10 [ 1277.502997][ C0] ret_from_fork+0x31/0x70 [ 1277.503231][ C0] ? __pfx_kthread+0x10/0x10 [ 1277.503477][ C0] ret_from_fork_asm+0x1b/0x30 [ 1277.503732][ C0] [ 1306.535697][ T5497] ncat (5497) 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__->