[ 27.854870][ T295] br0: port 1(veth1) entered blocking state [ 27.855252][ T295] br0: port 1(veth1) entered disabled state [ 27.856484][ T295] veth1: entered allmulticast mode [ 27.858403][ T295] veth1: entered promiscuous mode [ 27.866317][ T295] ip (295) used greatest stack depth: 24368 bytes left [ 27.970423][ T297] br0: port 2(veth3) entered blocking state [ 27.970751][ T297] br0: port 2(veth3) entered disabled state [ 27.970987][ T297] veth3: entered allmulticast mode [ 27.972793][ T297] veth3: entered promiscuous mode [ 28.306837][ T50] br0: port 1(veth1) entered blocking state [ 28.307160][ T50] br0: port 1(veth1) entered forwarding state [ 28.419532][ T51] br0: port 2(veth3) entered blocking state [ 28.419780][ T51] br0: port 2(veth3) entered forwarding state [ 43.817727][ C3] [ 43.817826][ C3] ======================================================== [ 43.818026][ C3] WARNING: possible irq lock inversion dependency detected [ 43.818225][ C3] 6.9.0-rc1-virtme #1 Not tainted [ 43.818359][ C3] -------------------------------------------------------- [ 43.818565][ C3] swapper/3/0 just changed the state of lock: [ 43.818733][ C3] ffff88800608ac38 (&br->lock){+.-.}-{2:2}, at: br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.819089][ C3] but this lock took another, SOFTIRQ-unsafe lock in the past: [ 43.819288][ C3] (&p->alloc_lock){+.+.}-{2:2} [ 43.819293][ C3] [ 43.819293][ C3] [ 43.819293][ C3] and interrupts could create inverse lock ordering between them. [ 43.819293][ C3] [ 43.819773][ C3] [ 43.819773][ C3] other info that might help us debug this: [ 43.819970][ C3] Chain exists of: [ 43.819970][ C3] &br->lock --> lweventlist_lock --> &p->alloc_lock [ 43.819970][ C3] [ 43.820277][ C3] Possible interrupt unsafe locking scenario: [ 43.820277][ C3] [ 43.820477][ C3] CPU0 CPU1 [ 43.820611][ C3] ---- ---- [ 43.820744][ C3] lock(&p->alloc_lock); [ 43.820845][ C3] local_irq_disable(); [ 43.821011][ C3] lock(&br->lock); [ 43.821180][ C3] lock(lweventlist_lock); [ 43.821346][ C3] [ 43.821448][ C3] lock(&br->lock); [ 43.821550][ C3] [ 43.821550][ C3] *** DEADLOCK *** [ 43.821550][ C3] [ 43.821748][ C3] 1 lock held by swapper/3/0: [ 43.821884][ C3] #0: ffffc90000288d68 ((&p->forward_delay_timer)){+.-.}-{0:0}, at: call_timer_fn+0xe8/0x230 [ 43.822175][ C3] [ 43.822175][ C3] the shortest dependencies between 2nd lock and 1st lock: [ 43.822405][ C3] -> (&p->alloc_lock){+.+.}-{2:2} { [ 43.822547][ C3] HARDIRQ-ON-W at: [ 43.822648][ C3] __lock_acquire+0x797/0x1570 [ 43.822824][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.823000][ C3] _raw_spin_lock+0x30/0x40 [ 43.823172][ C3] set_mems_allowed+0x1d/0x210 [ 43.823343][ C3] kernel_init_freeable+0x72/0x310 [ 43.823512][ C3] kernel_init+0x20/0x200 [ 43.823682][ C3] ret_from_fork+0x31/0x70 [ 43.823857][ C3] ret_from_fork_asm+0x1a/0x30 [ 43.824025][ C3] SOFTIRQ-ON-W at: [ 43.824128][ C3] __lock_acquire+0x797/0x1570 [ 43.824297][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.824464][ C3] _raw_spin_lock+0x30/0x40 [ 43.824630][ C3] set_mems_allowed+0x1d/0x210 [ 43.824799][ C3] kernel_init_freeable+0x72/0x310 [ 43.824967][ C3] kernel_init+0x20/0x200 [ 43.825141][ C3] ret_from_fork+0x31/0x70 [ 43.825309][ C3] ret_from_fork_asm+0x1a/0x30 [ 43.825475][ C3] INITIAL USE at: [ 43.825584][ C3] __lock_acquire+0x797/0x1570 [ 43.825760][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.825930][ C3] _raw_spin_lock+0x30/0x40 [ 43.826098][ C3] set_mems_allowed+0x1d/0x210 [ 43.826269][ C3] kernel_init_freeable+0x72/0x310 [ 43.826440][ C3] kernel_init+0x20/0x200 [ 43.826608][ C3] ret_from_fork+0x31/0x70 [ 43.826780][ C3] ret_from_fork_asm+0x1a/0x30 [ 43.826948][ C3] } [ 43.827020][ C3] ... key at: [] __key.387+0x0/0x40 [ 43.827225][ C3] ... acquired at: [ 43.827325][ C3] __lock_acquire+0xaf0/0x1570 [ 43.827469][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.827603][ C3] _raw_spin_lock+0x30/0x40 [ 43.827740][ C3] __get_task_comm+0x27/0x70 [ 43.827883][ C3] ref_tracker_alloc+0x2ee/0x490 [ 43.828018][ C3] linkwatch_fire_event+0x196/0x200 [ 43.828153][ C3] veth_newlink+0x367/0x830 [veth] [ 43.828301][ C3] rtnl_newlink_create+0x341/0x850 [ 43.828436][ C3] __rtnl_newlink+0xac9/0xd80 [ 43.828575][ C3] rtnl_newlink+0x63/0xa0 [ 43.828711][ C3] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 43.828855][ C3] netlink_rcv_skb+0x130/0x360 [ 43.828994][ C3] netlink_unicast+0x449/0x710 [ 43.829129][ C3] netlink_sendmsg+0x723/0xbe0 [ 43.829263][ C3] ____sys_sendmsg+0x7b2/0xa10 [ 43.829399][ C3] ___sys_sendmsg+0xee/0x170 [ 43.829539][ C3] __sys_sendmsg+0xcd/0x170 [ 43.829675][ C3] do_syscall_64+0xc6/0x1e0 [ 43.829816][ C3] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 43.829987][ C3] [ 43.830057][ C3] -> (lweventlist_lock){....}-{2:2} { [ 43.830199][ C3] INITIAL USE at: [ 43.830301][ C3] __lock_acquire+0x797/0x1570 [ 43.830472][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.830648][ C3] _raw_spin_lock_irqsave+0x3f/0x60 [ 43.830825][ C3] linkwatch_sync_dev+0x29/0x1f0 [ 43.830995][ C3] rtnl_getlink+0x4c9/0x970 [ 43.831167][ C3] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 43.831331][ C3] netlink_rcv_skb+0x130/0x360 [ 43.831503][ C3] netlink_unicast+0x449/0x710 [ 43.831672][ C3] netlink_sendmsg+0x723/0xbe0 [ 43.831851][ C3] __sys_sendto+0x37d/0x410 [ 43.832023][ C3] __x64_sys_sendto+0xe0/0x1c0 [ 43.832195][ C3] do_syscall_64+0xc6/0x1e0 [ 43.832370][ C3] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 43.832578][ C3] } [ 43.832652][ C3] ... key at: [] lweventlist_lock+0x18/0x60 [ 43.832860][ C3] ... acquired at: [ 43.832962][ C3] __lock_acquire+0xaf0/0x1570 [ 43.833102][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.833240][ C3] _raw_spin_lock_irqsave+0x3f/0x60 [ 43.833380][ C3] linkwatch_fire_event+0x74/0x200 [ 43.833519][ C3] br_stp_change_bridge_id+0x25f/0x360 [bridge] [ 43.833825][ C3] br_set_mac_address+0x1f3/0x260 [bridge] [ 43.834026][ C3] dev_set_mac_address+0x28a/0x410 [ 43.834162][ C3] dev_set_mac_address_user+0x31/0x50 [ 43.834300][ C3] do_setlink+0x17b4/0x21e0 [ 43.834438][ C3] rtnl_setlink+0x1f7/0x310 [ 43.834581][ C3] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 43.834719][ C3] netlink_rcv_skb+0x130/0x360 [ 43.834854][ C3] netlink_unicast+0x449/0x710 [ 43.835075][ C3] netlink_sendmsg+0x723/0xbe0 [ 43.835211][ C3] __sys_sendto+0x37d/0x410 [ 43.835345][ C3] __x64_sys_sendto+0xe0/0x1c0 [ 43.835476][ C3] do_syscall_64+0xc6/0x1e0 [ 43.835643][ C3] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 43.835892][ C3] [ 43.835960][ C3] -> (&br->lock){+.-.}-{2:2} { [ 43.836099][ C3] HARDIRQ-ON-W at: [ 43.836204][ C3] __lock_acquire+0x797/0x1570 [ 43.836456][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.836623][ C3] _raw_spin_lock_bh+0x38/0x50 [ 43.836879][ C3] br_set_mac_address+0xd2/0x260 [bridge] [ 43.837116][ C3] dev_set_mac_address+0x28a/0x410 [ 43.837286][ C3] dev_set_mac_address_user+0x31/0x50 [ 43.837458][ C3] do_setlink+0x17b4/0x21e0 [ 43.837710][ C3] rtnl_setlink+0x1f7/0x310 [ 43.837882][ C3] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 43.838061][ C3] netlink_rcv_skb+0x130/0x360 [ 43.838232][ C3] netlink_unicast+0x449/0x710 [ 43.838405][ C3] netlink_sendmsg+0x723/0xbe0 [ 43.838659][ C3] __sys_sendto+0x37d/0x410 [ 43.838829][ C3] __x64_sys_sendto+0xe0/0x1c0 [ 43.838999][ C3] do_syscall_64+0xc6/0x1e0 [ 43.839168][ C3] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 43.839372][ C3] IN-SOFTIRQ-W at: [ 43.839476][ C3] __lock_acquire+0x797/0x1570 [ 43.839729][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.839906][ C3] _raw_spin_lock+0x30/0x40 [ 43.840077][ C3] br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.840315][ C3] call_timer_fn+0x13b/0x230 [ 43.840486][ C3] __run_timers+0x545/0x810 [ 43.840656][ C3] run_timer_softirq+0xe8/0x1b0 [ 43.840823][ C3] __do_softirq+0x1f8/0x5df [ 43.840996][ C3] irq_exit_rcu+0x97/0xc0 [ 43.841169][ C3] sysvec_apic_timer_interrupt+0x75/0x80 [ 43.841369][ C3] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 43.841571][ C3] default_idle+0xf/0x20 [ 43.841738][ C3] default_idle_call+0x6d/0xb0 [ 43.841905][ C3] cpuidle_idle_call+0x1f4/0x280 [ 43.842152][ C3] do_idle+0xf9/0x160 [ 43.842288][ C3] cpu_startup_entry+0x54/0x60 [ 43.842454][ C3] start_secondary+0x21c/0x2b0 [ 43.842700][ C3] common_startup_64+0x12c/0x138 [ 43.842873][ C3] INITIAL USE at: [ 43.842974][ C3] __lock_acquire+0x797/0x1570 [ 43.843142][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.843313][ C3] _raw_spin_lock_bh+0x38/0x50 [ 43.843479][ C3] br_set_mac_address+0xd2/0x260 [bridge] [ 43.843711][ C3] dev_set_mac_address+0x28a/0x410 [ 43.843957][ C3] dev_set_mac_address_user+0x31/0x50 [ 43.844124][ C3] do_setlink+0x17b4/0x21e0 [ 43.844289][ C3] rtnl_setlink+0x1f7/0x310 [ 43.844460][ C3] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 43.844702][ C3] netlink_rcv_skb+0x130/0x360 [ 43.844868][ C3] netlink_unicast+0x449/0x710 [ 43.845035][ C3] netlink_sendmsg+0x723/0xbe0 [ 43.845279][ C3] __sys_sendto+0x37d/0x410 [ 43.845445][ C3] __x64_sys_sendto+0xe0/0x1c0 [ 43.845620][ C3] do_syscall_64+0xc6/0x1e0 [ 43.845865][ C3] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 43.846063][ C3] } [ 43.846131][ C3] ... key at: [] __key.6+0x0/0xfffffffffffe5ac0 [bridge] [ 43.846395][ C3] ... acquired at: [ 43.846567][ C3] mark_lock+0x28d/0x3e0 [ 43.846701][ C3] mark_usage+0xd9/0x2a0 [ 43.846834][ C3] __lock_acquire+0x797/0x1570 [ 43.846967][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.847177][ C3] _raw_spin_lock+0x30/0x40 [ 43.847310][ C3] br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.847512][ C3] call_timer_fn+0x13b/0x230 [ 43.847645][ C3] __run_timers+0x545/0x810 [ 43.847855][ C3] run_timer_softirq+0xe8/0x1b0 [ 43.847987][ C3] __do_softirq+0x1f8/0x5df [ 43.848120][ C3] irq_exit_rcu+0x97/0xc0 [ 43.848255][ C3] sysvec_apic_timer_interrupt+0x75/0x80 [ 43.848499][ C3] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 43.848664][ C3] default_idle+0xf/0x20 [ 43.848799][ C3] default_idle_call+0x6d/0xb0 [ 43.848933][ C3] cpuidle_idle_call+0x1f4/0x280 [ 43.849142][ C3] do_idle+0xf9/0x160 [ 43.849243][ C3] cpu_startup_entry+0x54/0x60 [ 43.849375][ C3] start_secondary+0x21c/0x2b0 [ 43.849508][ C3] common_startup_64+0x12c/0x138 [ 43.849642][ C3] [ 43.849785][ C3] [ 43.849785][ C3] stack backtrace: [ 43.849948][ C3] CPU: 3 PID: 0 Comm: swapper/3 Not tainted 6.9.0-rc1-virtme #1 [ 43.850151][ C3] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 43.850519][ C3] Call Trace: [ 43.850621][ C3] [ 43.850692][ C3] dump_stack_lvl+0x82/0xd0 [ 43.850830][ C3] print_irq_inversion_bug.part.0+0x3d9/0x570 [ 43.851075][ C3] ? common_startup_64+0x12c/0x138 [ 43.851210][ C3] ? __pfx_print_irq_inversion_bug.part.0+0x10/0x10 [ 43.851375][ C3] ? __pfx_usage_skip+0x10/0x10 [ 43.851510][ C3] ? __pfx_usage_match+0x10/0x10 [ 43.851728][ C3] ? arch_stack_walk+0x8c/0xf0 [ 43.851863][ C3] mark_lock_irq+0x4cd/0xa10 [ 43.851999][ C3] ? __pfx_mark_lock_irq+0x10/0x10 [ 43.852137][ C3] ? stack_trace_save+0x94/0xd0 [ 43.852274][ C3] ? add_chain_cache+0x248/0x8b0 [ 43.852408][ C3] ? save_trace+0x8f/0x5b0 [ 43.852542][ C3] mark_lock+0x28d/0x3e0 [ 43.852644][ C3] mark_usage+0xd9/0x2a0 [ 43.852745][ C3] __lock_acquire+0x797/0x1570 [ 43.852884][ C3] ? __lock_acquire+0xaf0/0x1570 [ 43.853018][ C3] ? __pfx_br_forward_delay_timer_expired+0x10/0x10 [bridge] [ 43.853250][ C3] lock_acquire.part.0+0xeb/0x330 [ 43.853386][ C3] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.853690][ C3] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 43.853824][ C3] ? trace_lock_acquire+0x135/0x1c0 [ 43.853956][ C3] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.854158][ C3] ? lock_acquire+0x32/0xc0 [ 43.854442][ C3] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.854645][ C3] _raw_spin_lock+0x30/0x40 [ 43.854782][ C3] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.854985][ C3] br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 43.855261][ C3] ? __pfx_br_forward_delay_timer_expired+0x10/0x10 [bridge] [ 43.855494][ C3] call_timer_fn+0x13b/0x230 [ 43.855632][ C3] ? call_timer_fn+0xe8/0x230 [ 43.855841][ C3] ? call_timer_fn+0xe8/0x230 [ 43.855978][ C3] ? __pfx_call_timer_fn+0x10/0x10 [ 43.856117][ C3] ? mark_lock+0x38/0x3e0 [ 43.856221][ C3] __run_timers+0x545/0x810 [ 43.856354][ C3] ? __pfx_br_forward_delay_timer_expired+0x10/0x10 [bridge] [ 43.856665][ C3] ? __pfx___run_timers+0x10/0x10 [ 43.856798][ C3] ? do_raw_spin_lock+0x131/0x270 [ 43.856930][ C3] ? __pfx_do_raw_spin_lock+0x10/0x10 [ 43.857139][ C3] ? lock_acquire+0x32/0xc0 [ 43.857273][ C3] ? run_timer_softirq+0xe0/0x1b0 [ 43.857411][ C3] run_timer_softirq+0xe8/0x1b0 [ 43.857546][ C3] __do_softirq+0x1f8/0x5df [ 43.857680][ C3] irq_exit_rcu+0x97/0xc0 [ 43.857856][ C3] sysvec_apic_timer_interrupt+0x75/0x80 [ 43.857990][ C3] [ 43.858060][ C3] [ 43.858128][ C3] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 43.858294][ C3] RIP: 0010:default_idle+0xf/0x20 [ 43.858515][ C3] Code: 4c 01 c7 4c 29 c2 e9 72 ff ff ff 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 66 90 0f 00 2d a3 30 35 00 fb f4 c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 90 90 90 90 90 [ 43.858990][ C3] RSP: 0018:ffffc9000016fdf8 EFLAGS: 00000242 [ 43.859236][ C3] RAX: 00000000000c7a49 RBX: 1ffff9200002dfc1 RCX: ffffffffa190e9d5 [ 43.859435][ C3] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffff9f2aa4a4 [ 43.859632][ C3] RBP: 0000000000000000 R08: 0000000000000001 R09: ffffed1006c3709c [ 43.859919][ C3] R10: ffff8880361b84e3 R11: ffff8880361bdc80 R12: 0000000000000000 [ 43.860118][ C3] R13: ffff888001b88040 R14: dffffc0000000000 R15: 0000000000000000 [ 43.860318][ C3] ? ct_kernel_exit.constprop.0+0xc5/0xf0 [ 43.860453][ C3] ? cpuidle_idle_call+0x1f4/0x280 [ 43.860587][ C3] default_idle_call+0x6d/0xb0 [ 43.860722][ C3] cpuidle_idle_call+0x1f4/0x280 [ 43.860854][ C3] ? __pfx_cpuidle_idle_call+0x10/0x10 [ 43.860988][ C3] ? tsc_verify_tsc_adjust+0x5e/0x2b0 [ 43.861122][ C3] do_idle+0xf9/0x160 [ 43.861222][ C3] cpu_startup_entry+0x54/0x60 [ 43.861354][ C3] start_secondary+0x21c/0x2b0 [ 43.861561][ C3] ? __pfx_start_secondary+0x10/0x10 [ 43.861696][ C3] common_startup_64+0x12c/0x138 [ 43.861831][ C3] [ 46.527889][ T535] br0: port 3(veth5) entered blocking state [ 46.528108][ T535] br0: port 3(veth5) entered disabled state [ 46.528309][ T535] veth5: entered allmulticast mode [ 46.529743][ T535] veth5: entered promiscuous mode [ 46.775584][ T540] veth5: left allmulticast mode [ 46.776110][ T540] veth5: left promiscuous mode [ 46.776390][ T540] br0: port 3(veth5) entered disabled state [ 47.771239][ T555] br0: port 3(veth5) entered blocking state [ 47.771474][ T555] br0: port 3(veth5) entered disabled state [ 47.771723][ T555] veth5: entered allmulticast mode [ 47.773342][ T555] veth5: entered promiscuous mode [ 47.773628][ T555] br0: adding interface veth5 with same address as a received packet (addr:de:ad:be:ef:42:00, vlan:0) [ 47.974706][ T560] veth5: left allmulticast mode [ 47.974878][ T560] veth5: left promiscuous mode [ 47.975122][ T560] br0: port 3(veth5) entered disabled state [ 99.523548][ T1292] br0: port 3(veth5) entered blocking state [ 99.523761][ T1292] br0: port 3(veth5) entered disabled state [ 99.523955][ T1292] veth5: entered allmulticast mode [ 99.525441][ T1292] veth5: entered promiscuous mode [ 99.723846][ T1298] br0: port 3(veth5) entered disabled state [ 99.847319][ T1299] br0: port 2(veth3) entered disabled state [ 99.932351][ T1300] br0: port 1(veth1) entered disabled state [ 100.029556][ T1301] veth5: left allmulticast mode [ 100.029726][ T1301] veth5: left promiscuous mode [ 100.029969][ T1301] br0: port 3(veth5) entered disabled state [ 100.030913][ T1301] veth3: left allmulticast mode [ 100.031052][ T1301] veth3: left promiscuous mode [ 100.031285][ T1301] br0: port 2(veth3) entered disabled state [ 100.032022][ T1301] veth1: left allmulticast mode [ 100.032157][ T1301] veth1: left promiscuous mode [ 100.032385][ T1301] br0: port 1(veth1) entered disabled state