syzbot


possible deadlock in dev_set_allmulti

Status: fixed on 2025/06/10 16:19
Subsystems: net
[Documentation on labels]
Reported-by: syzbot+b0c03d76056ef6cd12a6@syzkaller.appspotmail.com
Fix commit: 27b918007d96 net: vlan: don't propagate flags on open
First crash: 109d, last: 57d
Discussions (10)
Title Replies (including bot) Last reply
[PATCH AUTOSEL 5.10 13/15] net: vlan: don't propagate flags on open 2 (2) 2025/04/18 17:01
[PATCH AUTOSEL 5.4 12/14] net: vlan: don't propagate flags on open 1 (1) 2025/04/03 19:10
[PATCH AUTOSEL 5.15 14/16] net: vlan: don't propagate flags on open 1 (1) 2025/04/03 19:09
[PATCH AUTOSEL 6.1 15/18] net: vlan: don't propagate flags on open 1 (1) 2025/04/03 19:08
[PATCH AUTOSEL 6.6 23/26] net: vlan: don't propagate flags on open 1 (1) 2025/04/03 19:07
[PATCH AUTOSEL 6.12 39/47] net: vlan: don't propagate flags on open 1 (1) 2025/04/03 19:05
[PATCH AUTOSEL 6.13 39/49] net: vlan: don't propagate flags on open 1 (1) 2025/04/03 19:03
[PATCH AUTOSEL 6.14 43/54] net: vlan: don't propagate flags on open 1 (1) 2025/04/03 19:01
[PATCH net-next] net: vlan: don't propagate flags on open 3 (3) 2025/03/20 09:00
[syzbot] [net?] possible deadlock in dev_set_allmulti 1 (2) 2025/03/11 20:38
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream possible deadlock in dev_set_allmulti (2) net 2 2d03h 9d05h 0/29 upstream: reported on 2025/06/16 01:21

Sample crash report:
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-rc2-syzkaller-00087-gcfb2e2c57aef #0 Not tainted
--------------------------------------------
kworker/u8:2/36 is trying to acquire lock:
ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: dev_set_allmulti+0x11c/0x270 net/core/dev_api.c:288

but task is already holding lock:
ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x5a1/0x2510 net/core/dev.c:11938
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:2/36:
 #0: ffff88801bef6148 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3213 [inline]
 #0: ffff88801bef6148 ((wq_completion)netns){+.+.}-{0:0}, at: process_scheduled_works+0x990/0x18e0 kernel/workqueue.c:3319
 #1: ffffc90000ad7c60 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3214 [inline]
 #1: ffffc90000ad7c60 (net_cleanup_work){+.+.}-{0:0}, at: process_scheduled_works+0x9cb/0x18e0 kernel/workqueue.c:3319
 #2: ffffffff900f0a90 (pernet_ops_rwsem){++++}-{4:4}, at: cleanup_net+0x17c/0xd60 net/core/net_namespace.c:608
 #3: ffffffff900fd5c8 (rtnl_mutex){+.+.}-{4:4}, at: default_device_exit_batch+0xde/0x880 net/core/dev.c:12513
 #4: ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock include/linux/netdevice.h:2751 [inline]
 #4: ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: netdev_lock_ops include/net/netdev_lock.h:42 [inline]
 #4: ffff8880595a2d30 (&dev_instance_lock_key#3){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0x5a1/0x2510 net/core/dev.c:11938

stack backtrace:
CPU: 0 UID: 0 PID: 36 Comm: kworker/u8:2 Not tainted 6.15.0-rc2-syzkaller-00087-gcfb2e2c57aef #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
Workqueue: netns cleanup_net
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
 print_deadlock_bug+0x2be/0x2d0 kernel/locking/lockdep.c:3042
 check_deadlock kernel/locking/lockdep.c:3094 [inline]
 validate_chain+0x928/0x24e0 kernel/locking/lockdep.c:3896
 __lock_acquire+0xad5/0xd80 kernel/locking/lockdep.c:5235
 lock_acquire+0x116/0x2f0 kernel/locking/lockdep.c:5866
 __mutex_lock_common kernel/locking/mutex.c:601 [inline]
 __mutex_lock+0x1a5/0x10c0 kernel/locking/mutex.c:746
 netdev_lock include/linux/netdevice.h:2751 [inline]
 netdev_lock_ops include/net/netdev_lock.h:42 [inline]
 dev_set_allmulti+0x11c/0x270 net/core/dev_api.c:288
 macvlan_stop+0x20f/0x420 drivers/net/macvlan.c:704
 __dev_close_many+0x3d9/0x760 net/core/dev.c:1700
 dev_close_many+0x250/0x4c0 net/core/dev.c:1725
 unregister_netdevice_many_notify+0x628/0x2510 net/core/dev.c:11940
 unregister_netdevice_many net/core/dev.c:12035 [inline]
 default_device_exit_batch+0x7ff/0x880 net/core/dev.c:12527
 ops_exit_list net/core/net_namespace.c:177 [inline]
 cleanup_net+0x8b1/0xd60 net/core/net_namespace.c:654
 process_one_work kernel/workqueue.c:3238 [inline]
 process_scheduled_works+0xac5/0x18e0 kernel/workqueue.c:3319
 worker_thread+0x870/0xd50 kernel/workqueue.c:3400
 kthread+0x7b9/0x940 kernel/kthread.c:464
 ret_from_fork+0x4d/0x80 arch/x86/kernel/process.c:153
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>

Crashes (218):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/04/17 16:34 upstream cfb2e2c57aef 2a6ededb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in dev_set_allmulti
2025/04/17 08:44 upstream cfb2e2c57aef 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/16 22:23 upstream c62f4b82d571 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/16 18:47 upstream c62f4b82d571 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/16 06:42 upstream 1a1d569a75f3 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/15 22:00 upstream 1a1d569a75f3 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/15 16:06 upstream 834a4a689699 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/15 13:55 upstream 834a4a689699 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/15 12:50 upstream 834a4a689699 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/15 11:57 upstream 834a4a689699 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/14 21:00 upstream 834a4a689699 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/14 09:15 upstream 8ffd015db85f 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-badwrites-root possible deadlock in dev_set_allmulti
2025/04/14 00:43 upstream 8ffd015db85f 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/13 12:58 upstream 7cdabafc0012 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/13 09:30 upstream ecd5d67ad602 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in dev_set_allmulti
2025/04/12 23:49 upstream ecd5d67ad602 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/12 22:46 upstream ecd5d67ad602 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/12 18:41 upstream 3bde70a2c827 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/12 15:58 upstream 3bde70a2c827 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/12 14:44 upstream 3bde70a2c827 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in dev_set_allmulti
2025/04/11 17:18 upstream 900241a5cc15 12ba9c21 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in dev_set_allmulti
2025/04/11 12:59 upstream 900241a5cc15 12ba9c21 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/11 02:13 upstream ab59a8605604 1bc60a19 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root possible deadlock in dev_set_allmulti
2025/04/10 23:17 upstream ab59a8605604 1bc60a19 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/10 15:01 upstream 3b07108ada81 988b336c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/10 06:07 upstream 3b07108ada81 988b336c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in dev_set_allmulti
2025/04/10 05:02 upstream 3b07108ada81 988b336c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in dev_set_allmulti
2025/04/17 15:02 upstream cfb2e2c57aef 2a6ededb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in dev_set_allmulti
2025/04/14 13:02 upstream 8ffd015db85f 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in dev_set_allmulti
2025/04/13 17:59 upstream 7cdabafc0012 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in dev_set_allmulti
2025/04/10 16:22 upstream 3b07108ada81 988b336c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in dev_set_allmulti
2025/04/10 10:23 upstream 3b07108ada81 988b336c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in dev_set_allmulti
2025/04/17 11:10 upstream cfb2e2c57aef 552876f8 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 possible deadlock in dev_set_allmulti
2025/04/16 14:25 upstream 1a1d569a75f3 a95239b1 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 possible deadlock in dev_set_allmulti
2025/04/13 16:03 upstream 7cdabafc0012 0bd6db41 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu2-arm64 possible deadlock in dev_set_allmulti
2025/04/13 19:25 net 8c941f14a694 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-this-kasan-gce possible deadlock in dev_set_allmulti
2025/04/17 01:09 net-next ac1df712442c 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/04/16 17:06 net-next ac1df712442c 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/04/15 15:00 net-next 0f2be57686c7 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/04/14 18:53 net-next b65999e7238e 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/04/12 11:13 net-next faeefc173be4 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/04/11 21:51 net-next 0c49baf099ba 12ba9c21 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/03/11 18:17 net-next 40587f749df2 f2eee6b3 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/03/08 05:35 net-next e2537326e3b6 7e3bd60d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-net-kasan-gce possible deadlock in dev_set_allmulti
2025/04/14 04:49 linux-next 01c6df60d5d4 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in dev_set_allmulti
2025/04/13 07:30 linux-next 01c6df60d5d4 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in dev_set_allmulti
2025/04/29 05:58 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 aeb6ec69 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/28 14:46 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/27 21:34 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/27 00:46 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/26 22:34 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/26 19:03 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/26 05:32 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/25 05:24 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 e3715315 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/24 19:30 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 9c80ffa0 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/24 01:54 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 9882047a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/23 00:05 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 53a8b9bd .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/22 18:15 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 53a8b9bd .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/22 08:29 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 2a20f901 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/21 00:08 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 2a20f901 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/20 14:34 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 2a20f901 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/20 13:22 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 2a20f901 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/20 04:10 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 2a20f901 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/17 13:30 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 2a6ededb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/15 17:15 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 23b969b7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/13 04:06 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 2fe2b96c3818 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/10 21:54 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 2fe2b96c3818 1bc60a19 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
2025/04/10 12:18 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 2fe2b96c3818 988b336c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 possible deadlock in dev_set_allmulti
* Struck through repros no longer work on HEAD.