[ 31.685207][ T284] br0: port 1(veth1) entered blocking state [ 31.685684][ T284] br0: port 1(veth1) entered disabled state [ 31.686345][ T284] veth1: entered allmulticast mode [ 31.688606][ T284] veth1: entered promiscuous mode [ 31.846077][ T286] br0: port 2(veth2) entered blocking state [ 31.846392][ T286] br0: port 2(veth2) entered disabled state [ 31.846693][ T286] veth2: entered allmulticast mode [ 31.848830][ T286] veth2: entered promiscuous mode [ 32.121876][ T7] br0: port 1(veth1) entered blocking state [ 32.122570][ T7] br0: port 1(veth1) entered forwarding state [ 32.264414][ T49] br0: port 2(veth2) entered blocking state [ 32.264695][ T49] br0: port 2(veth2) entered forwarding state [ 47.412408][ C0] [ 47.412536][ C0] ======================================================== [ 47.412785][ C0] WARNING: possible irq lock inversion dependency detected [ 47.413042][ C0] 6.9.0-rc1-virtme #1 Not tainted [ 47.413204][ C0] -------------------------------------------------------- [ 47.413467][ C0] swapper/0/0 just changed the state of lock: [ 47.413686][ C0] ffff8880074aac38 (&br->lock){+.-.}-{2:2}, at: br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.414120][ C0] but this lock took another, SOFTIRQ-unsafe lock in the past: [ 47.414386][ C0] (&p->alloc_lock){+.+.}-{2:2} [ 47.414391][ C0] [ 47.414391][ C0] [ 47.414391][ C0] and interrupts could create inverse lock ordering between them. [ 47.414391][ C0] [ 47.415018][ C0] [ 47.415018][ C0] other info that might help us debug this: [ 47.415265][ C0] Chain exists of: [ 47.415265][ C0] &br->lock --> lweventlist_lock --> &p->alloc_lock [ 47.415265][ C0] [ 47.415647][ C0] Possible interrupt unsafe locking scenario: [ 47.415647][ C0] [ 47.415901][ C0] CPU0 CPU1 [ 47.416098][ C0] ---- ---- [ 47.416259][ C0] lock(&p->alloc_lock); [ 47.416417][ C0] local_irq_disable(); [ 47.416635][ C0] lock(&br->lock); [ 47.416915][ C0] lock(lweventlist_lock); [ 47.417204][ C0] [ 47.417338][ C0] lock(&br->lock); [ 47.417495][ C0] [ 47.417495][ C0] *** DEADLOCK *** [ 47.417495][ C0] [ 47.417786][ C0] 1 lock held by swapper/0/0: [ 47.418058][ C0] #0: ffffc90000007d68 ((&p->forward_delay_timer)){+.-.}-{0:0}, at: call_timer_fn+0xe8/0x230 [ 47.418599][ C0] [ 47.418599][ C0] the shortest dependencies between 2nd lock and 1st lock: [ 47.419045][ C0] -> (&p->alloc_lock){+.+.}-{2:2} { [ 47.419318][ C0] HARDIRQ-ON-W at: [ 47.419505][ C0] __lock_acquire+0x797/0x1570 [ 47.419818][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.420122][ C0] _raw_spin_lock+0x30/0x40 [ 47.420465][ C0] set_mems_allowed+0x1d/0x210 [ 47.420782][ C0] kernel_init_freeable+0x72/0x310 [ 47.421109][ C0] kernel_init+0x20/0x200 [ 47.421421][ C0] ret_from_fork+0x31/0x70 [ 47.421718][ C0] ret_from_fork_asm+0x1a/0x30 [ 47.422020][ C0] SOFTIRQ-ON-W at: [ 47.422204][ C0] __lock_acquire+0x797/0x1570 [ 47.422523][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.422803][ C0] _raw_spin_lock+0x30/0x40 [ 47.423088][ C0] set_mems_allowed+0x1d/0x210 [ 47.423400][ C0] kernel_init_freeable+0x72/0x310 [ 47.423677][ C0] kernel_init+0x20/0x200 [ 47.423968][ C0] ret_from_fork+0x31/0x70 [ 47.424210][ C0] ret_from_fork_asm+0x1a/0x30 [ 47.424410][ C0] INITIAL USE at: [ 47.424523][ C0] __lock_acquire+0x797/0x1570 [ 47.424709][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.424896][ C0] _raw_spin_lock+0x30/0x40 [ 47.425090][ C0] set_mems_allowed+0x1d/0x210 [ 47.425283][ C0] kernel_init_freeable+0x72/0x310 [ 47.425478][ C0] kernel_init+0x20/0x200 [ 47.425758][ C0] ret_from_fork+0x31/0x70 [ 47.425951][ C0] ret_from_fork_asm+0x1a/0x30 [ 47.426135][ C0] } [ 47.426212][ C0] ... key at: [] __key.387+0x0/0x40 [ 47.426546][ C0] ... acquired at: [ 47.426657][ C0] __lock_acquire+0xaf0/0x1570 [ 47.426806][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.426954][ C0] _raw_spin_lock+0x30/0x40 [ 47.427190][ C0] __get_task_comm+0x27/0x70 [ 47.427345][ C0] ref_tracker_alloc+0x2ee/0x490 [ 47.427494][ C0] linkwatch_fire_event+0x196/0x200 [ 47.427642][ C0] veth_newlink+0x367/0x830 [veth] [ 47.427801][ C0] rtnl_newlink_create+0x341/0x850 [ 47.428047][ C0] __rtnl_newlink+0xac9/0xd80 [ 47.428202][ C0] rtnl_newlink+0x63/0xa0 [ 47.428353][ C0] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 47.428499][ C0] netlink_rcv_skb+0x130/0x360 [ 47.428765][ C0] netlink_unicast+0x449/0x710 [ 47.428926][ C0] netlink_sendmsg+0x723/0xbe0 [ 47.429077][ C0] ____sys_sendmsg+0x7b2/0xa10 [ 47.429224][ C0] ___sys_sendmsg+0xee/0x170 [ 47.429490][ C0] __sys_sendmsg+0xcd/0x170 [ 47.429654][ C0] do_syscall_64+0xc6/0x1e0 [ 47.429806][ C0] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 47.430001][ C0] [ 47.430085][ C0] -> (lweventlist_lock){....}-{2:2} { [ 47.430439][ C0] INITIAL USE at: [ 47.430556][ C0] __lock_acquire+0x797/0x1570 [ 47.430746][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.430940][ C0] _raw_spin_lock_irqsave+0x3f/0x60 [ 47.431127][ C0] linkwatch_sync_dev+0x29/0x1f0 [ 47.431329][ C0] rtnl_getlink+0x4c9/0x970 [ 47.431518][ C0] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 47.431704][ C0] netlink_rcv_skb+0x130/0x360 [ 47.431897][ C0] netlink_unicast+0x449/0x710 [ 47.432175][ C0] netlink_sendmsg+0x723/0xbe0 [ 47.432390][ C0] __sys_sendto+0x37d/0x410 [ 47.432592][ C0] __x64_sys_sendto+0xe0/0x1c0 [ 47.432785][ C0] do_syscall_64+0xc6/0x1e0 [ 47.432989][ C0] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 47.433315][ C0] } [ 47.433494][ C0] ... key at: [] lweventlist_lock+0x18/0x60 [ 47.433717][ C0] ... acquired at: [ 47.433827][ C0] __lock_acquire+0xaf0/0x1570 [ 47.434002][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.434150][ C0] _raw_spin_lock_irqsave+0x3f/0x60 [ 47.434299][ C0] linkwatch_fire_event+0x74/0x200 [ 47.434549][ C0] br_stp_change_bridge_id+0x25f/0x360 [bridge] [ 47.434778][ C0] br_set_mac_address+0x1f3/0x260 [bridge] [ 47.435086][ C0] dev_set_mac_address+0x28a/0x410 [ 47.435319][ C0] dev_set_mac_address_user+0x31/0x50 [ 47.435476][ C0] do_setlink+0x17b4/0x21e0 [ 47.435638][ C0] rtnl_setlink+0x1f7/0x310 [ 47.435890][ C0] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 47.436037][ C0] netlink_rcv_skb+0x130/0x360 [ 47.436212][ C0] netlink_unicast+0x449/0x710 [ 47.436364][ C0] netlink_sendmsg+0x723/0xbe0 [ 47.436518][ C0] __sys_sendto+0x37d/0x410 [ 47.436665][ C0] __x64_sys_sendto+0xe0/0x1c0 [ 47.436822][ C0] do_syscall_64+0xc6/0x1e0 [ 47.437069][ C0] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 47.437361][ C0] [ 47.437435][ C0] -> (&br->lock){+.-.}-{2:2} { [ 47.437592][ C0] HARDIRQ-ON-W at: [ 47.437704][ C0] __lock_acquire+0x797/0x1570 [ 47.437893][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.438074][ C0] _raw_spin_lock_bh+0x38/0x50 [ 47.438264][ C0] br_set_mac_address+0xd2/0x260 [bridge] [ 47.438632][ C0] dev_set_mac_address+0x28a/0x410 [ 47.438824][ C0] dev_set_mac_address_user+0x31/0x50 [ 47.439010][ C0] do_setlink+0x17b4/0x21e0 [ 47.439206][ C0] rtnl_setlink+0x1f7/0x310 [ 47.439487][ C0] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 47.439671][ C0] netlink_rcv_skb+0x130/0x360 [ 47.439856][ C0] netlink_unicast+0x449/0x710 [ 47.440045][ C0] netlink_sendmsg+0x723/0xbe0 [ 47.440236][ C0] __sys_sendto+0x37d/0x410 [ 47.440427][ C0] __x64_sys_sendto+0xe0/0x1c0 [ 47.440703][ C0] do_syscall_64+0xc6/0x1e0 [ 47.440907][ C0] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 47.441138][ C0] IN-SOFTIRQ-W at: [ 47.441315][ C0] __lock_acquire+0x797/0x1570 [ 47.441609][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.441795][ C0] _raw_spin_lock+0x30/0x40 [ 47.441979][ C0] br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.442344][ C0] call_timer_fn+0x13b/0x230 [ 47.442534][ C0] __run_timers+0x545/0x810 [ 47.442737][ C0] run_timer_softirq+0xe8/0x1b0 [ 47.442922][ C0] __do_softirq+0x1f8/0x5df [ 47.443224][ C0] irq_exit_rcu+0x97/0xc0 [ 47.443408][ C0] sysvec_apic_timer_interrupt+0x75/0x80 [ 47.443629][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 47.443943][ C0] default_idle+0xf/0x20 [ 47.444141][ C0] default_idle_call+0x6d/0xb0 [ 47.444339][ C0] cpuidle_idle_call+0x1f4/0x280 [ 47.444620][ C0] do_idle+0xf9/0x160 [ 47.444768][ C0] cpu_startup_entry+0x54/0x60 [ 47.444957][ C0] rest_init+0x14f/0x260 [ 47.445214][ C0] start_kernel+0x318/0x3d0 [ 47.445508][ C0] x86_64_start_reservations+0x18/0x30 [ 47.445738][ C0] x86_64_start_kernel+0xba/0x110 [ 47.445941][ C0] common_startup_64+0x12c/0x138 [ 47.446155][ C0] INITIAL USE at: [ 47.446281][ C0] __lock_acquire+0x797/0x1570 [ 47.446494][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.446698][ C0] _raw_spin_lock_bh+0x38/0x50 [ 47.446908][ C0] br_set_mac_address+0xd2/0x260 [bridge] [ 47.447206][ C0] dev_set_mac_address+0x28a/0x410 [ 47.447412][ C0] dev_set_mac_address_user+0x31/0x50 [ 47.447707][ C0] do_setlink+0x17b4/0x21e0 [ 47.447910][ C0] rtnl_setlink+0x1f7/0x310 [ 47.448124][ C0] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 47.448434][ C0] netlink_rcv_skb+0x130/0x360 [ 47.448640][ C0] netlink_unicast+0x449/0x710 [ 47.448849][ C0] netlink_sendmsg+0x723/0xbe0 [ 47.449053][ C0] __sys_sendto+0x37d/0x410 [ 47.449368][ C0] __x64_sys_sendto+0xe0/0x1c0 [ 47.449576][ C0] do_syscall_64+0xc6/0x1e0 [ 47.449780][ C0] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 47.450129][ C0] } [ 47.450221][ C0] ... key at: [] __key.6+0x0/0xfffffffffffe5ac0 [bridge] [ 47.450552][ C0] ... acquired at: [ 47.450678][ C0] mark_lock+0x28d/0x3e0 [ 47.450940][ C0] mark_usage+0xd9/0x2a0 [ 47.451106][ C0] __lock_acquire+0x797/0x1570 [ 47.451287][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.451451][ C0] _raw_spin_lock+0x30/0x40 [ 47.451632][ C0] br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.452056][ C0] call_timer_fn+0x13b/0x230 [ 47.452231][ C0] __run_timers+0x545/0x810 [ 47.452398][ C0] run_timer_softirq+0xe8/0x1b0 [ 47.452657][ C0] __do_softirq+0x1f8/0x5df [ 47.452821][ C0] irq_exit_rcu+0x97/0xc0 [ 47.452990][ C0] sysvec_apic_timer_interrupt+0x75/0x80 [ 47.453203][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 47.453506][ C0] default_idle+0xf/0x20 [ 47.453669][ C0] default_idle_call+0x6d/0xb0 [ 47.453834][ C0] cpuidle_idle_call+0x1f4/0x280 [ 47.454000][ C0] do_idle+0xf9/0x160 [ 47.454129][ C0] cpu_startup_entry+0x54/0x60 [ 47.454504][ C0] rest_init+0x14f/0x260 [ 47.454676][ C0] start_kernel+0x318/0x3d0 [ 47.454846][ C0] x86_64_start_reservations+0x18/0x30 [ 47.455013][ C0] x86_64_start_kernel+0xba/0x110 [ 47.455203][ C0] common_startup_64+0x12c/0x138 [ 47.455368][ C0] [ 47.455448][ C0] [ 47.455448][ C0] stack backtrace: [ 47.455648][ C0] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 6.9.0-rc1-virtme #1 [ 47.455985][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 47.456330][ C0] Call Trace: [ 47.456447][ C0] [ 47.456521][ C0] dump_stack_lvl+0x82/0xd0 [ 47.456765][ C0] print_irq_inversion_bug.part.0+0x3d9/0x570 [ 47.456965][ C0] ? common_startup_64+0x12c/0x138 [ 47.457120][ C0] ? __pfx_print_irq_inversion_bug.part.0+0x10/0x10 [ 47.457310][ C0] ? __pfx_usage_skip+0x10/0x10 [ 47.457456][ C0] ? __pfx_usage_match+0x10/0x10 [ 47.457607][ C0] ? arch_stack_walk+0x8c/0xf0 [ 47.457755][ C0] mark_lock_irq+0x4cd/0xa10 [ 47.457912][ C0] ? __pfx_mark_lock_irq+0x10/0x10 [ 47.458160][ C0] ? stack_trace_save+0x94/0xd0 [ 47.458310][ C0] ? add_chain_cache+0x248/0x8b0 [ 47.458458][ C0] ? save_trace+0x8f/0x5b0 [ 47.458610][ C0] mark_lock+0x28d/0x3e0 [ 47.458818][ C0] mark_usage+0xd9/0x2a0 [ 47.458935][ C0] __lock_acquire+0x797/0x1570 [ 47.459084][ C0] ? __lock_acquire+0xaf0/0x1570 [ 47.459240][ C0] ? __pfx_br_forward_delay_timer_expired+0x10/0x10 [bridge] [ 47.459597][ C0] lock_acquire.part.0+0xeb/0x330 [ 47.459745][ C0] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.459977][ C0] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 47.460125][ C0] ? trace_lock_acquire+0x135/0x1c0 [ 47.460371][ C0] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.460589][ C0] ? lock_acquire+0x32/0xc0 [ 47.460734][ C0] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.460984][ C0] _raw_spin_lock+0x30/0x40 [ 47.461144][ C0] ? br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.461411][ C0] br_forward_delay_timer_expired+0x48/0x440 [bridge] [ 47.461630][ C0] ? __pfx_br_forward_delay_timer_expired+0x10/0x10 [bridge] [ 47.461894][ C0] call_timer_fn+0x13b/0x230 [ 47.462045][ C0] ? call_timer_fn+0xe8/0x230 [ 47.462191][ C0] ? call_timer_fn+0xe8/0x230 [ 47.462337][ C0] ? __pfx_call_timer_fn+0x10/0x10 [ 47.462488][ C0] ? mark_lock+0x38/0x3e0 [ 47.462604][ C0] __run_timers+0x545/0x810 [ 47.462752][ C0] ? __pfx_br_forward_delay_timer_expired+0x10/0x10 [bridge] [ 47.463018][ C0] ? __pfx___run_timers+0x10/0x10 [ 47.463254][ C0] ? do_raw_spin_lock+0x131/0x270 [ 47.463401][ C0] ? __pfx_do_raw_spin_lock+0x10/0x10 [ 47.463545][ C0] ? lock_acquire+0x32/0xc0 [ 47.463690][ C0] ? run_timer_softirq+0xe0/0x1b0 [ 47.463841][ C0] run_timer_softirq+0xe8/0x1b0 [ 47.464087][ C0] __do_softirq+0x1f8/0x5df [ 47.464234][ C0] irq_exit_rcu+0x97/0xc0 [ 47.464347][ C0] sysvec_apic_timer_interrupt+0x75/0x80 [ 47.464500][ C0] [ 47.464578][ C0] [ 47.464655][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 47.464949][ C0] RIP: 0010:default_idle+0xf/0x20 [ 47.465115][ C0] 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 [ 47.465755][ C0] RSP: 0018:ffffffffb6407e00 EFLAGS: 00000242 [ 47.465963][ C0] RAX: 000000000009aa43 RBX: 1ffffffff6c80fc2 RCX: ffffffffb550e9d5 [ 47.466197][ C0] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffffb2eaa4a4 [ 47.466534][ C0] RBP: 0000000000000000 R08: 0000000000000001 R09: ffffed1006c0709c [ 47.466806][ C0] R10: ffff8880360384e3 R11: ffff88803603dc80 R12: 0000000000000000 [ 47.467059][ C0] R13: ffffffffb641d000 R14: dffffc0000000000 R15: 0000000000014770 [ 47.467309][ C0] ? ct_kernel_exit.constprop.0+0xc5/0xf0 [ 47.467473][ C0] ? cpuidle_idle_call+0x1f4/0x280 [ 47.467640][ C0] default_idle_call+0x6d/0xb0 [ 47.467807][ C0] cpuidle_idle_call+0x1f4/0x280 [ 47.467963][ C0] ? __pfx_cpuidle_idle_call+0x10/0x10 [ 47.468127][ C0] ? tsc_verify_tsc_adjust+0x5e/0x2b0 [ 47.468292][ C0] do_idle+0xf9/0x160 [ 47.468510][ C0] cpu_startup_entry+0x54/0x60 [ 47.468675][ C0] rest_init+0x14f/0x260 [ 47.468799][ C0] start_kernel+0x318/0x3d0 [ 47.468966][ C0] x86_64_start_reservations+0x18/0x30 [ 47.469137][ C0] x86_64_start_kernel+0xba/0x110 [ 47.469414][ C0] common_startup_64+0x12c/0x138 [ 47.469581][ C0] [ 47.496358][ T337] GACT probability NOT on [ 223.087403][ T1476] br0: port 2(veth2) entered disabled state [ 223.185013][ T1477] br0: port 1(veth1) entered disabled state [ 223.291550][ T1478] veth2: left allmulticast mode [ 223.291748][ T1478] veth2: left promiscuous mode [ 223.292007][ T1478] br0: port 2(veth2) entered disabled state [ 223.292963][ T1478] veth1: left allmulticast mode [ 223.293107][ T1478] veth1: left promiscuous mode [ 223.294098][ T1478] br0: port 1(veth1) entered disabled state