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 ] [ 1140.688676] 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 ] [ 1143.289656] tc (5393) used greatest stack depth: 11552 bytes left [ 1145.525499] ping (5516) used greatest stack depth: 11512 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 1151.457766] [ 1151.457863] ============================================ [ 1151.458143] WARNING: possible recursive locking detected [ 1151.458414] 6.8.0-rc2-virtme #1 Not tainted [ 1151.458633] -------------------------------------------- [ 1151.458904] perl/4834 is trying to acquire lock: [ 1151.459144] ffff9a2b826b8cb0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdba/0xf00 [ 1151.459556] [ 1151.459556] but task is already holding lock: [ 1151.459856] ffff9a2b826b80b0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdba/0xf00 [ 1151.460258] [ 1151.460258] other info that might help us debug this: [ 1151.460591] Possible unsafe locking scenario: [ 1151.460591] [ 1151.460891] CPU0 [ 1151.461024] ---- [ 1151.461156] lock(slock-AF_INET/1); [ 1151.461350] lock(slock-AF_INET/1); [ 1151.461539] [ 1151.461539] *** DEADLOCK *** [ 1151.461539] [ 1151.461840] May be due to missing lock nesting notation [ 1151.461840] [ 1151.462185] 12 locks held by perl/4834: [ 1151.462385] #0: ffff9a2b824ca0a0 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x28/0x60 [ 1151.462839] #1: ffff9a2b824ca130 (&tty->atomic_write_lock){+.+.}-{3:3}, at: file_tty_write.constprop.0+0xa5/0x340 [ 1151.463367] #2: ffff9a2b824ca2e8 (&tty->termios_rwsem){++++}-{3:3}, at: n_tty_write+0xa4/0x530 [ 1151.463848] #3: ffffb02ac0277380 (&ldata->output_lock){+.+.}-{3:3}, at: n_tty_write+0x236/0x530 [ 1151.464288] #4: ffffffff9bb678c0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x6f/0x260 [ 1151.464721] #5: ffffffff9bb678c0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x6f/0x180 [ 1151.465182] #6: ffff9a2b826b80b0 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0xdba/0xf00 [ 1151.465603] #7: ffffffff9bb678c0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x3f/0x6f0 [ 1151.466037] #8: ffffffff9bb678c0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0xc6/0xa20 [ 1151.466478] #9: ffffffff9bb67880 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x6e/0x1180 [ 1151.466929] #10: ffffffff9bb678c0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb+0x58/0x2c0 [ 1151.467371] #11: ffffffff9bb678c0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x6f/0x180 [ 1151.467836] [ 1151.467836] stack backtrace: [ 1151.468066] CPU: 1 PID: 4834 Comm: perl Not tainted 6.8.0-rc2-virtme #1 [ 1151.468404] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 1151.468981] Call Trace: [ 1151.469117] [ 1151.469232] dump_stack_lvl+0x4b/0x80 [ 1151.469431] __lock_acquire+0x1215/0x1750 [ 1151.469646] ? sk_filter_trim_cap+0x53/0x360 [ 1151.469870] lock_acquire+0xc1/0x2b0 [ 1151.470059] ? tcp_v4_rcv+0xdba/0xf00 [ 1151.470253] ? sk_filter_trim_cap+0x11a/0x360 [ 1151.470482] _raw_spin_lock_nested+0x2e/0x40 [ 1151.470708] ? tcp_v4_rcv+0xdba/0xf00 [ 1151.470901] tcp_v4_rcv+0xdba/0xf00 [ 1151.471088] ip_protocol_deliver_rcu+0x4b/0x1e0 [ 1151.471322] ip_local_deliver_finish+0xaf/0x180 [ 1151.471559] __netif_receive_skb_one_core+0x8b/0xa0 [ 1151.471814] netif_receive_skb+0x87/0x2c0 [ 1151.472027] tcf_mirred_to_dev+0x1f6/0x410 [act_mirred] [ 1151.472302] tcf_mirred_act+0xee/0x560 [act_mirred] [ 1151.472558] ? tcf_skbedit_act+0x1d6/0x410 [act_skbedit] [ 1151.472832] tcf_action_exec+0xac/0x230 [ 1151.473037] fl_classify+0x20e/0x260 [cls_flower] [ 1151.473287] ? fl_mask_lookup+0x17e/0x5a0 [cls_flower] [ 1151.473562] ? __bfs+0xf3/0x240 [ 1151.473731] ? check_irq_usage+0x19c/0xc40 [ 1151.473944] ? tcf_action_exec+0xac/0x230 [ 1151.474155] ? check_path.constprop.0+0x24/0x50 [ 1151.474388] ? check_noncircular+0x81/0x150 [ 1151.474609] ? __lock_acquire+0xa6e/0x1750 [ 1151.474823] tcf_classify+0x17a/0x540 [ 1151.475018] tc_run+0x9f/0x150 [ 1151.475186] __dev_queue_xmit+0x311/0x1180 [ 1151.475399] ? mark_held_locks+0x49/0x80 [ 1151.475606] ip_finish_output2+0x39f/0xa20 [ 1151.475820] ? __ip_queue_xmit+0x1d5/0x6f0 [ 1151.476032] __ip_queue_xmit+0x1d5/0x6f0 [ 1151.476250] __tcp_transmit_skb+0xb65/0xd30 [ 1151.476487] tcp_write_xmit+0x492/0x1410 [ 1151.476692] __tcp_push_pending_frames+0x36/0xc0 [ 1151.476931] tcp_rcv_state_process+0x4db/0x1230 [ 1151.477167] ? lock_acquire+0xc1/0x2b0 [ 1151.477362] ? tcp_v4_rcv+0xdba/0xf00 [ 1151.477554] ? tcp_v4_do_rcv+0x85/0x3a0 [ 1151.477753] ? lock_is_held_type+0x9f/0x120 [ 1151.477971] tcp_v4_do_rcv+0x85/0x3a0 [ 1151.478162] tcp_v4_rcv+0xe54/0xf00 [ 1151.478345] ? process_backlog+0x6f/0x260 [ 1151.478552] ip_protocol_deliver_rcu+0x4b/0x1e0 [ 1151.478786] ip_local_deliver_finish+0xaf/0x180 [ 1151.479017] __netif_receive_skb_one_core+0x8b/0xa0 [ 1151.479268] process_backlog+0x7c/0x260 [ 1151.479469] __napi_poll.constprop.0+0x27/0x1e0 [ 1151.479701] net_rx_action+0x2be/0x340 [ 1151.479897] __do_softirq+0xc8/0x37a [ 1151.480085] irq_exit_rcu+0x7f/0xa0 [ 1151.480269] sysvec_apic_timer_interrupt+0x78/0x90 [ 1151.480517] [ 1151.480631] [ 1151.480746] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 1151.481011] RIP: 0010:_raw_spin_unlock_irqrestore+0x39/0x50 [ 1151.481297] Code: c7 18 53 48 89 f3 48 8b 74 24 10 e8 81 3c 39 ff 48 89 ef e8 39 6d 39 ff 80 e7 02 74 06 e8 cf 95 46 ff fb 65 ff 0d cf e8 1f 65 <74> 07 5b 5d c3 cc cc cc cc 0f 1f 44 00 00 5b 5d c3 cc cc cc cc 66 [ 1151.482216] RSP: 0018:ffffb02ac26c7d18 EFLAGS: 00000286 [ 1151.482488] RAX: 00000000003ad185 RBX: 0000000000000282 RCX: 0000000000000040 [ 1151.482847] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffff9ae30671 [ 1151.483206] RBP: ffffffff9cffff40 R08: 0000000000000001 R09: 0000000000000001 [ 1151.483574] R10: 0000000000000005 R11: 0000000000000001 R12: 0000000000000001 [ 1151.483933] R13: 0000000000000000 R14: ffff9a2b81d14001 R15: ffff9a2b823f0000 [ 1151.484293] ? _raw_spin_unlock_irqrestore+0x31/0x50 [ 1151.484550] ? _raw_spin_unlock_irqrestore+0x31/0x50 [ 1151.484804] uart_write+0x103/0x1d0 [ 1151.484989] n_tty_write+0x1a6/0x530 [ 1151.485178] ? __pfx_woken_wake_function+0x10/0x10 [ 1151.485428] file_tty_write.constprop.0+0x164/0x340 [ 1151.485681] vfs_write+0x38d/0x550 [ 1151.485863] ksys_write+0x69/0xf0 [ 1151.486039] do_syscall_64+0xc9/0x1e0 [ 1151.486234] entry_SYSCALL_64_after_hwframe+0x6f/0x77 [ 1151.486493] RIP: 0033:0x7f41d9350957 [ 1151.486682] Code: 0b 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 48 89 54 24 18 48 89 74 24 [ 1151.487613] RSP: 002b:00007ffec062b1f8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 1151.488000] RAX: ffffffffffffffda RBX: 0000560ee8ea1ef0 RCX: 00007f41d9350957 [ 1151.488360] RDX: 0000000000000001 RSI: 0000560ee8ea1ef0 RDI: 0000000000000001 [ 1151.488731] RBP: 0000000000000001 R08: 0000000000000000 R09: 0000000000002000 [ 1151.489089] R10: 0000000000000001 R11: 0000000000000246 R12: 0000560ee8e8e4e0 [ 1151.489449] R13: 0000560ee8e6f2a0 R14: 0000000000000001 R15: 0000560ee8e8e4e0 [ 1151.489812] [ 1186.494745] ncat (5645) used greatest stack depth: 10664 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__->