[ 66.017086][ T615] br1: port 1(veth1) entered blocking state [ 66.017859][ T615] br1: port 1(veth1) entered disabled state [ 66.018063][ T615] veth1: entered allmulticast mode [ 66.019600][ T615] veth1: entered promiscuous mode [ 66.047604][ T38] br1: port 1(veth1) entered blocking state [ 66.047798][ T38] br1: port 1(veth1) entered forwarding state [ 66.083982][ T617] br1: port 2(veth2) entered blocking state [ 66.084248][ T617] br1: port 2(veth2) entered disabled state [ 66.084500][ T617] veth2: entered allmulticast mode [ 66.086361][ T617] veth2: entered promiscuous mode [ 66.110800][ T39] br1: port 2(veth2) entered blocking state [ 66.111001][ T39] br1: port 2(veth2) entered forwarding state [ 71.127243][ C0] [ 71.127369][ C0] ======================================================== [ 71.127527][ C0] WARNING: possible irq lock inversion dependency detected [ 71.127668][ C0] 7.1.0-rc5-virtme #1 Not tainted [ 71.127761][ C0] -------------------------------------------------------- [ 71.127905][ C0] swapper/0/0 just changed the state of lock: [ 71.128015][ C0] ff11000012f1d578 (&ndev->lock){++-.}-{3:3}, at: addrconf_rs_timer+0xb0/0x770 [ 71.128202][ C0] but this lock took another, SOFTIRQ-unsafe lock in the past: [ 71.128341][ C0] (acaddr_hash_lock){+.+.}-{3:3} [ 71.128344][ C0] [ 71.128344][ C0] [ 71.128344][ C0] and interrupts could create inverse lock ordering between them. [ 71.128344][ C0] [ 71.128684][ C0] [ 71.128684][ C0] other info that might help us debug this: [ 71.128815][ C0] Possible interrupt unsafe locking scenario: [ 71.128815][ C0] [ 71.128948][ C0] CPU0 CPU1 [ 71.129042][ C0] ---- ---- [ 71.129134][ C0] lock(acaddr_hash_lock); [ 71.129223][ C0] local_irq_disable(); [ 71.129331][ C0] lock(&ndev->lock); [ 71.129441][ C0] lock(acaddr_hash_lock); [ 71.129549][ C0] [ 71.129615][ C0] lock(&ndev->lock); [ 71.129681][ C0] [ 71.129681][ C0] *** DEADLOCK *** [ 71.129681][ C0] [ 71.129815][ C0] 1 lock held by swapper/0/0: [ 71.129906][ C0] #0: ffa0000000007c90 ((&ndev->rs_timer)){+.-.}-{0:0}, at: call_timer_fn+0x113/0x4f0 [ 71.130080][ C0] [ 71.130080][ C0] the shortest dependencies between 2nd lock and 1st lock: [ 71.130234][ C0] -> (acaddr_hash_lock){+.+.}-{3:3} { [ 71.130326][ C0] HARDIRQ-ON-W at: [ 71.130398][ C0] __lock_acquire+0x378/0xc10 [ 71.130509][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.130622][ C0] _raw_spin_lock+0x33/0x40 [ 71.130733][ C0] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 71.130867][ C0] __ipv6_dev_ac_inc+0x57e/0x930 [ 71.130981][ C0] addrconf_join_anycast+0x1bc/0x260 [ 71.131102][ C0] __ipv6_ifa_notify+0x75b/0xad0 [ 71.131218][ C0] addrconf_dad_completed+0x14b/0xe10 [ 71.131358][ C0] addrconf_dad_work+0x3c1/0x930 [ 71.131471][ C0] process_one_work+0xdf8/0x1410 [ 71.131584][ C0] worker_thread+0x4f1/0xd60 [ 71.131697][ C0] kthread+0x367/0x460 [ 71.131811][ C0] ret_from_fork+0x474/0x6b0 [ 71.131926][ C0] ret_from_fork_asm+0x11/0x20 [ 71.132045][ C0] SOFTIRQ-ON-W at: [ 71.132110][ C0] __lock_acquire+0x378/0xc10 [ 71.132221][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.132335][ C0] _raw_spin_lock+0x33/0x40 [ 71.132448][ C0] __ipv6_dev_ac_dec+0x236/0x5d0 [ 71.132561][ C0] addrconf_leave_anycast+0x1bc/0x260 [ 71.132696][ C0] __ipv6_ifa_notify+0x6b4/0xad0 [ 71.132806][ C0] addrconf_ifdown.isra.0+0xa70/0x15f0 [ 71.132937][ C0] addrconf_notify+0x2c8/0xf30 [ 71.133055][ C0] notifier_call_chain+0xb0/0x320 [ 71.133166][ C0] __dev_notify_flags+0x165/0x280 [ 71.133276][ C0] netif_change_flags+0xfe/0x190 [ 71.133387][ C0] do_setlink.isra.0+0x1cc3/0x2750 [ 71.133498][ C0] rtnl_newlink+0x8d1/0xef0 [ 71.133610][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 71.133719][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 71.133830][ C0] netlink_unicast+0x486/0x750 [ 71.133943][ C0] netlink_sendmsg+0x735/0xc60 [ 71.134065][ C0] ____sys_sendmsg+0x419/0x850 [ 71.134179][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 71.134290][ C0] __sys_sendmsg+0x145/0x1f0 [ 71.134399][ C0] do_syscall_64+0x117/0x590 [ 71.134509][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 71.134644][ C0] INITIAL USE at: [ 71.134712][ C0] __lock_acquire+0x378/0xc10 [ 71.134823][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.134935][ C0] _raw_spin_lock+0x33/0x40 [ 71.135058][ C0] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 71.135197][ C0] __ipv6_dev_ac_inc+0x57e/0x930 [ 71.135310][ C0] addrconf_join_anycast+0x1bc/0x260 [ 71.135424][ C0] __ipv6_ifa_notify+0x75b/0xad0 [ 71.135534][ C0] addrconf_dad_completed+0x14b/0xe10 [ 71.135648][ C0] addrconf_dad_work+0x3c1/0x930 [ 71.135757][ C0] process_one_work+0xdf8/0x1410 [ 71.135866][ C0] worker_thread+0x4f1/0xd60 [ 71.135974][ C0] kthread+0x367/0x460 [ 71.136090][ C0] ret_from_fork+0x474/0x6b0 [ 71.136203][ C0] ret_from_fork_asm+0x11/0x20 [ 71.136311][ C0] } [ 71.136356][ C0] ... key at: [] acaddr_hash_lock+0x18/0x45a0 [ 71.136495][ C0] ... acquired at: [ 71.136561][ C0] __lock_acquire+0x508/0xc10 [ 71.136650][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.136743][ C0] _raw_spin_lock+0x33/0x40 [ 71.136834][ C0] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 71.136947][ C0] __ipv6_dev_ac_inc+0x57e/0x930 [ 71.137043][ C0] addrconf_join_anycast+0x1bc/0x260 [ 71.137131][ C0] __ipv6_ifa_notify+0x75b/0xad0 [ 71.137217][ C0] addrconf_dad_completed+0x14b/0xe10 [ 71.137304][ C0] addrconf_dad_work+0x3c1/0x930 [ 71.137391][ C0] process_one_work+0xdf8/0x1410 [ 71.137483][ C0] worker_thread+0x4f1/0xd60 [ 71.137571][ C0] kthread+0x367/0x460 [ 71.137637][ C0] ret_from_fork+0x474/0x6b0 [ 71.137722][ C0] ret_from_fork_asm+0x11/0x20 [ 71.137812][ C0] [ 71.137858][ C0] -> (&ndev->lock){++-.}-{3:3} { [ 71.137950][ C0] HARDIRQ-ON-W at: [ 71.138016][ C0] __lock_acquire+0x378/0xc10 [ 71.138137][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.138245][ C0] _raw_write_lock_bh+0x38/0x50 [ 71.138356][ C0] addrconf_permanent_addr+0x108/0x9c0 [ 71.138470][ C0] addrconf_notify+0x151/0xf30 [ 71.138583][ C0] notifier_call_chain+0xb0/0x320 [ 71.138697][ C0] __dev_notify_flags+0xde/0x280 [ 71.138812][ C0] netif_change_flags+0xfe/0x190 [ 71.138923][ C0] do_setlink.isra.0+0x1cc3/0x2750 [ 71.139035][ C0] rtnl_newlink+0x8d1/0xef0 [ 71.139150][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 71.139258][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 71.139367][ C0] netlink_unicast+0x486/0x750 [ 71.139483][ C0] netlink_sendmsg+0x735/0xc60 [ 71.139596][ C0] ____sys_sendmsg+0x419/0x850 [ 71.139706][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 71.139817][ C0] __sys_sendmsg+0x145/0x1f0 [ 71.139930][ C0] do_syscall_64+0x117/0x590 [ 71.140050][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 71.140185][ C0] HARDIRQ-ON-R at: [ 71.140251][ C0] __lock_acquire+0x378/0xc10 [ 71.140360][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.140475][ C0] _raw_read_lock_bh+0x44/0x80 [ 71.140585][ C0] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 71.140722][ C0] inet6_fill_link_af+0x5c/0xe0 [ 71.140839][ C0] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 71.140974][ C0] rtnl_getlink+0x9c9/0xeb0 [ 71.141095][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 71.141208][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 71.141321][ C0] netlink_unicast+0x486/0x750 [ 71.141435][ C0] netlink_sendmsg+0x735/0xc60 [ 71.141547][ C0] ____sys_sendmsg+0x419/0x850 [ 71.141661][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 71.141775][ C0] __sys_sendmsg+0x145/0x1f0 [ 71.141887][ C0] do_syscall_64+0x117/0x590 [ 71.141994][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 71.142134][ C0] IN-SOFTIRQ-W at: [ 71.142202][ C0] __lock_acquire+0x378/0xc10 [ 71.142309][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.142418][ C0] _raw_write_lock+0x33/0x40 [ 71.142528][ C0] addrconf_rs_timer+0xb0/0x770 [ 71.142643][ C0] call_timer_fn+0x163/0x4f0 [ 71.142758][ C0] __run_timers+0x68f/0xab0 [ 71.142869][ C0] run_timer_softirq+0xf0/0x160 [ 71.142977][ C0] handle_softirqs+0x1d8/0x940 [ 71.143098][ C0] __irq_exit_rcu+0x103/0x1c0 [ 71.143209][ C0] irq_exit_rcu+0xe/0x30 [ 71.143317][ C0] sysvec_apic_timer_interrupt+0x9d/0xe0 [ 71.143456][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 71.143591][ C0] pv_native_safe_halt+0xf/0x10 [ 71.143704][ C0] default_idle+0x9/0x10 [ 71.143817][ C0] default_idle_call+0x6e/0xb0 [ 71.143929][ C0] cpuidle_idle_call.constprop.0+0x237/0x410 [ 71.144073][ C0] do_idle+0xf5/0x160 [ 71.144162][ C0] cpu_startup_entry+0x53/0x70 [ 71.144275][ C0] rest_init+0x1f7/0x200 [ 71.144387][ C0] start_kernel+0x3ad/0x3b0 [ 71.144500][ C0] x86_64_start_reservations+0x24/0x30 [ 71.144613][ C0] x86_64_start_kernel+0x12b/0x130 [ 71.144729][ C0] common_startup_64+0x13e/0x148 [ 71.144856][ C0] INITIAL USE at: [ 71.144926][ C0] __lock_acquire+0x378/0xc10 [ 71.145041][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.145150][ C0] _raw_write_lock_bh+0x38/0x50 [ 71.145259][ C0] addrconf_permanent_addr+0x108/0x9c0 [ 71.145372][ C0] addrconf_notify+0x151/0xf30 [ 71.145484][ C0] notifier_call_chain+0xb0/0x320 [ 71.145594][ C0] __dev_notify_flags+0xde/0x280 [ 71.145702][ C0] netif_change_flags+0xfe/0x190 [ 71.145811][ C0] do_setlink.isra.0+0x1cc3/0x2750 [ 71.145920][ C0] rtnl_newlink+0x8d1/0xef0 [ 71.146035][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 71.146151][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 71.146264][ C0] netlink_unicast+0x486/0x750 [ 71.146373][ C0] netlink_sendmsg+0x735/0xc60 [ 71.146486][ C0] ____sys_sendmsg+0x419/0x850 [ 71.146601][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 71.146715][ C0] __sys_sendmsg+0x145/0x1f0 [ 71.146828][ C0] do_syscall_64+0x117/0x590 [ 71.146942][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 71.147085][ C0] INITIAL READ USE at: [ 71.147150][ C0] __lock_acquire+0x378/0xc10 [ 71.147258][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.147424][ C0] _raw_read_lock_bh+0x44/0x80 [ 71.147535][ C0] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 71.147671][ C0] inet6_fill_link_af+0x5c/0xe0 [ 71.147829][ C0] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 71.147958][ C0] rtnl_getlink+0x9c9/0xeb0 [ 71.148075][ C0] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 71.148234][ C0] netlink_rcv_skb+0x14e/0x3a0 [ 71.148343][ C0] netlink_unicast+0x486/0x750 [ 71.148455][ C0] netlink_sendmsg+0x735/0xc60 [ 71.148619][ C0] ____sys_sendmsg+0x419/0x850 [ 71.148729][ C0] ___sys_sendmsg+0x14e/0x1d0 [ 71.148842][ C0] __sys_sendmsg+0x145/0x1f0 [ 71.149001][ C0] do_syscall_64+0x117/0x590 [ 71.149122][ C0] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 71.149252][ C0] } [ 71.149299][ C0] ... key at: [] __key.37+0x0/0x40 [ 71.149480][ C0] ... acquired at: [ 71.149545][ C0] mark_lock+0x1d7/0xa00 [ 71.149636][ C0] mark_usage+0x42/0x170 [ 71.149722][ C0] __lock_acquire+0x378/0xc10 [ 71.149857][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.149948][ C0] _raw_write_lock+0x33/0x40 [ 71.150040][ C0] addrconf_rs_timer+0xb0/0x770 [ 71.150129][ C0] call_timer_fn+0x163/0x4f0 [ 71.150265][ C0] __run_timers+0x68f/0xab0 [ 71.150353][ C0] run_timer_softirq+0xf0/0x160 [ 71.150439][ C0] handle_softirqs+0x1d8/0x940 [ 71.150524][ C0] __irq_exit_rcu+0x103/0x1c0 [ 71.150660][ C0] irq_exit_rcu+0xe/0x30 [ 71.150750][ C0] sysvec_apic_timer_interrupt+0x9d/0xe0 [ 71.150856][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 71.151018][ C0] pv_native_safe_halt+0xf/0x10 [ 71.151116][ C0] default_idle+0x9/0x10 [ 71.151206][ C0] default_idle_call+0x6e/0xb0 [ 71.151297][ C0] cpuidle_idle_call.constprop.0+0x237/0x410 [ 71.151458][ C0] do_idle+0xf5/0x160 [ 71.151525][ C0] cpu_startup_entry+0x53/0x70 [ 71.151615][ C0] rest_init+0x1f7/0x200 [ 71.151704][ C0] start_kernel+0x3ad/0x3b0 [ 71.151841][ C0] x86_64_start_reservations+0x24/0x30 [ 71.151933][ C0] x86_64_start_kernel+0x12b/0x130 [ 71.152019][ C0] common_startup_64+0x13e/0x148 [ 71.152113][ C0] [ 71.152156][ C0] [ 71.152156][ C0] stack backtrace: [ 71.152317][ C0] CPU: 0 UID: 0 PID: 0 Comm: swapper/0 Not tainted 7.1.0-rc5-virtme #1 PREEMPT(full) [ 71.152320][ C0] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 71.152322][ C0] Call Trace: [ 71.152323][ C0] [ 71.152324][ C0] dump_stack_lvl+0x6f/0xa0 [ 71.152329][ C0] print_irq_inversion_bug.part.0.cold+0xe6/0x143 [ 71.152332][ C0] mark_lock_irq+0x989/0x9c0 [ 71.152335][ C0] mark_lock+0x1d7/0xa00 [ 71.152337][ C0] mark_usage+0x42/0x170 [ 71.152338][ C0] __lock_acquire+0x378/0xc10 [ 71.152340][ C0] ? add_chain_cache+0x12d/0x570 [ 71.152341][ C0] lock_acquire.part.0+0xbc/0x260 [ 71.152343][ C0] ? addrconf_rs_timer+0xb0/0x770 [ 71.152345][ C0] ? rcu_is_watching+0x15/0xd0 [ 71.152348][ C0] ? lock_acquire+0x134/0x160 [ 71.152350][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 71.152351][ C0] _raw_write_lock+0x33/0x40 [ 71.152353][ C0] ? addrconf_rs_timer+0xb0/0x770 [ 71.152355][ C0] addrconf_rs_timer+0xb0/0x770 [ 71.152357][ C0] ? lock_acquire.part.0+0xbc/0x260 [ 71.152358][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 71.152360][ C0] ? lock_acquire+0x134/0x160 [ 71.152362][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 71.152364][ C0] call_timer_fn+0x163/0x4f0 [ 71.152365][ C0] ? detach_if_pending+0x1d0/0x1d0 [ 71.152367][ C0] ? debug_object_active_state+0x430/0x430 [ 71.152370][ C0] ? find_held_lock+0x2b/0x80 [ 71.152373][ C0] ? __lock_release.isra.0+0x6b/0x1a0 [ 71.152375][ C0] ? rcu_is_watching+0x15/0xd0 [ 71.152377][ C0] __run_timers+0x68f/0xab0 [ 71.152378][ C0] ? ipv6_get_lladdr+0x3f0/0x3f0 [ 71.152381][ C0] ? __bpf_trace_itimer_expire+0x10/0x10 [ 71.152383][ C0] ? __lock_acquire+0x508/0xc10 [ 71.152385][ C0] ? __rwlock_init+0x150/0x150 [ 71.152387][ C0] run_timer_softirq+0xf0/0x160 [ 71.152389][ C0] ? __run_timers+0xab0/0xab0 [ 71.152391][ C0] ? trace_irq_enable.constprop.0+0x9b/0x180 [ 71.152394][ C0] ? rcu_is_watching+0x15/0xd0 [ 71.152396][ C0] handle_softirqs+0x1d8/0x940 [ 71.152397][ C0] ? find_held_lock+0x2b/0x80 [ 71.152399][ C0] ? __lock_release.isra.0+0x6b/0x1a0 [ 71.152401][ C0] ? _local_bh_enable+0xd0/0xd0 [ 71.152403][ C0] __irq_exit_rcu+0x103/0x1c0 [ 71.152404][ C0] irq_exit_rcu+0xe/0x30 [ 71.152406][ C0] sysvec_apic_timer_interrupt+0x9d/0xe0 [ 71.152407][ C0] [ 71.152408][ C0] [ 71.152409][ C0] asm_sysvec_apic_timer_interrupt+0x1a/0x20 [ 71.152410][ C0] RIP: 0010:pv_native_safe_halt+0xf/0x10 [ 71.152413][ 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 [ 71.152415][ C0] RSP: 0018:ffffffffb9c07e00 EFLAGS: 00000282 [ 71.152417][ C0] RAX: 000000000014ce25 RBX: ffffffffb9c1c740 RCX: ffffffffb6cd9667 [ 71.152418][ C0] RDX: ffffffffb9c1c740 RSI: ffffffffb9a0221d RDI: ffffffffb946f6c0 [ 71.152419][ C0] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 71.152420][ C0] R10: 0000000000000000 R11: 0000000000000001 R12: 1ffffffff7380fc3 [ 71.152421][ C0] R13: 0000000000000000 R14: dffffc0000000000 R15: 0000000000014770 [ 71.152422][ C0] ? cpuidle_idle_call.constprop.0+0x237/0x410 [ 71.152425][ C0] default_idle+0x9/0x10 [ 71.152426][ C0] default_idle_call+0x6e/0xb0 [ 71.152428][ C0] cpuidle_idle_call.constprop.0+0x237/0x410 [ 71.152429][ C0] ? arch_cpu_idle_exit+0x40/0x40 [ 71.152431][ C0] ? mark_tsc_async_resets+0x30/0x30 [ 71.152434][ C0] ? rcu_is_watching+0x15/0xd0 [ 71.152436][ C0] do_idle+0xf5/0x160 [ 71.152437][ C0] cpu_startup_entry+0x53/0x70 [ 71.152439][ C0] rest_init+0x1f7/0x200 [ 71.152441][ C0] start_kernel+0x3ad/0x3b0 [ 71.152442][ C0] x86_64_start_reservations+0x24/0x30 [ 71.152444][ C0] x86_64_start_kernel+0x12b/0x130 [ 71.152446][ C0] common_startup_64+0x13e/0x148 [ 71.152449][ C0] [ 98.331217][ T860] br1: port 1(veth1) entered disabled state [ 98.349425][ T861] br1: port 2(veth2) entered disabled state [ 98.363812][ T862] veth2: left allmulticast mode [ 98.363957][ T862] veth2: left promiscuous mode [ 98.364175][ T862] br1: port 2(veth2) entered disabled state [ 98.364808][ T862] veth1: left allmulticast mode [ 98.364941][ T862] veth1: left promiscuous mode [ 98.365162][ T862] br1: port 1(veth1) entered disabled state