[ 43.376287][ T570] br1: port 1(veth1) entered blocking state [ 43.376631][ T570] br1: port 1(veth1) entered disabled state [ 43.376828][ T570] veth1: entered allmulticast mode [ 43.378365][ T570] veth1: entered promiscuous mode [ 43.479508][ T46] br1: port 1(veth1) entered blocking state [ 43.479805][ T46] br1: port 1(veth1) entered forwarding state [ 43.539322][ T583] br1: port 2(veth2) entered blocking state [ 43.539676][ T583] br1: port 2(veth2) entered disabled state [ 43.540443][ T583] veth2: entered allmulticast mode [ 43.543579][ T583] veth2: entered promiscuous mode [ 43.648539][ T46] br1: port 2(veth2) entered blocking state [ 43.648744][ T46] br1: port 2(veth2) entered forwarding state [ 48.692091][ C0] [ 48.692216][ C0] ======================================================== [ 48.692370][ C0] WARNING: possible irq lock inversion dependency detected [ 48.692510][ C0] 7.1.0-rc5-virtme #1 Not tainted [ 48.692609][ C0] -------------------------------------------------------- [ 48.692738][ C0] swapper/0/0 just changed the state of lock: [ 48.692847][ C0] ff1100000b9a2578 (&ndev->lock){++-.}-{3:3}, at: addrconf_rs_timer+0xb0/0x770 [ 48.693016][ C0] but this lock took another, SOFTIRQ-unsafe lock in the past: [ 48.693156][ C0] (acaddr_hash_lock){+.+.}-{3:3} [ 48.693158][ C0] [ 48.693158][ C0] [ 48.693158][ C0] and interrupts could create inverse lock ordering between them. [ 48.693158][ C0] [ 48.693490][ C0] [ 48.693490][ C0] other info that might help us debug this: [ 48.693618][ C0] Possible interrupt unsafe locking scenario: [ 48.693618][ C0] [ 48.693749][ C0] CPU0 CPU1 [ 48.693836][ C0] ---- ---- [ 48.693923][ C0] lock(acaddr_hash_lock); [ 48.694011][ C0] local_irq_disable(); [ 48.694127][ C0] lock(&ndev->lock); [ 48.694244][ C0] lock(acaddr_hash_lock); [ 48.694366][ C0] [ 48.694439][ C0] lock(&ndev->lock); [ 48.694509][ C0] [ 48.694509][ C0] *** DEADLOCK *** [ 48.694509][ C0] [ 48.694638][ C0] 1 lock held by swapper/0/0: [ 48.694725][ C0] #0: ffa0000000007c90 ((&ndev->rs_timer)){+.-.}-{0:0}, at: call_timer_fn+0x113/0x4f0 [ 48.694883][ C0] [ 48.694883][ C0] the shortest dependencies between 2nd lock and 1st lock: [ 48.695035][ C0] -> (acaddr_hash_lock){+.+.}-{3:3} { [ 48.695135][ C0] HARDIRQ-ON-W at: [ 48.695206][ C0] __lock_acquire+0x378/0xc10 [ 48.695322][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.695432][ C0] _raw_spin_lock+0x33/0x40 [ 48.695545][ C0] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 48.695676][ C0] __ipv6_dev_ac_inc+0x57e/0x930 [ 48.695787][ C0] addrconf_join_anycast+0x1bc/0x260 [ 48.695899][ C0] __ipv6_ifa_notify+0x75b/0xad0 [ 48.696017][ C0] addrconf_dad_completed+0x14b/0xe10 [ 48.696155][ C0] addrconf_dad_work+0x3c1/0x930 [ 48.696265][ C0] process_one_work+0xdf8/0x1410 [ 48.696376][ C0] worker_thread+0x4f1/0xd60 [ 48.696485][ C0] kthread+0x367/0x460 [ 48.696595][ C0] ret_from_fork+0x474/0x6b0 [ 48.696706][ C0] ret_from_fork_asm+0x11/0x20 [ 48.696815][ C0] SOFTIRQ-ON-W at: [ 48.696880][ C0] __lock_acquire+0x378/0xc10 [ 48.696990][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.697107][ C0] _raw_spin_lock+0x33/0x40 [ 48.697216][ C0] __ipv6_dev_ac_dec+0x236/0x5d0 [ 48.697326][ C0] addrconf_leave_anycast+0x1bc/0x260 [ 48.697455][ C0] dev_forward_change+0x3b3/0x850 [ 48.697565][ C0] addrconf_fixup_forwarding+0x2af/0x4d0 [ 48.697698][ C0] addrconf_sysctl_forward+0x209/0x2b0 [ 48.697831][ C0] proc_sys_call_handler+0x31b/0x480 [ 48.697942][ C0] new_sync_write+0x333/0x750 [ 48.698055][ C0] vfs_write+0x6a4/0xc10 [ 48.698171][ C0] ksys_write+0x116/0x250 [ 48.698287][ C0] do_syscall_64+0x117/0x590 [ 48.698405][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 48.698537][ C0] INITIAL USE at: [ 48.698602][ C0] __lock_acquire+0x378/0xc10 [ 48.698711][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.698820][ C0] _raw_spin_lock+0x33/0x40 [ 48.698933][ C0] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 48.699069][ C0] __ipv6_dev_ac_inc+0x57e/0x930 [ 48.699184][ C0] addrconf_join_anycast+0x1bc/0x260 [ 48.699294][ C0] __ipv6_ifa_notify+0x75b/0xad0 [ 48.699404][ C0] addrconf_dad_completed+0x14b/0xe10 [ 48.699515][ C0] addrconf_dad_work+0x3c1/0x930 [ 48.699625][ C0] process_one_work+0xdf8/0x1410 [ 48.699736][ C0] worker_thread+0x4f1/0xd60 [ 48.699846][ C0] kthread+0x367/0x460 [ 48.699957][ C0] ret_from_fork+0x474/0x6b0 [ 48.700071][ C0] ret_from_fork_asm+0x11/0x20 [ 48.700184][ C0] } [ 48.700231][ C0] ... key at: [] acaddr_hash_lock+0x18/0x45a0 [ 48.700367][ C0] ... acquired at: [ 48.700434][ C0] __lock_acquire+0x508/0xc10 [ 48.700524][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.700612][ C0] _raw_spin_lock+0x33/0x40 [ 48.700699][ C0] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 48.700811][ C0] __ipv6_dev_ac_inc+0x57e/0x930 [ 48.700900][ C0] addrconf_join_anycast+0x1bc/0x260 [ 48.700988][ C0] __ipv6_ifa_notify+0x75b/0xad0 [ 48.701082][ C0] addrconf_dad_completed+0x14b/0xe10 [ 48.701173][ C0] addrconf_dad_work+0x3c1/0x930 [ 48.701262][ C0] process_one_work+0xdf8/0x1410 [ 48.701352][ C0] worker_thread+0x4f1/0xd60 [ 48.701440][ C0] kthread+0x367/0x460 [ 48.701506][ C0] ret_from_fork+0x474/0x6b0 [ 48.701592][ C0] ret_from_fork_asm+0x11/0x20 [ 48.701679][ C0] [ 48.701725][ C0] -> (&ndev->lock){++-.}-{3:3} { [ 48.701814][ C0] HARDIRQ-ON-W at: [ 48.701879][ C0] __lock_acquire+0x378/0xc10 [ 48.701990][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.702106][ C0] _raw_write_lock_bh+0x38/0x50 [ 48.702217][ C0] addrconf_permanent_addr+0x108/0x9c0 [ 48.702327][ C0] addrconf_notify+0x151/0xf30 [ 48.702437][ C0] notifier_call_chain+0xb0/0x320 [ 48.702547][ C0] __dev_notify_flags+0xde/0x280 [ 48.702662][ C0] netif_change_flags+0xfe/0x190 [ 48.702770][ C0] do_setlink.isra.0+0x1cc3/0x2750 [ 48.702882][ C0] rtnl_newlink+0x8d1/0xef0 [ 48.702992][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 48.703109][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 48.703219][ C0] netlink_unicast+0x486/0x750 [ 48.703328][ C0] netlink_sendmsg+0x735/0xc60 [ 48.703438][ C0] ____sys_sendmsg+0x419/0x850 [ 48.703548][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 48.703658][ C0] __sys_sendmsg+0x145/0x1f0 [ 48.703766][ C0] do_syscall_64+0x117/0x590 [ 48.703875][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 48.704005][ C0] HARDIRQ-ON-R at: [ 48.704074][ C0] __lock_acquire+0x378/0xc10 [ 48.704182][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.704291][ C0] _raw_read_lock_bh+0x44/0x80 [ 48.704399][ C0] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 48.704532][ C0] inet6_fill_link_af+0x5c/0xe0 [ 48.704642][ C0] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 48.704773][ C0] rtnl_getlink+0x9c9/0xeb0 [ 48.704883][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 48.704993][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 48.705111][ C0] netlink_unicast+0x486/0x750 [ 48.705223][ C0] netlink_sendmsg+0x735/0xc60 [ 48.705332][ C0] ____sys_sendmsg+0x419/0x850 [ 48.705439][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 48.705546][ C0] __sys_sendmsg+0x145/0x1f0 [ 48.705654][ C0] do_syscall_64+0x117/0x590 [ 48.705763][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 48.705893][ C0] IN-SOFTIRQ-W at: [ 48.705958][ C0] __lock_acquire+0x378/0xc10 [ 48.706073][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.706182][ C0] _raw_write_lock+0x33/0x40 [ 48.706293][ C0] addrconf_rs_timer+0xb0/0x770 [ 48.706411][ C0] call_timer_fn+0x163/0x4f0 [ 48.706531][ C0] __run_timers+0x68f/0xab0 [ 48.706651][ C0] run_timer_softirq+0xf0/0x160 [ 48.706762][ C0] handle_softirqs+0x1d8/0x940 [ 48.706872][ C0] __irq_exit_rcu+0x103/0x1c0 [ 48.706981][ C0] irq_exit_rcu+0xe/0x30 [ 48.707098][ C0] sysvec_apic_timer_interrupt+0x9d/0xe0 [ 48.707229][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 48.707362][ C0] pv_native_safe_halt+0xf/0x10 [ 48.707472][ C0] default_idle+0x9/0x10 [ 48.707581][ C0] default_idle_call+0x6e/0xb0 [ 48.707691][ C0] cpuidle_idle_call.constprop.0+0x237/0x410 [ 48.707824][ C0] do_idle+0xf5/0x160 [ 48.707911][ C0] cpu_startup_entry+0x53/0x70 [ 48.708020][ C0] rest_init+0x1f7/0x200 [ 48.708136][ C0] start_kernel+0x3ad/0x3b0 [ 48.708244][ C0] x86_64_start_reservations+0x24/0x30 [ 48.708357][ C0] x86_64_start_kernel+0x12b/0x130 [ 48.708466][ C0] common_startup_64+0x13e/0x148 [ 48.708576][ C0] INITIAL USE at: [ 48.708640][ C0] __lock_acquire+0x378/0xc10 [ 48.708748][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.708857][ C0] _raw_write_lock_bh+0x38/0x50 [ 48.708968][ C0] addrconf_permanent_addr+0x108/0x9c0 [ 48.709085][ C0] addrconf_notify+0x151/0xf30 [ 48.709195][ C0] notifier_call_chain+0xb0/0x320 [ 48.709302][ C0] __dev_notify_flags+0xde/0x280 [ 48.709412][ C0] netif_change_flags+0xfe/0x190 [ 48.709523][ C0] do_setlink.isra.0+0x1cc3/0x2750 [ 48.709631][ C0] rtnl_newlink+0x8d1/0xef0 [ 48.709740][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 48.709848][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 48.709957][ C0] netlink_unicast+0x486/0x750 [ 48.710071][ C0] netlink_sendmsg+0x735/0xc60 [ 48.710184][ C0] ____sys_sendmsg+0x419/0x850 [ 48.710299][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 48.710422][ C0] __sys_sendmsg+0x145/0x1f0 [ 48.710546][ C0] do_syscall_64+0x117/0x590 [ 48.710661][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 48.710796][ C0] INITIAL READ USE at: [ 48.710867][ C0] __lock_acquire+0x378/0xc10 [ 48.710976][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.711091][ C0] _raw_read_lock_bh+0x44/0x80 [ 48.711200][ C0] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 48.711331][ C0] inet6_fill_link_af+0x5c/0xe0 [ 48.711443][ C0] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 48.711576][ C0] rtnl_getlink+0x9c9/0xeb0 [ 48.711685][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 48.711796][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 48.711906][ C0] netlink_unicast+0x486/0x750 [ 48.712020][ C0] netlink_sendmsg+0x735/0xc60 [ 48.712132][ C0] ____sys_sendmsg+0x419/0x850 [ 48.712238][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 48.712348][ C0] __sys_sendmsg+0x145/0x1f0 [ 48.712455][ C0] do_syscall_64+0x117/0x590 [ 48.712564][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 48.712691][ C0] } [ 48.712735][ C0] ... key at: [] __key.37+0x0/0x40 [ 48.712867][ C0] ... acquired at: [ 48.712931][ C0] mark_lock+0x1d7/0xa00 [ 48.713019][ C0] mark_usage+0x42/0x170 [ 48.713110][ C0] __lock_acquire+0x378/0xc10 [ 48.713199][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.713286][ C0] _raw_write_lock+0x33/0x40 [ 48.713372][ C0] addrconf_rs_timer+0xb0/0x770 [ 48.713463][ C0] call_timer_fn+0x163/0x4f0 [ 48.713550][ C0] __run_timers+0x68f/0xab0 [ 48.713636][ C0] run_timer_softirq+0xf0/0x160 [ 48.713724][ C0] handle_softirqs+0x1d8/0x940 [ 48.713814][ C0] __irq_exit_rcu+0x103/0x1c0 [ 48.713901][ C0] irq_exit_rcu+0xe/0x30 [ 48.713986][ C0] sysvec_apic_timer_interrupt+0x9d/0xe0 [ 48.714099][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 48.714207][ C0] pv_native_safe_halt+0xf/0x10 [ 48.714294][ C0] default_idle+0x9/0x10 [ 48.714380][ C0] default_idle_call+0x6e/0xb0 [ 48.714468][ C0] cpuidle_idle_call.constprop.0+0x237/0x410 [ 48.714575][ C0] do_idle+0xf5/0x160 [ 48.714640][ C0] cpu_startup_entry+0x53/0x70 [ 48.714726][ C0] rest_init+0x1f7/0x200 [ 48.714813][ C0] start_kernel+0x3ad/0x3b0 [ 48.714900][ C0] x86_64_start_reservations+0x24/0x30 [ 48.714988][ C0] x86_64_start_kernel+0x12b/0x130 [ 48.715081][ C0] common_startup_64+0x13e/0x148 [ 48.715170][ C0] [ 48.715215][ C0] [ 48.715215][ C0] stack backtrace: [ 48.715332][ C0] CPU: 0 UID: 0 PID: 0 Comm: swapper/0 Not tainted 7.1.0-rc5-virtme #1 PREEMPT(full) [ 48.715336][ C0] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 48.715338][ C0] Call Trace: [ 48.715339][ C0] [ 48.715341][ C0] dump_stack_lvl+0x6f/0xa0 [ 48.715345][ C0] print_irq_inversion_bug.part.0.cold+0xe6/0x143 [ 48.715348][ C0] mark_lock_irq+0x989/0x9c0 [ 48.715351][ C0] mark_lock+0x1d7/0xa00 [ 48.715353][ C0] mark_usage+0x42/0x170 [ 48.715354][ C0] __lock_acquire+0x378/0xc10 [ 48.715356][ C0] ? add_chain_cache+0x12d/0x570 [ 48.715358][ C0] lock_acquire.part.0+0xbc/0x260 [ 48.715359][ C0] ? addrconf_rs_timer+0xb0/0x770 [ 48.715361][ C0] ? rcu_is_watching+0x15/0xd0 [ 48.715364][ C0] ? lock_acquire+0x134/0x160 [ 48.715366][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 48.715368][ C0] _raw_write_lock+0x33/0x40 [ 48.715370][ C0] ? addrconf_rs_timer+0xb0/0x770 [ 48.715371][ C0] addrconf_rs_timer+0xb0/0x770 [ 48.715373][ C0] ? lock_acquire.part.0+0xbc/0x260 [ 48.715375][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 48.715377][ C0] ? lock_acquire+0x134/0x160 [ 48.715378][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 48.715380][ C0] call_timer_fn+0x163/0x4f0 [ 48.715382][ C0] ? detach_if_pending+0x1d0/0x1d0 [ 48.715383][ C0] ? debug_object_active_state+0x430/0x430 [ 48.715387][ C0] ? find_held_lock+0x2b/0x80 [ 48.715390][ C0] ? __lock_release.isra.0+0x6b/0x1a0 [ 48.715392][ C0] ? rcu_is_watching+0x15/0xd0 [ 48.715394][ C0] __run_timers+0x68f/0xab0 [ 48.715395][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 48.715398][ C0] ? __bpf_trace_itimer_expire+0x10/0x10 [ 48.715399][ C0] ? __lock_acquire+0x508/0xc10 [ 48.715402][ C0] ? __rwlock_init+0x150/0x150 [ 48.715405][ C0] run_timer_softirq+0xf0/0x160 [ 48.715406][ C0] ? __run_timers+0xab0/0xab0 [ 48.715408][ C0] ? trace_irq_enable.constprop.0+0x9b/0x180 [ 48.715411][ C0] ? rcu_is_watching+0x15/0xd0 [ 48.715413][ C0] handle_softirqs+0x1d8/0x940 [ 48.715414][ C0] ? find_held_lock+0x2b/0x80 [ 48.715416][ C0] ? __lock_release.isra.0+0x6b/0x1a0 [ 48.715418][ C0] ? _local_bh_enable+0xd0/0xd0 [ 48.715420][ C0] __irq_exit_rcu+0x103/0x1c0 [ 48.715421][ C0] irq_exit_rcu+0xe/0x30 [ 48.715422][ C0] sysvec_apic_timer_interrupt+0x9d/0xe0 [ 48.715424][ C0] [ 48.715425][ C0] [ 48.715426][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 48.715427][ C0] RIP: 0010:pv_native_safe_halt+0xf/0x10 [ 48.715430][ C0] Code: 48 8b 3d 44 93 00 02 e8 1f 00 00 00 48 2b 05 c8 31 a3 00 c3 0f 1f 80 00 00 00 00 f3 0f 1e fa eb 07 0f 00 2d 43 b4 22 00 fb f4 0f 1f 40 d6 48 83 ec 20 8b 17 49 89 f8 83 e2 fe 41 89 d2 0f 01 [ 48.715431][ C0] RSP: 0018:ffffffff8f807e00 EFLAGS: 00000282 [ 48.715434][ C0] RAX: 0000000000127f6f RBX: ffffffff8f81c740 RCX: ffffffff8c8d9667 [ 48.715435][ C0] RDX: ffffffff8f81c740 RSI: ffffffff8f602230 RDI: ffffffff8f06f6c0 [ 48.715436][ C0] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 48.715437][ C0] R10: 0000000000000000 R11: 0000000000000001 R12: 1ffffffff1f00fc3 [ 48.715437][ C0] R13: 0000000000000000 R14: dffffc0000000000 R15: 0000000000014770 [ 48.715439][ C0] ? cpuidle_idle_call.constprop.0+0x237/0x410 [ 48.715441][ C0] default_idle+0x9/0x10 [ 48.715443][ C0] default_idle_call+0x6e/0xb0 [ 48.715444][ C0] cpuidle_idle_call.constprop.0+0x237/0x410 [ 48.715446][ C0] ? arch_cpu_idle_exit+0x40/0x40 [ 48.715447][ C0] ? mark_tsc_async_resets+0x30/0x30 [ 48.715450][ C0] ? trace_irq_enable.constprop.0+0x9b/0x180 [ 48.715452][ C0] ? rcu_is_watching+0x15/0xd0 [ 48.715453][ C0] do_idle+0xf5/0x160 [ 48.715455][ C0] cpu_startup_entry+0x53/0x70 [ 48.715456][ C0] rest_init+0x1f7/0x200 [ 48.715458][ C0] start_kernel+0x3ad/0x3b0 [ 48.715460][ C0] x86_64_start_reservations+0x24/0x30 [ 48.715462][ C0] x86_64_start_kernel+0x12b/0x130 [ 48.715464][ C0] common_startup_64+0x13e/0x148 [ 48.715467][ C0] [ 61.379040][ T1046] br1: port 2(veth2) entered disabled state [ 61.400144][ T1048] veth2: left allmulticast mode [ 61.400282][ T1048] veth2: left promiscuous mode [ 61.400440][ T1048] br1: port 2(veth2) entered disabled state [ 61.422166][ T1050] br1: port 1(veth1) entered disabled state [ 61.443383][ T1052] veth1: left allmulticast mode [ 61.443509][ T1052] veth1: left promiscuous mode [ 61.443662][ T1052] br1: port 1(veth1) entered disabled state