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 [ 31.116882][ T329] GACT probability NOT on # TEST: gact drop and ok (skip_hw) [ OK ] [ 34.947568][ T403] 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 ] [ 40.276006][ T489] tc (489) used greatest stack depth: 23304 bytes left # TEST: mirred_egress_to_ingress (skip_hw) [ OK ] # [ 46.495520][ C0] [ 46.495694][ C0] ============================================ [ 46.496045][ C0] WARNING: possible recursive locking detected [ 46.496374][ C0] 6.8.0-rc2-virtme #1 Not tainted [ 46.496665][ C0] -------------------------------------------- [ 46.497009][ C0] ncat/581 is trying to acquire lock: [ 46.497319][ C0] ffff888008038e30 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2159/0x29b0 [ 46.497811][ C0] [ 46.497811][ C0] but task is already holding lock: [ 46.498226][ C0] ffff888008039b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2159/0x29b0 [ 46.498735][ C0] [ 46.498735][ C0] other info that might help us debug this: [ 46.499174][ C0] Possible unsafe locking scenario: [ 46.499174][ C0] [ 46.499596][ C0] CPU0 [ 46.499796][ C0] ---- [ 46.499992][ C0] lock(slock-AF_INET/1); [ 46.500246][ C0] lock(slock-AF_INET/1); [ 46.500497][ C0] [ 46.500497][ C0] *** DEADLOCK *** [ 46.500497][ C0] [ 46.500953][ C0] May be due to missing lock nesting notation [ 46.500953][ C0] [ 46.501417][ C0] 8 locks held by ncat/581: [ 46.501691][ C0] #0: ffffffffab3447e0 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x1ed/0x5e0 [ 46.502216][ C0] #1: ffffffffab3447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 46.502780][ C0] #2: ffff888008039b70 (slock-AF_INET/1){+.-.}-{2:2}, at: tcp_v4_rcv+0x2159/0x29b0 [ 46.503295][ C0] #3: ffffffffab3447e0 (rcu_read_lock){....}-{1:2}, at: __ip_queue_xmit+0x65/0x1910 [ 46.503834][ C0] #4: ffffffffab3447e0 (rcu_read_lock){....}-{1:2}, at: ip_finish_output2+0x262/0x18e0 [ 46.504363][ C0] #5: ffffffffab344780 (rcu_read_lock_bh){....}-{1:2}, at: __dev_queue_xmit+0x1c1/0x1ca0 [ 46.504901][ C0] #6: ffffffffab3447e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_internal+0x84/0x300 [ 46.505473][ C0] #7: ffffffffab3447e0 (rcu_read_lock){....}-{1:2}, at: ip_local_deliver_finish+0x1f5/0x450 [ 46.506047][ C0] [ 46.506047][ C0] stack backtrace: [ 46.506390][ C0] CPU: 0 PID: 581 Comm: ncat Not tainted 6.8.0-rc2-virtme #1 [ 46.506800][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 46.507476][ C0] Call Trace: [ 46.507658][ C0] [ 46.507827][ C0] dump_stack_lvl+0x64/0xb0 [ 46.508081][ C0] validate_chain+0x525/0xa00 [ 46.508357][ C0] ? __pfx_validate_chain+0x10/0x10 [ 46.508638][ C0] ? hlock_class+0x4e/0x130 [ 46.508896][ C0] ? mark_lock+0x38/0x3e0 [ 46.509142][ C0] __lock_acquire+0xb67/0x1610 [ 46.509418][ C0] ? lock_downgrade+0xa0/0x110 [ 46.509681][ C0] ? mark_lock+0x38/0x3e0 [ 46.509944][ C0] lock_acquire.part.0+0xe5/0x330 [ 46.510231][ C0] ? tcp_v4_rcv+0x2159/0x29b0 [ 46.510515][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 46.510837][ C0] ? __pfx_sk_filter_trim_cap+0x10/0x10 [ 46.511145][ C0] ? lock_acquire+0x1c1/0x220 [ 46.511426][ C0] ? tcp_v4_rcv+0x2159/0x29b0 [ 46.511696][ C0] _raw_spin_lock_nested+0x33/0x80 [ 46.511986][ C0] ? tcp_v4_rcv+0x2159/0x29b0 [ 46.512264][ C0] tcp_v4_rcv+0x2159/0x29b0 [ 46.512516][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 46.512793][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 46.513090][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 46.513394][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 46.513704][ C0] ip_local_deliver_finish+0x2ae/0x450 [ 46.514034][ C0] ip_local_deliver+0x19d/0x480 [ 46.514295][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 46.514607][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 46.514967][ C0] ip_rcv+0x564/0x740 [ 46.515182][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 46.515427][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 46.515719][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 46.516049][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 46.516322][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 46.516656][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 46.517015][ C0] ? mark_held_locks+0xa5/0xf0 [ 46.517297][ C0] ? lock_acquire+0x1c1/0x220 [ 46.517565][ C0] ? netif_receive_skb_internal+0x84/0x300 [ 46.517893][ C0] netif_receive_skb_internal+0xb0/0x300 [ 46.518216][ C0] ? __pfx_netif_receive_skb_internal+0x10/0x10 [ 46.518569][ C0] ? __copy_skb_header+0xaf/0x490 [ 46.518864][ C0] ? __skb_clone+0x57a/0x760 [ 46.519116][ C0] netif_receive_skb+0x55/0x280 [ 46.519375][ C0] tcf_mirred_to_dev+0x444/0xd70 [act_mirred] [ 46.519764][ C0] ? __pfx_tcf_skbedit_act+0x10/0x10 [act_skbedit] [ 46.520136][ C0] tcf_mirred_act+0x338/0x780 [act_mirred] [ 46.520477][ C0] tcf_action_exec.part.0+0x115/0x3d0 [ 46.520773][ C0] fl_classify+0x4dc/0x650 [cls_flower] [ 46.521101][ C0] ? __pfx_fl_classify+0x10/0x10 [cls_flower] [ 46.521449][ C0] ? __pfx_usage_match+0x10/0x10 [ 46.521722][ C0] ? check_irq_usage+0x27e/0x850 [ 46.522002][ C0] ? __pfx_check_irq_usage+0x10/0x10 [ 46.522302][ C0] ? __bfs+0x24a/0x650 [ 46.522555][ C0] ? __pfx_check_irq_usage+0x10/0x10 [ 46.522851][ C0] ? __bfs+0x24a/0x650 [ 46.523098][ C0] ? __pfx_hlock_conflict+0x10/0x10 [ 46.523381][ C0] ? hlock_class+0x4e/0x130 [ 46.523643][ C0] ? check_path.constprop.0+0x24/0x50 [ 46.523952][ C0] ? check_noncircular+0x14e/0x3e0 [ 46.524252][ C0] ? __pfx_check_noncircular+0x10/0x10 [ 46.524572][ C0] __tcf_classify+0x32c/0x7d0 [ 46.524841][ C0] tcf_classify+0x283/0x930 [ 46.525106][ C0] ? __pfx_tcf_classify+0x10/0x10 [ 46.525379][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 46.525682][ C0] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 46.525999][ C0] tc_run+0x2e4/0x5d0 [ 46.526241][ C0] ? __pfx_tc_run+0x10/0x10 [ 46.526492][ C0] ? lock_acquire+0x1c1/0x220 [ 46.526763][ C0] ? __dev_queue_xmit+0x1c1/0x1ca0 [ 46.527065][ C0] __dev_queue_xmit+0x8eb/0x1ca0 [ 46.527336][ C0] ? hlock_class+0x4e/0x130 [ 46.527598][ C0] ? mark_lock+0x38/0x3e0 [ 46.527864][ C0] ? __pfx___dev_queue_xmit+0x10/0x10 [ 46.528169][ C0] ? lockdep_hardirqs_on_prepare.part.0+0x151/0x370 [ 46.528539][ C0] ? neigh_hh_output+0x348/0x590 [ 46.528832][ C0] ip_finish_output2+0x786/0x18e0 [ 46.529116][ C0] ? __pfx_ip_finish_output2+0x10/0x10 [ 46.529432][ C0] ? __ip_finish_output+0x10f/0x770 [ 46.529734][ C0] ip_output+0x16b/0x4f0 [ 46.529994][ C0] ? __pfx_ip_output+0x10/0x10 [ 46.530266][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 46.530597][ C0] ? ip_local_out+0x114/0x3b0 [ 46.530855][ C0] __ip_queue_xmit+0x672/0x1910 [ 46.531142][ C0] ? __create_object+0x5e/0xb0 [ 46.531429][ C0] __tcp_transmit_skb+0x22b1/0x2d20 [ 46.531713][ C0] ? __pfx___tcp_transmit_skb+0x10/0x10 [ 46.532025][ C0] ? __tcp_send_ack.part.0+0x66/0x6e0 [ 46.532328][ C0] tcp_rcv_state_process+0x862/0x1fd0 [ 46.532639][ C0] ? tcp_v4_rcv+0x2159/0x29b0 [ 46.532912][ C0] ? hlock_class+0x4e/0x130 [ 46.533183][ C0] ? __lock_acquired+0x2cf/0x6b0 [ 46.533454][ C0] ? __pfx_tcp_rcv_state_process+0x10/0x10 [ 46.533783][ C0] ? __pfx___lock_acquired+0x10/0x10 [ 46.534077][ C0] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 46.534392][ C0] tcp_v4_do_rcv+0x154/0x850 [ 46.534663][ C0] tcp_v4_rcv+0x235a/0x29b0 [ 46.534928][ C0] ? __pfx_tcp_v4_rcv+0x10/0x10 [ 46.535211][ C0] ? __pfx_raw_v4_input+0x10/0x10 [ 46.535487][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 46.535812][ C0] ip_protocol_deliver_rcu+0x93/0x360 [ 46.536124][ C0] ip_local_deliver_finish+0x2ae/0x450 [ 46.536421][ C0] ip_local_deliver+0x19d/0x480 [ 46.536697][ C0] ? __pfx_ip_local_deliver+0x10/0x10 [ 46.536998][ C0] ? ip_rcv_finish_core.constprop.0+0x522/0x1300 [ 46.537369][ C0] ip_rcv+0x564/0x740 [ 46.537600][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 46.537856][ C0] ? lock_acquire.part.0+0xe5/0x330 [ 46.538158][ C0] ? process_backlog+0x1ed/0x5e0 [ 46.538446][ C0] ? __pfx_ip_rcv+0x10/0x10 [ 46.538721][ C0] __netif_receive_skb_one_core+0x166/0x1b0 [ 46.539060][ C0] ? __pfx___netif_receive_skb_one_core+0x10/0x10 [ 46.539426][ C0] ? __pfx_do_raw_spin_trylock+0x10/0x10 [ 46.539733][ C0] ? lock_acquire+0x1c1/0x220 [ 46.540008][ C0] ? process_backlog+0x1ed/0x5e0 [ 46.540302][ C0] process_backlog+0xd3/0x5e0 [ 46.540556][ C0] __napi_poll.constprop.0+0xa5/0x450 [ 46.540866][ C0] net_rx_action+0x440/0xb40 [ 46.541140][ C0] ? __pfx_net_rx_action+0x10/0x10 [ 46.541428][ C0] ? ktime_get_raw_ts64+0x230/0x240 [ 46.541729][ C0] ? hrtimer_interrupt+0x2e0/0x770 [ 46.542043][ C0] ? __pfx_rebalance_domains+0x10/0x10 [ 46.542339][ C0] ? clockevents_program_event+0x1ed/0x300 [ 46.542668][ C0] __do_softirq+0x1bc/0x7ff [ 46.542935][ C0] irq_exit_rcu+0x98/0xc0 [ 46.543170][ C0] sysvec_apic_timer_interrupt+0x75/0x80 [ 46.543475][ C0] [ 46.543656][ C0] [ 46.543840][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 46.544183][ C0] RIP: 0010:finish_task_switch.isra.0+0x21f/0x8b0 [ 46.544550][ C0] Code: 89 ff 48 c7 03 00 00 00 00 e8 8d ba 63 02 4d 85 e4 75 ba 4c 89 ff e8 10 96 63 02 e8 ab e2 2c 00 fb 65 48 8b 1c 25 c0 b6 1f 00 <66> 90 48 83 7d d0 00 74 56 65 48 8b 1c 25 c0 b6 1f 00 48 8d bb e8 [ 46.545588][ C0] RSP: 0018:ffffc9000058fa48 EFLAGS: 00000206 [ 46.545920][ C0] RAX: 000000000001eb8d RBX: ffff8880066c1f80 RCX: 1ffffffff579b791 [ 46.546370][ C0] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffffa7a3e7a5 [ 46.546814][ C0] RBP: ffffc9000058fa88 R08: 0000000000000001 R09: fffffbfff579be1a [ 46.547241][ C0] R10: ffffffffabcdf0d7 R11: ffff8880353fc348 R12: ffff8880353fc198 [ 46.547670][ C0] R13: ffffffffab01ce00 R14: 0000000000000003 R15: ffff8880353fc180 [ 46.548123][ C0] ? finish_task_switch.isra.0+0x215/0x8b0 [ 46.548478][ C0] ? finish_task_switch.isra.0+0x215/0x8b0 [ 46.548789][ C0] ? __switch_to+0x5df/0xfa0 [ 46.549063][ C0] __schedule+0x70d/0x1ac0 [ 46.549326][ C0] ? __pfx___schedule+0x10/0x10 [ 46.549610][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 46.549941][ C0] ? schedule+0x1fe/0x280 [ 46.550188][ C0] schedule+0xeb/0x280 [ 46.550433][ C0] pipe_write+0xb3b/0x1840 [ 46.550677][ C0] ? hlock_class+0x4e/0x130 [ 46.550941][ C0] ? __pfx_pipe_write+0x10/0x10 [ 46.551221][ C0] ? __mark_inode_dirty+0x6f5/0x900 [ 46.551514][ C0] ? __pfx_autoremove_wake_function+0x10/0x10 [ 46.551852][ C0] ? __up_write+0x190/0x520 [ 46.552109][ C0] vfs_write+0xac4/0x10a0 [ 46.552366][ C0] ? __pfx_vfs_write+0x10/0x10 [ 46.552642][ C0] ? __fget_light+0x54/0x1e0 [ 46.552911][ C0] ksys_write+0x17a/0x1e0 [ 46.553146][ C0] ? __pfx_ksys_write+0x10/0x10 [ 46.553411][ C0] do_syscall_64+0xcc/0x1e0 [ 46.553675][ C0] entry_SYSCALL_64_after_hwframe+0x6f/0x77 [ 46.554012][ C0] RIP: 0033:0x7fe586e3a957 [ 46.554272][ C0] 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 [ 46.555324][ C0] RSP: 002b:00007ffe33c59ef8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 46.555776][ C0] RAX: ffffffffffffffda RBX: 00005583930afa20 RCX: 00007fe586e3a957 [ 46.556218][ C0] RDX: 0000000000002000 RSI: 00007ffe33c59f10 RDI: 0000000000000001 [ 46.556665][ C0] RBP: 0000000000000008 R08: 0000000000000000 R09: 0000000000000000 [ 46.557110][ C0] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000002000 [ 46.557560][ C0] R13: 00007ffe33c59f10 R14: 0000000000000000 R15: 00007ffe33c59f0c [ 46.558022][ C0] [ 68.591310][ T582] ncat (582) used greatest stack depth: 21168 bytes left [ 76.665044][ C1] clocksource: Long readout interval, skipping watchdog check: cs_nsec: 1804363603 wd_nsec: 1804362992 [ 105.710591][ T581] ncat (581) used greatest stack depth: 20320 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__->