batman_adv: batadv0: Interface deactivated: batadv_slave_0 batman_adv: batadv0: Removing interface: batadv_slave_0 batman_adv: batadv0: Interface deactivated: batadv_slave_1 batman_adv: batadv0: Removing interface: batadv_slave_1 ============================================ WARNING: possible recursive locking detected 6.15.0-rc1-syzkaller-00065-g3b07108ada81 #0 Not tainted -------------------------------------------- kworker/u8:16/9294 is trying to acquire lock: ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline] ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline] ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline] ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: dev_set_allmulti+0xa2/0x260 net/core/dev_api.c:288 but task is already holding lock: ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline] ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline] ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline] ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x14a1/0x25a0 net/core/dev.c:11947 and the lock comparison function returns 0: other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&dev_instance_lock_key#3); lock(&dev_instance_lock_key#3); *** DEADLOCK *** May be due to missing lock nesting notation 5 locks held by kworker/u8:16/9294: #0: ffff88801c2f3948 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work+0x12a2/0x1b70 kernel/workqueue.c:3213 #1: ffffc90010657d18 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work+0x929/0x1b70 kernel/workqueue.c:3214 #2: ffffffff90115f10 (pernet_ops_rwsem){++++}-{4:4}, at: cleanup_net+0xc9/0xb30 net/core/net_namespace.c:608 #3: ffffffff9012bda8 (rtnl_mutex){+.+.}-{4:4}, at: default_device_exit_batch+0x8b/0xaf0 net/core/dev.c:12522 #4: ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline] #4: ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline] #4: ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:39 [inline] #4: ffff88805ce66d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x14a1/0x25a0 net/core/dev.c:11947 stack backtrace: CPU: 0 UID: 0 PID: 9294 Comm: kworker/u8:16 Not tainted 6.15.0-rc1-syzkaller-00065-g3b07108ada81 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Workqueue: netns cleanup_net Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120 print_deadlock_bug+0x1e9/0x240 kernel/locking/lockdep.c:3042 check_deadlock kernel/locking/lockdep.c:3094 [inline] validate_chain kernel/locking/lockdep.c:3896 [inline] __lock_acquire+0xff7/0x1ba0 kernel/locking/lockdep.c:5235 lock_acquire kernel/locking/lockdep.c:5866 [inline] lock_acquire+0x179/0x350 kernel/locking/lockdep.c:5823 __mutex_lock_common kernel/locking/mutex.c:601 [inline] __mutex_lock+0x199/0xb90 kernel/locking/mutex.c:746 netdev_lock include/linux/netdevice.h:2751 [inline] netdev_lock_ops include/net/netdev_lock.h:42 [inline] netdev_lock_ops include/net/netdev_lock.h:39 [inline] dev_set_allmulti+0xa2/0x260 net/core/dev_api.c:288 macvlan_stop+0x362/0x4d0 drivers/net/macvlan.c:704 __dev_close_many+0x298/0x770 net/core/dev.c:1709 dev_close_many+0x233/0x630 net/core/dev.c:1734 unregister_netdevice_many_notify+0x384/0x25a0 net/core/dev.c:11949 unregister_netdevice_many net/core/dev.c:12044 [inline] default_device_exit_batch+0x853/0xaf0 net/core/dev.c:12536 ops_exit_list+0x128/0x180 net/core/net_namespace.c:177 cleanup_net+0x5c1/0xb30 net/core/net_namespace.c:654 process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238 process_scheduled_works kernel/workqueue.c:3319 [inline] worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400 kthread+0x3c2/0x780 kernel/kthread.c:464 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245