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 0 # 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 ] [ 873.685574] tc (4227) used greatest stack depth: 11552 bytes left [ 875.863915] ping (4382) used greatest stack depth: 11512 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 880.377041] [ 880.377160] ============================================ [ 880.377454] WARNING: possible recursive locking detected [ 880.377757] 6.8.0-rc1-virtme #1 Not tainted [ 880.377994] -------------------------------------------- [ 880.378282] ksoftirqd/3/32 is trying to acquire lock: [ 880.378559] ffff8c0a837a0cb0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdb5/0xef0 [ 880.378997] [ 880.378997] but task is already holding lock: [ 880.379309] ffff8c0a837a00b0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdb5/0xef0 [ 880.379739] [ 880.379739] other info that might help us debug this: [ 880.380102] Possible unsafe locking scenario: [ 880.380102] [ 880.380425] CPU0 [ 880.380570] ---- [ 880.380727] lock(slock-AF_INET/1); [ 880.380924] lock(slock-AF_INET/1); [ 880.381128] [ 880.381128] *** DEADLOCK *** [ 880.381128] [ 880.381458] May be due to missing lock nesting notation [ 880.381458] [ 880.381815] 8 locks held by ksoftirqd/3/32: [ 880.382045] #0: ffffffffac7678c0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x6f/0x260 [ 880.382508] #1: ffffffffac7678c0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x6f/0x180 [ 880.383001] #2: ffff8c0a837a00b0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdb5/0xef0 [ 880.383454] #3: ffffffffac7678c0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x3f/0x6f0 [ 880.383922] #4: ffffffffac7678c0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0xc6/0xa20 [ 880.384398] #5: ffffffffac767880 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x6e/0x1180 [ 880.384880] #6: ffffffffac7678c0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb+0x58/0x2c0 [ 880.385353] #7: ffffffffac7678c0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x6f/0x180 [ 880.385840] [ 880.385840] stack backtrace: [ 880.386087] CPU: 3 PID: 32 Comm: ksoftirqd/3 Not tainted 6.8.0-rc1-virtme #1 [ 880.386476] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 880.387079] Call Trace: [ 880.387227] [ 880.387366] dump_stack_lvl+0x4b/0x80 [ 880.387573] __lock_acquire+0x1215/0x1750 [ 880.387809] ? sk_filter_trim_cap+0x53/0x360 [ 880.388054] lock_acquire+0xc1/0x2b0 [ 880.388264] ? tcp_v4_rcv+0xdb5/0xef0 [ 880.388468] ? sk_filter_trim_cap+0x11a/0x360 [ 880.388715] _raw_spin_lock_nested+0x2e/0x40 [ 880.388965] ? tcp_v4_rcv+0xdb5/0xef0 [ 880.389168] tcp_v4_rcv+0xdb5/0xef0 [ 880.389370] ip_protocol_deliver_rcu+0x4b/0x1e0 [ 880.389636] ip_local_deliver_finish+0xaf/0x180 [ 880.389889] __netif_receive_skb_one_core+0x8b/0xa0 [ 880.390166] netif_receive_skb+0x87/0x2c0 [ 880.390406] tcf_mirred_to_dev+0x1f6/0x410 [act_mirred] [ 880.390700] tcf_mirred_act+0xee/0x560 [act_mirred] [ 880.390978] ? tcf_skbedit_act+0x1d6/0x410 [act_skbedit] [ 880.391268] tcf_action_exec+0xaf/0x230 [ 880.391484] fl_classify+0x20e/0x260 [cls_flower] [ 880.391757] ? fl_mask_lookup+0x17e/0x5a0 [cls_flower] [ 880.392044] ? __pfx_usage_match+0x10/0x10 [ 880.392281] ? __bfs+0xf6/0x240 [ 880.392460] ? check_irq_usage+0x19c/0xc40 [ 880.392692] ? __lock_acquire+0xa6e/0x1750 [ 880.392932] ? check_path.constprop.0+0x24/0x50 [ 880.393190] ? check_noncircular+0x81/0x150 [ 880.393433] ? lock_release+0xbe/0x270 [ 880.393642] ? __lock_acquire+0xa6e/0x1750 [ 880.393878] tcf_classify+0x17d/0x540 [ 880.394092] tc_run+0x9f/0x150 [ 880.394268] __dev_queue_xmit+0x311/0x1180 [ 880.394494] ? mark_held_locks+0x49/0x80 [ 880.394726] ip_finish_output2+0x39f/0xa20 [ 880.394958] ? __ip_queue_xmit+0x1d5/0x6f0 [ 880.395194] __ip_queue_xmit+0x1d5/0x6f0 [ 880.395410] __tcp_transmit_skb+0xb65/0xd30 [ 880.395642] ? mark_held_locks+0x49/0x80 [ 880.395868] tcp_write_xmit+0x492/0x1410 [ 880.396095] __tcp_push_pending_frames+0x36/0xc0 [ 880.396363] tcp_rcv_state_process+0x4d3/0x11f0 [ 880.396611] ? tcp_v4_rcv+0xdb5/0xef0 [ 880.396820] ? tcp_v4_do_rcv+0x64/0x360 [ 880.397048] tcp_v4_do_rcv+0x64/0x360 [ 880.397253] tcp_v4_rcv+0xe4f/0xef0 [ 880.397454] ? process_backlog+0x6f/0x260 [ 880.397690] ip_protocol_deliver_rcu+0x4b/0x1e0 [ 880.397938] ip_local_deliver_finish+0xaf/0x180 [ 880.398191] __netif_receive_skb_one_core+0x8b/0xa0 [ 880.398456] process_backlog+0x7c/0x260 [ 880.398684] __napi_poll.constprop.0+0x2a/0x1e0 [ 880.398940] net_rx_action+0x2be/0x340 [ 880.399166] __do_softirq+0xcb/0x37a [ 880.399370] ? __pfx_smpboot_thread_fn+0x10/0x10 [ 880.399634] run_ksoftirqd+0x2e/0x40 [ 880.399841] smpboot_thread_fn+0xdc/0x1d0 [ 880.400073] kthread+0xdd/0x110 [ 880.400251] ? __pfx_kthread+0x10/0x10 [ 880.400464] ret_from_fork+0x34/0x50 [ 880.400676] ? __pfx_kthread+0x10/0x10 [ 880.400887] ret_from_fork_asm+0x1b/0x30 [ 880.401109] [ 920.794740] ncat (4539) 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__->