[ 2192.495694][ T12] [ 2192.495803][ T12] ====================================================== [ 2192.495965][ T12] WARNING: possible circular locking dependency detected [ 2192.496110][ T12] 7.3.0-rc3-virtme #1 Not tainted [ 2192.496234][ T12] ------------------------------------------------------ [ 2192.496382][ T12] kworker/u16:0/12 is trying to acquire lock: [ 2192.496529][ T12] ff110000093a1e10 (&dev_instance_lock_key#2){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.496800][ T12] [ 2192.496800][ T12] but task is already holding lock: [ 2192.496980][ T12] ff110000135f4e10 (&dev_instance_lock_key){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.497244][ T12] [ 2192.497244][ T12] which lock already depends on the new lock. [ 2192.497244][ T12] [ 2192.497475][ T12] [ 2192.497475][ T12] the existing dependency chain (in reverse order) is: [ 2192.497676][ T12] [ 2192.497676][ T12] -> #1 (&dev_instance_lock_key){+.+.}-{4:4}: [ 2192.497859][ T12] __lock_acquire+0x4ff/0x900 [ 2192.497987][ T12] lock_acquire.part.0+0xd4/0x280 [ 2192.498102][ T12] __mutex_lock+0x1ae/0x1f10 [ 2192.498220][ T12] unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.498365][ T12] default_device_exit_batch+0x543/0x820 [ 2192.498507][ T12] ops_undo_list+0x2ce/0x8f0 [ 2192.498623][ T12] cleanup_net+0x431/0x940 [ 2192.498739][ T12] process_one_work+0xe3e/0x1560 [ 2192.498856][ T12] worker_thread+0x4f1/0xd60 [ 2192.498978][ T12] kthread+0x367/0x460 [ 2192.499093][ T12] ret_from_fork+0x474/0x6b0 [ 2192.499210][ T12] ret_from_fork_asm+0x11/0x20 [ 2192.499329][ T12] [ 2192.499329][ T12] -> #0 (&dev_instance_lock_key#2){+.+.}-{4:4}: [ 2192.499512][ T12] check_prev_add+0xd8/0xe90 [ 2192.499633][ T12] validate_chain+0x6b8/0xc20 [ 2192.499749][ T12] __lock_acquire+0x4ff/0x900 [ 2192.499867][ T12] lock_acquire.part.0+0xd4/0x280 [ 2192.499989][ T12] __mutex_lock+0x1ae/0x1f10 [ 2192.500104][ T12] unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.500251][ T12] default_device_exit_batch+0x543/0x820 [ 2192.500395][ T12] ops_undo_list+0x2ce/0x8f0 [ 2192.500513][ T12] cleanup_net+0x431/0x940 [ 2192.500627][ T12] process_one_work+0xe3e/0x1560 [ 2192.500741][ T12] worker_thread+0x4f1/0xd60 [ 2192.500856][ T12] kthread+0x367/0x460 [ 2192.500976][ T12] ret_from_fork+0x474/0x6b0 [ 2192.501090][ T12] ret_from_fork_asm+0x11/0x20 [ 2192.501203][ T12] [ 2192.501203][ T12] other info that might help us debug this: [ 2192.501203][ T12] [ 2192.501433][ T12] Possible unsafe locking scenario: [ 2192.501433][ T12] [ 2192.501606][ T12] CPU0 CPU1 [ 2192.501725][ T12] ---- ---- [ 2192.501846][ T12] lock(&dev_instance_lock_key); [ 2192.501972][ T12] lock(&dev_instance_lock_key#2); [ 2192.502149][ T12] lock(&dev_instance_lock_key); [ 2192.502326][ T12] lock(&dev_instance_lock_key#2); [ 2192.502444][ T12] [ 2192.502444][ T12] *** DEADLOCK *** [ 2192.502444][ T12] [ 2192.502617][ T12] locks held by kworker/u16:0/12: 6, last CPU#1: [ 2192.502765][ T12] #0: ff11000001a21d40 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work+0xd9a/0x1560 [ 2192.503004][ T12] #1: ffa00000000c7d10 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work+0xdfc/0x1560 [ 2192.503205][ T12] #2: ffffffffaef02968 (pernet_ops_rwsem){++++}-{4:4}, at: cleanup_net+0xbf/0x940 [ 2192.503407][ T12] #3: ffffffffaef1e7e0 (rtnl_mutex){+.+.}-{4:4}, at: default_device_exit_batch+0xa8/0x820 [ 2192.503636][ T12] #4: ff1100000a7e1e10 (&dev_instance_lock_key#2){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.503899][ T12] #5: ff110000135f4e10 (&dev_instance_lock_key){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.504159][ T12] [ 2192.504159][ T12] stack backtrace: [ 2192.504307][ T12] CPU: 1 UID: 0 PID: 12 Comm: kworker/u16:0 Not tainted 7.3.0-rc3-virtme #1 PREEMPT(full) [ 2192.504310][ T12] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 2192.504312][ T12] Workqueue: netns cleanup_net [ 2192.504315][ T12] Call Trace: [ 2192.504316][ T12] [ 2192.504318][ T12] dump_stack_lvl+0x6f/0xa0 [ 2192.504321][ T12] print_circular_bug.cold+0x38/0x46 [ 2192.504324][ T12] check_noncircular+0x171/0x1a0 [ 2192.504328][ T12] check_prev_add+0xd8/0xe90 [ 2192.504330][ T12] ? lock_acquire.part.0+0xd4/0x280 [ 2192.504332][ T12] validate_chain+0x6b8/0xc20 [ 2192.504334][ T12] __lock_acquire+0x4ff/0x900 [ 2192.504336][ T12] lock_acquire.part.0+0xd4/0x280 [ 2192.504338][ T12] ? unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.504340][ T12] ? rcu_is_watching+0x16/0xd0 [ 2192.504343][ T12] ? lock_acquire+0x13c/0x160 [ 2192.504345][ T12] __mutex_lock+0x1ae/0x1f10 [ 2192.504346][ T12] ? unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.504348][ T12] ? unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.504349][ T12] ? __lock_acquire+0x4ff/0x900 [ 2192.504351][ T12] ? ww_mutex_lock+0x160/0x160 [ 2192.504353][ T12] ? find_held_lock+0x2b/0x80 [ 2192.504355][ T12] ? rcu_is_watching+0x16/0xd0 [ 2192.504356][ T12] ? mark_held_locks+0x40/0x70 [ 2192.504358][ T12] ? kfree+0x22/0x590 [ 2192.504361][ T12] ? lockdep_hardirqs_on_prepare.part.0+0x9a/0x160 [ 2192.504363][ T12] ? _raw_spin_unlock_irqrestore+0x53/0x80 [ 2192.504365][ T12] ? unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.504366][ T12] ? rtnl_is_locked+0x15/0x20 [ 2192.504368][ T12] unregister_netdevice_many_notify+0x3ef/0x1b40 [ 2192.504370][ T12] ? ops_undo_list+0x2ce/0x8f0 [ 2192.504372][ T12] ? worker_thread+0x4f1/0xd60 [ 2192.504373][ T12] ? kthread+0x367/0x460 [ 2192.504374][ T12] ? ret_from_fork+0x474/0x6b0 [ 2192.504376][ T12] ? ret_from_fork_asm+0x11/0x20 [ 2192.504378][ T12] ? unregister_netdevice_queued+0x80/0x80 [ 2192.504380][ T12] ? unregister_netdevice_many+0x20/0x20 [ 2192.504382][ T12] default_device_exit_batch+0x543/0x820 [ 2192.504384][ T12] ? unregister_netdevice_queue+0x470/0x470 [ 2192.504385][ T12] ? perf_trace_sched_switch+0x7c0/0x7c0 [ 2192.504388][ T12] ? fou_exit_net+0x30/0x110 [ 2192.504391][ T12] ops_undo_list+0x2ce/0x8f0 [ 2192.504393][ T12] ? lockdep_hardirqs_on+0x91/0x130 [ 2192.504396][ T12] ? netns_install+0x2a0/0x2a0 [ 2192.504397][ T12] ? __lock_release.isra.0+0x69/0x1a0 [ 2192.504399][ T12] ? idr_destroy+0x121/0x250 [ 2192.504402][ T12] cleanup_net+0x431/0x940 [ 2192.504404][ T12] ? net_passive_dec+0x230/0x230 [ 2192.504406][ T12] ? lock_acquire+0x13c/0x160 [ 2192.504408][ T12] ? rcu_is_watching+0x16/0xd0 [ 2192.504410][ T12] process_one_work+0xe3e/0x1560 [ 2192.504412][ T12] ? __queue_delayed_work+0x470/0x470 [ 2192.504413][ T12] ? lock_acquire.part.0+0xd4/0x280 [ 2192.504416][ T12] worker_thread+0x4f1/0xd60 [ 2192.504418][ T12] ? rescuer_thread+0x1340/0x1340 [ 2192.504420][ T12] kthread+0x367/0x460 [ 2192.504421][ T12] ? trace_irq_enable.constprop.0+0x9b/0x160 [ 2192.504424][ T12] ? kthread_affine_preferred+0x4c0/0x4c0 [ 2192.504426][ T12] ret_from_fork+0x474/0x6b0 [ 2192.504428][ T12] ? arch_exit_to_user_mode_prepare.isra.0+0x120/0x120 [ 2192.504430][ T12] ? __switch_to+0x5a3/0xe00 [ 2192.504433][ T12] ? kthread_affine_preferred+0x4c0/0x4c0 [ 2192.504435][ T12] ret_from_fork_asm+0x11/0x20 [ 2192.504438][ T12]