make -C tools/testing/selftests TARGETS=net/forwarding TEST_PROGS=tc_actioons.sh TEST_GEN_PROGS="" run_tests make: Entering directory '/home/virtme/testing-2/tools/testing/selftests' make[1]: Entering directory '/home/virtme/testing-2/tools/testing/selftests/net/forwarding' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/home/virtme/testing-2/tools/testing/selftests/net/forwarding' make[1]: Entering directory '/home/virtme/testing-2/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 ] [ 1035.753431] 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 ] [ 1038.249163] tc (5152) used greatest stack depth: 11576 bytes left [ 1040.405117] ping (5296) used greatest stack depth: 11512 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 1044.713919] [ 1044.714042] ============================================ [ 1044.714347] WARNING: possible recursive locking detected [ 1044.714659] 6.8.0-rc2-virtme #1 Not tainted [ 1044.714901] -------------------------------------------- [ 1044.715197] ksoftirqd/3/32 is trying to acquire lock: [ 1044.715487] ffff9e7bc49e8cb0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdb5/0xef0 [ 1044.715930] [ 1044.715930] but task is already holding lock: [ 1044.716265] ffff9e7bc49e80b0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdb5/0xef0 [ 1044.716697] [ 1044.716697] other info that might help us debug this: [ 1044.717053] Possible unsafe locking scenario: [ 1044.717053] [ 1044.717390] CPU0 [ 1044.717531] ---- [ 1044.717674] lock(slock-AF_INET/1); [ 1044.717879] lock(slock-AF_INET/1); [ 1044.718091] [ 1044.718091] *** DEADLOCK *** [ 1044.718091] [ 1044.718413] May be due to missing lock nesting notation [ 1044.718413] [ 1044.718791] 8 locks held by ksoftirqd/3/32: [ 1044.719037] #0: ffffffffa5b678c0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x6f/0x260 [ 1044.719510] #1: ffffffffa5b678c0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x6f/0x180 [ 1044.720021] #2: ffff9e7bc49e80b0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdb5/0xef0 [ 1044.720471] #3: ffffffffa5b678c0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x3f/0x6f0 [ 1044.720942] #4: ffffffffa5b678c0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0xc6/0xa20 [ 1044.721425] #5: ffffffffa5b67880 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x6e/0x1180 [ 1044.721930] #6: ffffffffa5b678c0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb+0x58/0x2c0 [ 1044.722407] #7: ffffffffa5b678c0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x6f/0x180 [ 1044.722902] [ 1044.722902] stack backtrace: [ 1044.723142] CPU: 3 PID: 32 Comm: ksoftirqd/3 Not tainted 6.8.0-rc2-virtme #1 [ 1044.723556] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 1044.724168] Call Trace: [ 1044.724311] [ 1044.724454] dump_stack_lvl+0x4b/0x80 [ 1044.724661] __lock_acquire+0x1215/0x1750 [ 1044.724882] ? sk_filter_trim_cap+0x53/0x360 [ 1044.725138] lock_acquire+0xc1/0x2b0 [ 1044.725334] ? tcp_v4_rcv+0xdb5/0xef0 [ 1044.725549] ? sk_filter_trim_cap+0x11a/0x360 [ 1044.725805] _raw_spin_lock_nested+0x2e/0x40 [ 1044.726048] ? tcp_v4_rcv+0xdb5/0xef0 [ 1044.726255] tcp_v4_rcv+0xdb5/0xef0 [ 1044.726465] ip_protocol_deliver_rcu+0x4b/0x1e0 [ 1044.726717] ip_local_deliver_finish+0xaf/0x180 [ 1044.726968] __netif_receive_skb_one_core+0x8b/0xa0 [ 1044.727254] netif_receive_skb+0x87/0x2c0 [ 1044.727495] tcf_mirred_to_dev+0x1f6/0x410 [act_mirred] [ 1044.727785] tcf_mirred_act+0xee/0x560 [act_mirred] [ 1044.728066] ? tcf_skbedit_act+0x1d6/0x410 [act_skbedit] [ 1044.728363] ? print_shortest_lock_dependencies_backwards+0x9c/0xd0 [ 1044.728713] tcf_action_exec+0xaf/0x230 [ 1044.728934] fl_classify+0x20e/0x260 [cls_flower] [ 1044.729213] ? fl_mask_lookup+0x17e/0x5a0 [cls_flower] [ 1044.729498] ? __pfx_usage_match+0x10/0x10 [ 1044.729740] ? __bfs+0xf6/0x240 [ 1044.729923] ? check_irq_usage+0x19c/0xc40 [ 1044.730154] ? check_path.constprop.0+0x24/0x50 [ 1044.730412] ? check_noncircular+0x81/0x150 [ 1044.730651] ? lock_release+0xbe/0x270 [ 1044.730872] ? __lock_acquire+0xa6e/0x1750 [ 1044.731115] tcf_classify+0x17d/0x540 [ 1044.731319] tc_run+0x9f/0x150 [ 1044.731510] __dev_queue_xmit+0x311/0x1180 [ 1044.731742] ? mark_held_locks+0x49/0x80 [ 1044.731962] ip_finish_output2+0x39f/0xa20 [ 1044.732205] ? __ip_queue_xmit+0x1d5/0x6f0 [ 1044.732450] __ip_queue_xmit+0x1d5/0x6f0 [ 1044.732687] __tcp_transmit_skb+0xb65/0xd30 [ 1044.732917] tcp_write_xmit+0x492/0x1410 [ 1044.733144] __tcp_push_pending_frames+0x36/0xc0 [ 1044.733396] tcp_rcv_state_process+0x4d3/0x11f0 [ 1044.733664] ? tcp_v4_rcv+0xdb5/0xef0 [ 1044.733879] ? tcp_v4_do_rcv+0x64/0x360 [ 1044.734095] tcp_v4_do_rcv+0x64/0x360 [ 1044.734309] tcp_v4_rcv+0xe4f/0xef0 [ 1044.734511] ? process_backlog+0x6f/0x260 [ 1044.734740] ip_protocol_deliver_rcu+0x4b/0x1e0 [ 1044.735019] ip_local_deliver_finish+0xaf/0x180 [ 1044.735279] __netif_receive_skb_one_core+0x8b/0xa0 [ 1044.735545] process_backlog+0x7c/0x260 [ 1044.735783] __napi_poll.constprop.0+0x2a/0x1e0 [ 1044.736038] net_rx_action+0x2be/0x340 [ 1044.736260] __do_softirq+0xcb/0x37a [ 1044.736461] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 1044.736728] run_ksoftirqd+0x2e/0x40 [ 1044.736963] smpboot_thread_fn+0xdc/0x1d0 [ 1044.737190] kthread+0xdd/0x110 [ 1044.737380] ? __pfx_kthread+0x10/0x10 [ 1044.737606] ret_from_fork+0x34/0x50 [ 1044.737809] ? __pfx_kthread+0x10/0x10 [ 1044.738020] ret_from_fork_asm+0x1b/0x30 [ 1044.738268] [ 1061.318550] ncat (5451) used greatest stack depth: 10672 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-2/tools/testing/selftests/net/forwarding' make: Leaving directory '/home/virtme/testing-2/tools/testing/selftests' xx__-> echo $? 0 xx__->