possible deadlock in __d_alloc_parallel

Status: upstream: reported on 2026/10/02 17:04
Subsystems: overlayfs
Labels: prio:high
[Documentation on labels]
Reported-by: syzbot+52aa59fd5e3cd8a19dd7@syzkaller.appspotmail.com
First crash: 4d06h, last: 1h12m
▶ ▼ ✨ AI Jobs (1)
ID Workflow Result Correct Bug Created Started Finished Revision
d269f1a8 assessment-security DenialOfService: ❌ Exploitable: ❌ FilesystemTrigger: ❌ NetworkTrigger: ❌ PeripheralTrigger: ❌ RemoteTrigger: ❌ Unprivileged: ✅ UserNamespace: ✅ VMGuestTrigger: ❌ VMHostTrigger: ❌ ❓ possible deadlock in __d_alloc_parallel 2026/09/30 05:49 2026/09/30 05:49 2026/09/30 06:36 7808aef4
▶ ▼ Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [overlayfs?] possible deadlock in __d_alloc_parallel 0 (1) 2026/10/02 17:04

Sample crash report:
netlink: 300 bytes leftover after parsing attributes in process `syz.2.606'.
======================================================
WARNING: possible circular locking dependency detected
syzkaller #0 Not tainted
------------------------------------------------------
syz.2.606/7709 is trying to acquire lock:
ffff8880787d6920 (DCACHE_PAR_LOOKUP){+.+.}-{0:0}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline]
ffff8880787d6920 (DCACHE_PAR_LOOKUP){+.+.}-{0:0}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline]
ffff8880787d6920 (DCACHE_PAR_LOOKUP){+.+.}-{0:0}, at: __d_alloc_parallel+0x39e/0x1700 fs/dcache.c:2881

but task is already holding lock:
ffff888056c46408 (&type->i_mutex_dir_key#5){++++}-{4:4}, at: inode_lock_shared include/linux/fs.h:1039 [inline]
ffff888056c46408 (&type->i_mutex_dir_key#5){++++}-{4:4}, at: lookup_slow+0x46/0x80 fs/namei.c:1935

which lock already depends on the new lock.


the existing dependency chain (in reverse order) is:

-> #1 (&type->i_mutex_dir_key#5){++++}-{4:4}:
       down_read+0x45/0x320 kernel/locking/rwsem.c:1574
       inode_lock_shared include/linux/fs.h:1039 [inline]
       lookup_slow+0x46/0x80 fs/namei.c:1935
       ovl_lookup_positive_unlocked fs/overlayfs/namei.c:216 [inline]
       ovl_lookup_single+0x323/0xe90 fs/overlayfs/namei.c:260
       ovl_lookup_layer+0x377/0x440 fs/overlayfs/namei.c:365
       ovl_lookup_layers fs/overlayfs/namei.c:1109 [inline]
       ovl_lookup+0x5e5/0x1c80 fs/overlayfs/namei.c:1403
       __lookup_slow+0x1fb/0x2f0 fs/namei.c:1919
       lookup_slow+0x59/0x80 fs/namei.c:1936
       walk_component fs/namei.c:2282 [inline]
       lookup_last fs/namei.c:2789 [inline]
       path_lookupat+0x3f5/0x8c0 fs/namei.c:2813
       filename_lookup+0x265/0x5d0 fs/namei.c:2842
       filename_setxattr+0xc2/0x630 fs/xattr.c:685
       path_setxattrat+0x408/0x450 fs/xattr.c:734
       __do_sys_setxattr fs/xattr.c:768 [inline]
       __se_sys_setxattr fs/xattr.c:764 [inline]
       __x64_sys_setxattr+0xbc/0xe0 fs/xattr.c:764
       do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
       do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
       entry_SYSCALL_64_after_hwframe+0x77/0x7f

-> #0 (DCACHE_PAR_LOOKUP){+.+.}-{0:0}:
       check_prev_add kernel/locking/lockdep.c:3209 [inline]
       check_prevs_add kernel/locking/lockdep.c:3328 [inline]
       validate_chain kernel/locking/lockdep.c:3952 [inline]
       __lock_acquire+0x164c/0x2de0 kernel/locking/lockdep.c:5288
       lock_acquire+0x115/0x350 kernel/locking/lockdep.c:5942
       d_wait_lookup fs/dcache.c:2838 [inline]
       __d_alloc_parallel+0xc32/0x1700 fs/dcache.c:2942
       __lookup_slow+0x82/0x2f0 fs/namei.c:1904
       lookup_slow+0x59/0x80 fs/namei.c:1936
       walk_component fs/namei.c:2282 [inline]
       lookup_last fs/namei.c:2789 [inline]
       path_lookupat+0x3f5/0x8c0 fs/namei.c:2813
       filename_lookup+0x265/0x5d0 fs/namei.c:2842
       user_path_at+0x40/0x160 fs/namei.c:3641
       do_mount fs/namespace.c:4191 [inline]
       __do_sys_mount fs/namespace.c:4407 [inline]
       __se_sys_mount+0x2dc/0x420 fs/namespace.c:4384
       do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
       do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
       entry_SYSCALL_64_after_hwframe+0x77/0x7f

other info that might help us debug this:

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  rlock(&type->i_mutex_dir_key#5);
                               lock(DCACHE_PAR_LOOKUP);
                               lock(&type->i_mutex_dir_key#5);
  lock(DCACHE_PAR_LOOKUP);

 *** DEADLOCK ***

locks held by syz.2.606/7709: 1, last CPU#1:
 #0: ffff888056c46408 (&type->i_mutex_dir_key#5){++++}-{4:4}, at: inode_lock_shared include/linux/fs.h:1039 [inline]
 #0: ffff888056c46408 (&type->i_mutex_dir_key#5){++++}-{4:4}, at: lookup_slow+0x46/0x80 fs/namei.c:1935

stack backtrace:
CPU: 1 UID: 0 PID: 7709 Comm: syz.2.606 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
 print_circular_bug+0x2e2/0x300 kernel/locking/lockdep.c:2087
 check_noncircular+0x12f/0x150 kernel/locking/lockdep.c:2219
 check_prev_add kernel/locking/lockdep.c:3209 [inline]
 check_prevs_add kernel/locking/lockdep.c:3328 [inline]
 validate_chain kernel/locking/lockdep.c:3952 [inline]
 __lock_acquire+0x164c/0x2de0 kernel/locking/lockdep.c:5288
 lock_acquire+0x115/0x350 kernel/locking/lockdep.c:5942
 d_wait_lookup fs/dcache.c:2838 [inline]
 __d_alloc_parallel+0xc32/0x1700 fs/dcache.c:2942
 __lookup_slow+0x82/0x2f0 fs/namei.c:1904
 lookup_slow+0x59/0x80 fs/namei.c:1936
 walk_component fs/namei.c:2282 [inline]
 lookup_last fs/namei.c:2789 [inline]
 path_lookupat+0x3f5/0x8c0 fs/namei.c:2813
 filename_lookup+0x265/0x5d0 fs/namei.c:2842
 user_path_at+0x40/0x160 fs/namei.c:3641
 do_mount fs/namespace.c:4191 [inline]
 __do_sys_mount fs/namespace.c:4407 [inline]
 __se_sys_mount+0x2dc/0x420 fs/namespace.c:4384
 do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
 do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fa41039e159
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fa4112cd028 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00007fa410625fa0 RCX: 00007fa41039e159
RDX: 0000200000002100 RSI: 00002000000020c0 RDI: 0000000000000000
RBP: 00007fa41043506b R08: 0000200000002140 R09: 0000000000000000
R10: 0000000000000080 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fa410626038 R14: 00007fa410625fa0 R15: 00007ffd6a71dab8
 </TASK>

Crashes (72):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/10/02 22:02 linux-next 6474fa070f2b 57bbd979 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/10/02 16:24 linux-next 9f24d789f03b 57bbd979 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/10/02 14:20 linux-next 9f24d789f03b 6d32eb1f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/10/02 12:33 linux-next 6474fa070f2b 6d32eb1f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/10/02 08:20 linux-next 6474fa070f2b 6d32eb1f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/10/02 05:19 linux-next 6474fa070f2b 6d32eb1f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/10/02 00:07 linux-next 9f24d789f03b 6d32eb1f .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/10/01 20:45 linux-next 9f24d789f03b 38f7f0d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/10/01 20:45 linux-next 9f24d789f03b 38f7f0d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/10/01 13:26 linux-next 6474fa070f2b 38f7f0d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/10/01 10:57 linux-next 6474fa070f2b 38f7f0d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/10/01 08:12 linux-next 6474fa070f2b 38f7f0d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/10/01 05:14 linux-next 6c2cb8b8b843 38f7f0d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/10/01 03:01 linux-next 6474fa070f2b 892a21ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/30 21:10 linux-next 6c2cb8b8b843 892a21ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 20:09 linux-next 6474fa070f2b 892a21ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/30 16:07 linux-next 6c2cb8b8b843 892a21ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 12:43 linux-next 6474fa070f2b 892a21ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 10:01 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/30 09:14 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/30 09:06 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 08:48 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 08:46 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 07:46 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 07:39 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 05:36 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 05:35 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 05:05 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 05:04 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 04:55 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/30 03:06 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/30 00:35 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/29 21:14 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 21:13 linux-next 6474fa070f2b 7808aef4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 16:39 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 12:29 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/29 10:24 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/29 09:26 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 08:07 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 08:04 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/29 06:49 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/29 04:04 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/29 03:29 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 03:21 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 03:20 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 03:20 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 03:18 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 03:17 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 03:17 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/29 03:16 linux-next 6375e61c01e9 7bf4ea23 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/28 21:32 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/28 20:35 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/28 18:50 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-rust-kasan-gce possible deadlock in __d_alloc_parallel
2026/09/28 17:29 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/28 17:29 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/28 17:24 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/28 17:21 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
2026/09/28 16:55 linux-next 6375e61c01e9 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in __d_alloc_parallel
* Struck through repros no longer work on HEAD.