[ 45.392173][ T515] xdummy0: entered promiscuous mode [ 45.406842][ T515] xdummy0: left promiscuous mode [ 45.457609][ T517] xdummy0: entered promiscuous mode [ 45.466564][ T517] xdummy0: left promiscuous mode [ 45.467155][ T517] [ 45.467237][ T517] ===================================================== [ 45.467412][ T517] WARNING: SOFTIRQ-safe -> SOFTIRQ-unsafe lock order detected [ 45.467617][ T517] 6.9.0-rc1-virtme #1 Not tainted [ 45.467767][ T517] ----------------------------------------------------- [ 45.467936][ T517] tap/517 [HC0[0]:SC0[2]:HE1:SE0] is trying to acquire: [ 45.468109][ T517] ffff888009f0cee8 (&p->alloc_lock){+.+.}-{2:2}, at: __get_task_comm+0x27/0x70 [ 45.468367][ T517] [ 45.468367][ T517] and this task is already holding: [ 45.468574][ T517] ffff88802f6bf218 (&ul->lock){+.-.}-{2:2}, at: rt6_uncached_list_flush_dev+0x138/0x840 [ 45.468822][ T517] which would create a new lock dependency: [ 45.468992][ T517] (&ul->lock){+.-.}-{2:2} -> (&p->alloc_lock){+.+.}-{2:2} [ 45.469210][ T517] [ 45.469210][ T517] but this new dependency connects a SOFTIRQ-irq-safe lock: [ 45.469448][ T517] (&ul->lock){+.-.}-{2:2} [ 45.469452][ T517] [ 45.469452][ T517] ... which became SOFTIRQ-irq-safe at: [ 45.469813][ T517] __lock_acquire+0x797/0x1570 [ 45.469954][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.470090][ T517] _raw_spin_lock_bh+0x38/0x50 [ 45.470231][ T517] rt6_uncached_list_del+0x77/0x200 [ 45.470368][ T517] ip6_dst_destroy+0x74/0x1e0 [ 45.470502][ T517] dst_destroy+0xbc/0x370 [ 45.470639][ T517] rcu_do_batch+0x3c0/0xfb0 [ 45.470781][ T517] rcu_core+0x2be/0x500 [ 45.470887][ T517] __do_softirq+0x1f8/0x5df [ 45.471028][ T517] run_ksoftirqd+0x2e/0x60 [ 45.471166][ T517] smpboot_thread_fn+0x306/0x840 [ 45.471305][ T517] kthread+0x28a/0x350 [ 45.471409][ T517] ret_from_fork+0x31/0x70 [ 45.471556][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.471697][ T517] [ 45.471697][ T517] to a SOFTIRQ-irq-unsafe lock: [ 45.471866][ T517] (&p->alloc_lock){+.+.}-{2:2} [ 45.471870][ T517] [ 45.471870][ T517] ... which became SOFTIRQ-irq-unsafe at: [ 45.472208][ T517] ... [ 45.472209][ T517] __lock_acquire+0x797/0x1570 [ 45.472418][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.472566][ T517] _raw_spin_lock+0x30/0x40 [ 45.472706][ T517] set_mems_allowed+0x1d/0x210 [ 45.472841][ T517] kernel_init_freeable+0x72/0x310 [ 45.472978][ T517] kernel_init+0x20/0x200 [ 45.473115][ T517] ret_from_fork+0x31/0x70 [ 45.473251][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.473388][ T517] [ 45.473388][ T517] other info that might help us debug this: [ 45.473388][ T517] [ 45.473657][ T517] Possible interrupt unsafe locking scenario: [ 45.473657][ T517] [ 45.473862][ T517] CPU0 CPU1 [ 45.474001][ T517] ---- ---- [ 45.474137][ T517] lock(&p->alloc_lock); [ 45.474243][ T517] local_irq_disable(); [ 45.474409][ T517] lock(&ul->lock); [ 45.474580][ T517] lock(&p->alloc_lock); [ 45.474748][ T517] [ 45.474851][ T517] lock(&ul->lock); [ 45.474961][ T517] [ 45.474961][ T517] *** DEADLOCK *** [ 45.474961][ T517] [ 45.475160][ T517] 2 locks held by tap/517: [ 45.475297][ T517] #0: ffffffffa0db7208 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x2af/0xbf0 [ 45.475542][ T517] #1: ffff88802f6bf218 (&ul->lock){+.-.}-{2:2}, at: rt6_uncached_list_flush_dev+0x138/0x840 [ 45.475818][ T517] [ 45.475818][ T517] the dependencies between SOFTIRQ-irq-safe lock and the holding lock: [ 45.476084][ T517] -> (&ul->lock){+.-.}-{2:2} { [ 45.476229][ T517] HARDIRQ-ON-W at: [ 45.476336][ T517] __lock_acquire+0x797/0x1570 [ 45.476510][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.476679][ T517] _raw_spin_lock_bh+0x38/0x50 [ 45.476852][ T517] rt6_uncached_list_add+0x55/0x1b0 [ 45.477021][ T517] icmp6_dst_alloc+0x2c0/0x450 [ 45.477199][ T517] mld_sendpack+0x529/0xbc0 [ 45.477373][ T517] mld_ifc_work+0x32/0x1f0 [ 45.477546][ T517] process_one_work+0xe2c/0x1730 [ 45.477719][ T517] worker_thread+0x587/0xd30 [ 45.477890][ T517] kthread+0x28a/0x350 [ 45.478029][ T517] ret_from_fork+0x31/0x70 [ 45.478203][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.478372][ T517] IN-SOFTIRQ-W at: [ 45.478475][ T517] __lock_acquire+0x797/0x1570 [ 45.478646][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.478820][ T517] _raw_spin_lock_bh+0x38/0x50 [ 45.478990][ T517] rt6_uncached_list_del+0x77/0x200 [ 45.479161][ T517] ip6_dst_destroy+0x74/0x1e0 [ 45.479332][ T517] dst_destroy+0xbc/0x370 [ 45.479507][ T517] rcu_do_batch+0x3c0/0xfb0 [ 45.479679][ T517] rcu_core+0x2be/0x500 [ 45.479852][ T517] __do_softirq+0x1f8/0x5df [ 45.480024][ T517] run_ksoftirqd+0x2e/0x60 [ 45.480195][ T517] smpboot_thread_fn+0x306/0x840 [ 45.480368][ T517] kthread+0x28a/0x350 [ 45.480507][ T517] ret_from_fork+0x31/0x70 [ 45.480678][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.480849][ T517] INITIAL USE at: [ 45.480953][ T517] __lock_acquire+0x797/0x1570 [ 45.481124][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.481297][ T517] _raw_spin_lock_bh+0x38/0x50 [ 45.481470][ T517] rt6_uncached_list_add+0x55/0x1b0 [ 45.481655][ T517] icmp6_dst_alloc+0x2c0/0x450 [ 45.481826][ T517] mld_sendpack+0x529/0xbc0 [ 45.481997][ T517] mld_ifc_work+0x32/0x1f0 [ 45.482170][ T517] process_one_work+0xe2c/0x1730 [ 45.482340][ T517] worker_thread+0x587/0xd30 [ 45.482520][ T517] kthread+0x28a/0x350 [ 45.482663][ T517] ret_from_fork+0x31/0x70 [ 45.482836][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.483007][ T517] } [ 45.483078][ T517] ... key at: [] __key.15+0x0/0x40 [ 45.483283][ T517] [ 45.483283][ T517] the dependencies between the lock to be acquired [ 45.483284][ T517] and SOFTIRQ-irq-unsafe lock: [ 45.483650][ T517] -> (&p->alloc_lock){+.+.}-{2:2} { [ 45.483795][ T517] HARDIRQ-ON-W at: [ 45.483902][ T517] __lock_acquire+0x797/0x1570 [ 45.484078][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.484252][ T517] _raw_spin_lock+0x30/0x40 [ 45.484425][ T517] set_mems_allowed+0x1d/0x210 [ 45.484598][ T517] kernel_init_freeable+0x72/0x310 [ 45.484771][ T517] kernel_init+0x20/0x200 [ 45.484947][ T517] ret_from_fork+0x31/0x70 [ 45.485121][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.485294][ T517] SOFTIRQ-ON-W at: [ 45.485396][ T517] __lock_acquire+0x797/0x1570 [ 45.485570][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.485743][ T517] _raw_spin_lock+0x30/0x40 [ 45.485917][ T517] set_mems_allowed+0x1d/0x210 [ 45.486092][ T517] kernel_init_freeable+0x72/0x310 [ 45.486265][ T517] kernel_init+0x20/0x200 [ 45.486437][ T517] ret_from_fork+0x31/0x70 [ 45.486610][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.486786][ T517] INITIAL USE at: [ 45.486889][ T517] __lock_acquire+0x797/0x1570 [ 45.487062][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.487239][ T517] _raw_spin_lock+0x30/0x40 [ 45.487415][ T517] set_mems_allowed+0x1d/0x210 [ 45.487588][ T517] kernel_init_freeable+0x72/0x310 [ 45.487759][ T517] kernel_init+0x20/0x200 [ 45.487931][ T517] ret_from_fork+0x31/0x70 [ 45.488105][ T517] ret_from_fork_asm+0x1a/0x30 [ 45.488276][ T517] } [ 45.488350][ T517] ... key at: [] __key.388+0x0/0x40 [ 45.488558][ T517] ... acquired at: [ 45.488662][ T517] check_prev_add+0x194/0xce0 [ 45.488801][ T517] validate_chain+0x71d/0x9b0 [ 45.488938][ T517] __lock_acquire+0xaf0/0x1570 [ 45.489074][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.489213][ T517] _raw_spin_lock+0x30/0x40 [ 45.489350][ T517] __get_task_comm+0x27/0x70 [ 45.489496][ T517] ref_tracker_alloc+0x2ee/0x490 [ 45.489636][ T517] rt6_uncached_list_flush_dev+0x494/0x840 [ 45.489808][ T517] rt6_disable_ip+0xd9/0x140 [ 45.489955][ T517] addrconf_ifdown.isra.0+0x103/0x1560 [ 45.490092][ T517] addrconf_notify+0xd1/0xd60 [ 45.490229][ T517] notifier_call_chain+0xcd/0x150 [ 45.490367][ T517] dev_close_many+0x2d8/0x650 [ 45.490506][ T517] unregister_netdevice_many_notify+0x3d5/0x1190 [ 45.490679][ T517] rtnl_dellink+0x330/0xa30 [ 45.490816][ T517] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 45.490955][ T517] netlink_rcv_skb+0x130/0x360 [ 45.491094][ T517] netlink_unicast+0x449/0x710 [ 45.491229][ T517] netlink_sendmsg+0x723/0xbe0 [ 45.491366][ T517] __sys_sendto+0x37d/0x410 [ 45.491506][ T517] __x64_sys_sendto+0xe0/0x1c0 [ 45.491643][ T517] do_syscall_64+0xc6/0x1e0 [ 45.491781][ T517] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 45.491960][ T517] [ 45.492030][ T517] [ 45.492030][ T517] stack backtrace: [ 45.492197][ T517] CPU: 2 PID: 517 Comm: tap Not tainted 6.9.0-rc1-virtme #1 [ 45.492403][ T517] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 45.492733][ T517] Call Trace: [ 45.492842][ T517] [ 45.492914][ T517] dump_stack_lvl+0x82/0xd0 [ 45.493060][ T517] print_bad_irq_dependency+0x957/0xd40 [ 45.493198][ T517] ? hlock_class+0x4e/0x130 [ 45.493338][ T517] ? __pfx_print_bad_irq_dependency+0x10/0x10 [ 45.493507][ T517] ? __pfx_usage_skip+0x10/0x10 [ 45.493642][ T517] ? __bfs+0x246/0x650 [ 45.493745][ T517] ? __pfx_usage_match+0x10/0x10 [ 45.493884][ T517] check_irq_usage+0x596/0x850 [ 45.494023][ T517] ? __pfx_check_irq_usage+0x10/0x10 [ 45.494164][ T517] ? __bfs+0x246/0x650 [ 45.494266][ T517] ? __pfx_hlock_conflict+0x10/0x10 [ 45.494403][ T517] ? check_path.constprop.0+0x24/0x50 [ 45.494540][ T517] ? check_noncircular+0x14c/0x3e0 [ 45.494678][ T517] ? __pfx_check_noncircular+0x10/0x10 [ 45.494818][ T517] ? check_prev_add+0x194/0xce0 [ 45.494958][ T517] check_prev_add+0x194/0xce0 [ 45.495180][ T517] ? validate_chain+0x130/0x9b0 [ 45.495321][ T517] validate_chain+0x71d/0x9b0 [ 45.495460][ T517] ? mark_lock+0x38/0x3e0 [ 45.495564][ T517] ? __pfx_validate_chain+0x10/0x10 [ 45.495701][ T517] ? hlock_class+0x4e/0x130 [ 45.495938][ T517] ? mark_lock+0x38/0x3e0 [ 45.496044][ T517] __lock_acquire+0xaf0/0x1570 [ 45.496182][ T517] lock_acquire.part.0+0xeb/0x330 [ 45.496318][ T517] ? __get_task_comm+0x27/0x70 [ 45.496454][ T517] ? mark_lock+0x38/0x3e0 [ 45.496561][ T517] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 45.496700][ T517] ? trace_lock_acquire+0x135/0x1c0 [ 45.496836][ T517] ? __get_task_comm+0x27/0x70 [ 45.496975][ T517] ? lock_acquire+0x32/0xc0 [ 45.497112][ T517] ? __get_task_comm+0x27/0x70 [ 45.497248][ T517] _raw_spin_lock+0x30/0x40 [ 45.497383][ T517] ? __get_task_comm+0x27/0x70 [ 45.497520][ T517] __get_task_comm+0x27/0x70 [ 45.497738][ T517] ref_tracker_alloc+0x2ee/0x490 [ 45.497880][ T517] ? __pfx_ref_tracker_alloc+0x10/0x10 [ 45.498016][ T517] ? __lock_release+0x103/0x460 [ 45.498153][ T517] ? rt6_uncached_list_flush_dev+0x494/0x840 [ 45.498403][ T517] ? rt6_disable_ip+0xd9/0x140 [ 45.498539][ T517] ? addrconf_ifdown.isra.0+0x103/0x1560 [ 45.498674][ T517] ? addrconf_notify+0xd1/0xd60 [ 45.498817][ T517] ? notifier_call_chain+0xcd/0x150 [ 45.499035][ T517] ? dev_close_many+0x2d8/0x650 [ 45.499174][ T517] ? unregister_netdevice_many_notify+0x3d5/0x1190 [ 45.499341][ T517] ? rtnl_dellink+0x330/0xa30 [ 45.499484][ T517] ? rtnetlink_rcv_msg+0x2fb/0xbf0 [ 45.499700][ T517] ? netlink_rcv_skb+0x130/0x360 [ 45.499844][ T517] ? netlink_unicast+0x449/0x710 [ 45.499992][ T517] ? netlink_sendmsg+0x723/0xbe0 [ 45.500141][ T517] ? __sys_sendto+0x37d/0x410 [ 45.500291][ T517] ? __x64_sys_sendto+0xe0/0x1c0 [ 45.500527][ T517] ? do_syscall_64+0xc6/0x1e0 [ 45.500675][ T517] ? entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 45.500863][ T517] ? in6_dev_get+0xcc/0x210 [ 45.501013][ T517] rt6_uncached_list_flush_dev+0x494/0x840 [ 45.501285][ T517] rt6_disable_ip+0xd9/0x140 [ 45.501433][ T517] ? __pfx_rt6_disable_ip+0x10/0x10 [ 45.501582][ T517] ? hlock_class+0x4e/0x130 [ 45.501731][ T517] addrconf_ifdown.isra.0+0x103/0x1560 [ 45.501979][ T517] ? __pfx_snprintf+0x10/0x10 [ 45.502132][ T517] ? __try_to_del_timer_sync+0xe7/0x140 [ 45.502281][ T517] ? __pfx_addrconf_ifdown.isra.0+0x10/0x10 [ 45.502472][ T517] addrconf_notify+0xd1/0xd60 [ 45.502614][ T517] notifier_call_chain+0xcd/0x150 [ 45.502753][ T517] dev_close_many+0x2d8/0x650 [ 45.502892][ T517] ? notifier_call_chain+0xcd/0x150 [ 45.503029][ T517] ? __pfx_dev_close_many+0x10/0x10 [ 45.503169][ T517] ? __netdev_upper_dev_unlink+0x17c/0x220 [ 45.503339][ T517] unregister_netdevice_many_notify+0x3d5/0x1190 [ 45.503508][ T517] ? unregister_netdevice_queue+0x70/0x410 [ 45.503676][ T517] ? __pfx_unregister_netdevice_queue+0x10/0x10 [ 45.503847][ T517] ? __pfx_unregister_netdevice_many_notify+0x10/0x10 [ 45.504015][ T517] ? netdev_upper_dev_unlink+0x71/0xa0 [ 45.504150][ T517] ? __pfx_netdev_upper_dev_unlink+0x10/0x10 [ 45.504406][ T517] rtnl_dellink+0x330/0xa30 [ 45.504542][ T517] ? hlock_class+0x4e/0x130 [ 45.504678][ T517] ? __pfx_rtnl_dellink+0x10/0x10 [ 45.504824][ T517] ? trace_contention_end+0xdc/0x140 [ 45.505043][ T517] ? __mutex_lock+0x170/0xac0 [ 45.505177][ T517] ? find_held_lock+0x2c/0x110 [ 45.505312][ T517] ? __pfx___mutex_lock+0x10/0x10 [ 45.505447][ T517] ? __pfx___lock_release+0x10/0x10 [ 45.505668][ T517] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 45.505807][ T517] rtnetlink_rcv_msg+0x2fb/0xbf0 [ 45.505942][ T517] ? __pfx_rtnetlink_rcv_msg+0x10/0x10 [ 45.506078][ T517] ? hlock_class+0x4e/0x130 [ 45.506215][ T517] ? mark_lock+0x38/0x3e0 [ 45.506400][ T517] ? __lock_acquire+0xaf0/0x1570 [ 45.506537][ T517] netlink_rcv_skb+0x130/0x360 [ 45.506673][ T517] ? __pfx_rtnetlink_rcv_msg+0x10/0x10 [ 45.506815][ T517] ? __pfx_netlink_rcv_skb+0x10/0x10 [ 45.507040][ T517] ? lock_acquire.part.0+0xeb/0x330 [ 45.507183][ T517] ? netlink_deliver_tap+0xc8/0x340 [ 45.507321][ T517] ? lock_acquire+0x32/0xc0 [ 45.507456][ T517] ? netlink_deliver_tap+0xc8/0x340 [ 45.507756][ T517] ? netlink_deliver_tap+0xc8/0x340 [ 45.507892][ T517] ? netlink_deliver_tap+0x149/0x340 [ 45.508028][ T517] netlink_unicast+0x449/0x710 [ 45.508170][ T517] ? __pfx_netlink_unicast+0x10/0x10 [ 45.508307][ T517] ? netlink_autobind.isra.0+0xa5/0x270 [ 45.508443][ T517] ? netlink_autobind.isra.0+0x18a/0x270 [ 45.508580][ T517] netlink_sendmsg+0x723/0xbe0 [ 45.508717][ T517] ? __pfx_netlink_sendmsg+0x10/0x10 [ 45.508855][ T517] ? __fget_light+0x53/0x1e0 [ 45.508995][ T517] __sys_sendto+0x37d/0x410 [ 45.509133][ T517] ? __pfx___sys_sendto+0x10/0x10 [ 45.509273][ T517] ? __lock_release+0x103/0x460 [ 45.509409][ T517] ? __pfx___lock_release+0x10/0x10 [ 45.509549][ T517] ? fd_install+0x1d1/0x5a0 [ 45.509685][ T517] ? fd_install+0x1d6/0x5a0 [ 45.509821][ T517] ? __sys_socket+0x168/0x1e0 [ 45.509956][ T517] ? lockdep_hardirqs_on_prepare.part.0+0x1af/0x370 [ 45.510207][ T517] ? __pfx___sys_socket+0x10/0x10 [ 45.510345][ T517] __x64_sys_sendto+0xe0/0x1c0 [ 45.510485][ T517] ? lockdep_hardirqs_on_prepare.part.0+0x1af/0x370 [ 45.510654][ T517] do_syscall_64+0xc6/0x1e0 [ 45.510894][ T517] entry_SYSCALL_64_after_hwframe+0x6d/0x75 [ 45.511064][ T517] RIP: 0033:0x7fb9e575a700 [ 45.511209][ T517] Code: ff ff 64 89 02 eb bd 0f 1f 00 f3 0f 1e fa 41 89 ca 64 8b 04 25 18 00 00 00 85 c0 75 1d 45 31 c9 45 31 c0 b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 68 c3 0f 1f 80 00 00 00 00 41 54 48 83 ec 20 [ 45.511698][ T517] RSP: 002b:00007ffe415dfe18 EFLAGS: 00000246 ORIG_RAX: 000000000000002c [ 45.511910][ T517] RAX: ffffffffffffffda RBX: 0000000000000030 RCX: 00007fb9e575a700 [ 45.512115][ T517] RDX: 0000000000000030 RSI: 00007ffe415dfe20 RDI: 0000000000000005 [ 45.512319][ T517] RBP: 0000000000404780 R08: 0000000000000000 R09: 0000000000000000 [ 45.512527][ T517] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000005 [ 45.512739][ T517] R13: 00007ffe415dfe20 R14: 00000000004062a0 R15: 00000000004064e0 [ 45.512944][ T517] [ 45.550658][ T517] tap (517) used greatest stack depth: 23296 bytes left [ 45.562085][ T520] xdummy0: entered promiscuous mode [ 45.574377][ T520] xdummy0: left promiscuous mode