WARNING: bad unlock balance in ntfs_readdir

Status: upstream: reported C repro on 2026/10/23 21:29
Subsystems: ntfs3
Labels: prio:high
[Documentation on labels]
Reported-by: syzbot+5c0ed4f2974a8b100ed4@syzkaller.appspotmail.com
First crash: 4d01h, last: now
Cause bisection: failed (error log, bisect log)
  
▶ ▼ ✨ AI Jobs (1)
ID Workflow Result Correct Bug Created Started Finished Revision
923735ea assessment-security DenialOfService: ✅ Exploitable: ✅ FilesystemTrigger: ✅ NetworkTrigger: ❌ PeripheralTrigger: ❌ RemoteTrigger: ❌ Unprivileged: ❌ UserNamespace: ❌ VMGuestTrigger: ❌ VMHostTrigger: ❌ ❓ WARNING: bad unlock balance in ntfs_readdir 2026/10/21 05:02 2026/10/21 05:02 2026/10/21 05:39 61c200c7
▶ ▼ Discussions (2)
Title Replies (including bot) Last reply
[PATCH] fs/ntfs3: fix double ni_unlock() in ntfs_readdir() 1 (1) 2026/10/23 22:35
[syzbot] [ntfs3?] WARNING: bad unlock balance in ntfs_readdir 0 (1) 2026/10/23 21:29

Sample crash report:
ntfs3(loop0): Failed to load $Extend (-22).
ntfs3(loop0): Failed to initialize $Extend.
=====================================
WARNING: bad unlock balance detected!
syzkaller #0 Not tainted
-------------------------------------
syz-executor416/5625 is trying to release lock (&ni->ni_lock) at:
[<ffffffff833dfc48>] ni_unlock fs/ntfs3/ntfs_fs.h:1266 [inline]
[<ffffffff833dfc48>] ntfs_readdir+0xac8/0xf00 fs/ntfs3/dir.c:625
but there are no more locks to release!

other info that might help us debug this:
locks held by syz-executor416/5625: 2, last CPU#0:
 #0: ffff8880741d62b0 (&f->f_pos_lock){+.+.}-{4:4}, at: fdget_pos+0x118/0x160 fs/file.c:1409
 #1: ffff888076ed7490 (&type->i_mutex_dir_key#6){.+.+}-{4:4}, at: iterate_dir+0x287/0x880 fs/readdir.c:106

stack backtrace:
CPU: 0 UID: 0 PID: 5625 Comm: syz-executor416 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/16/2026
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
 print_unlock_imbalance_bug+0xdc/0xf0 kernel/locking/lockdep.c:5349
 __lock_release kernel/locking/lockdep.c:5590 [inline]
 lock_release+0x252/0x3c0 kernel/locking/lockdep.c:5964
 __mutex_unlock_slowpath+0x88/0x900 kernel/locking/mutex.c:989
 ni_unlock fs/ntfs3/ntfs_fs.h:1266 [inline]
 ntfs_readdir+0xac8/0xf00 fs/ntfs3/dir.c:625
 iterate_dir+0x3db/0x880 fs/readdir.c:114
 __do_sys_getdents fs/readdir.c:324 [inline]
 __se_sys_getdents+0xf1/0x270 fs/readdir.c:309
 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:0x7f3fff35c289
Code: c0 79 93 eb d5 48 8d 7c 1d 00 eb 99 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 d8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffe78a3d2c8 EFLAGS: 00000246 ORIG_RAX: 000000000000004e
RAX: ffffffffffffffda RBX: 0000200000000000 RCX: 00007f3fff35c289
RDX: 00000000000000b8 RSI: 0000200000000040 RDI: 0000000000000004
RBP: 0000000000000001 R08: 0000000000000000 R09: 00007ffe78a3d3f8
R10: 00007f3fff3acfb3 R11: 0000000000000246 R12: 00007ffe78a3d3e8
R13: 0000000000000002 R14: 00007f3fff404c80 R15: 000000000000000

Crashes (263):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/10/20 06:45 linux-next 3d229ce89862 72cdc28d .config strace log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 22:57 linux-next 20a33c6b6cbe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 22:53 linux-next 20a33c6b6cbe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 21:40 linux-next bd1ecbb61afe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 20:19 linux-next bd1ecbb61afe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 19:04 linux-next bd1ecbb61afe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 11:34 linux-next bd1ecbb61afe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 09:27 linux-next bd1ecbb61afe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 08:47 linux-next bd1ecbb61afe d566bfda .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 07:10 linux-next bd1ecbb61afe 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 05:31 linux-next bd1ecbb61afe 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 03:38 linux-next bd1ecbb61afe 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/23 00:36 linux-next bd1ecbb61afe 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 22:21 linux-next bd1ecbb61afe 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 15:32 linux-next bd1ecbb61afe 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 14:14 linux-next bd1ecbb61afe 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 13:11 linux-next 9a482184d910 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 08:13 linux-next 9a482184d910 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 06:16 linux-next 9a482184d910 4ba27f85 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 05:14 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 03:18 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/22 01:49 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 22:30 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 21:21 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 19:19 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 18:47 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 16:05 linux-next 9a482184d910 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 13:22 linux-next 8f7df005a756 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 11:38 linux-next 8f7df005a756 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 10:32 linux-next 8f7df005a756 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 08:55 linux-next 8f7df005a756 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 07:55 linux-next 8f7df005a756 61c200c7 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/21 02:50 linux-next 8f7df005a756 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 21:22 linux-next 8f7df005a756 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 19:58 linux-next 8f7df005a756 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 18:10 linux-next 8f7df005a756 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 16:43 linux-next 8f7df005a756 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 15:40 linux-next 8f7df005a756 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 15:39 linux-next 8f7df005a756 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 12:30 linux-next 3d229ce89862 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 12:30 linux-next 3d229ce89862 df8746fb .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 10:52 linux-next 3d229ce89862 72cdc28d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/20 09:29 linux-next 3d229ce89862 72cdc28d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
2026/10/19 21:19 linux-next 3d229ce89862 72cdc28d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root WARNING: bad unlock balance in ntfs_readdir
* Struck through repros no longer work on HEAD.