syzbot
WARNING in filename_mkdirat (2)
Status:
moderation: reported on 2026/06/06 16:43
Subsystems:
fs
Labels:
prio:high
[Documentation on labels]
Reported-by: syzbot+a3453db58a98d7809020@syzkaller.appspotmail.com
First crash: 116d, last: 2d17h
Sample crash report:
------------[ cut here ]------------
DEBUG_RWSEMS_WARN_ON((rwsem_owner(sem) != current) && !rwsem_test_oflags(sem, RWSEM_NONSPINNABLE)): count = 0x0, magic = 0xffff888076a69148, owner = 0x0, curr 0xffff88802b425dc0, list not empty
WARNING: kernel/locking/rwsem.c:1413 at __up_write kernel/locking/rwsem.c:1412 [inline], CPU#0: syz.1.1894/12996
WARNING: kernel/locking/rwsem.c:1413 at up_write+0x35c/0x4a0 kernel/locking/rwsem.c:1688, CPU#0: syz.1.1894/12996
Modules linked in:
CPU: 0 UID: 0 PID: 12996 Comm: syz.1.1894 Tainted: G L syzkaller #0 PREEMPT(full)
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/05/2026
RIP: 0010:__up_write kernel/locking/rwsem.c:1412 [inline]
RIP: 0010:up_write+0x40f/0x4a0 kernel/locking/rwsem.c:1688
Code: 0d 8c 49 c7 c2 60 1e 0d 8c 4c 0f 44 d0 48 8b 7c 24 10 48 c7 c6 00 21 0d 8c 48 8b 14 24 48 8b 4c 24 08 4d 89 e0 4d 89 f9 41 52 <67> 48 0f b9 3a 48 83 c4 08 e8 13 e5 38 03 e9 d6 fc ff ff 48 c7 c1
RSP: 0018:ffffc90003cafd80 EFLAGS: 00010246
RAX: ffffffff8c0d1e80 RBX: ffff888076a69148 RCX: ffff888076a69148
RDX: 0000000000000000 RSI: ffffffff8c0d2100 RDI: ffffffff907d8550
RBP: dffffc0000000000 R08: 0000000000000000 R09: ffff88802b425dc0
R10: ffffffff8c0d1e80 R11: ffffed100ed4d22b R12: 0000000000000000
R13: ffff888076a69150 R14: ffff888076a691a0 R15: ffff88802b425dc0
FS: 00007f79d7f8c6c0(0000) GS:ffff888124ccb000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f79d4bf1ff8 CR3: 000000004aeb8000 CR4: 0000000000350ef0
Call Trace:
<TASK>
inode_unlock include/linux/fs.h:1034 [inline]
end_dirop fs/namei.c:2955 [inline]
end_creating include/linux/namei.h:120 [inline]
end_creating_path fs/namei.c:5132 [inline]
filename_mkdirat+0x305/0x510 fs/namei.c:5448
__do_sys_mkdirat fs/namei.c:5464 [inline]
__se_sys_mkdirat+0x35/0x150 fs/namei.c:5461
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:0x7f79d719e159
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:00007f79d7f8c028 EFLAGS: 00000246 ORIG_RAX: 0000000000000102
RAX: ffffffffffffffda RBX: 00007f79d7426270 RCX: 00007f79d719e159
RDX: 0000000000000000 RSI: 0000200000000400 RDI: ffffffffffffff9c
RBP: 00007f79d723506b R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f79d7426308 R14: 00007f79d7426270 R15: 00007ffda2466978
</TASK>
----------------
Code disassembly (best guess), 1 bytes skipped:
0: 8c 49 c7 mov %cs,-0x39(%rcx)
3: c2 60 1e ret $0x1e60
6: 0d 8c 4c 0f 44 or $0x440f4c8c,%eax
b: d0 48 8b rorb $1,-0x75(%rax)
e: 7c 24 jl 0x34
10: 10 48 c7 adc %cl,-0x39(%rax)
13: c6 00 21 movb $0x21,(%rax)
16: 0d 8c 48 8b 14 or $0x148b488c,%eax
1b: 24 48 and $0x48,%al
1d: 8b 4c 24 08 mov 0x8(%rsp),%ecx
21: 4d 89 e0 mov %r12,%r8
24: 4d 89 f9 mov %r15,%r9
27: 41 52 push %r10
* 29: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction
2e: 48 83 c4 08 add $0x8,%rsp
32: e8 13 e5 38 03 call 0x338e54a
37: e9 d6 fc ff ff jmp 0xfffffd12
3c: 48 rex.W
3d: c7 .byte 0xc7
3e: c1 .byte 0xc1
* Struck through repros no longer work on HEAD.