------------[ cut here ]------------ DEBUG_RWSEMS_WARN_ON((rwsem_owner(sem) != current) && !rwsem_test_oflags(sem, RWSEM_NONSPINNABLE)): count = 0x0, magic = 0xffff888045138328, owner = 0x0, curr 0xffff888033be0000, list not empty WARNING: kernel/locking/rwsem.c:1413 at __up_write kernel/locking/rwsem.c:1412 [inline], CPU#0: syz.0.0/5334 WARNING: kernel/locking/rwsem.c:1413 at up_write+0x35c/0x4a0 kernel/locking/rwsem.c:1688, CPU#0: syz.0.0/5334 Modules linked in: CPU: 0 UID: 0 PID: 5334 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 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 40 1e 0d 8c 4c 0f 44 d0 48 8b 7c 24 10 48 c7 c6 e0 20 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 43 8b 3a 03 e9 d6 fc ff ff 48 c7 c1 RSP: 0000:ffffc9000dbdf940 EFLAGS: 00010246 RAX: ffffffff8c0d1e60 RBX: ffff888045138328 RCX: ffff888045138328 RDX: 0000000000000000 RSI: ffffffff8c0d20e0 RDI: ffffffff907da620 RBP: dffffc0000000000 R08: 0000000000000000 R09: ffff888033be0000 R10: ffffffff8c0d1e60 R11: ffffed1008a27067 R12: 0000000000000000 R13: ffff888045138330 R14: ffff888045138380 R15: ffff888033be0000 FS: 00007f666db0e6c0(0000) GS:ffff88808c2c3000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f666569a001 CR3: 0000000012a1e000 CR4: 0000000000352ef0 Call Trace: inode_unlock include/linux/fs.h:1034 [inline] lookup_open+0x10ab/0x1a40 fs/namei.c:4578 open_last_lookups fs/namei.c:4767 [inline] path_openat+0x677/0x1d60 fs/namei.c:4997 do_file_open+0x23e/0x4a0 fs/namei.c:5029 do_sys_openat2+0x115/0x200 fs/open.c:1417 do_sys_open fs/open.c:1423 [inline] __do_sys_openat fs/open.c:1439 [inline] __se_sys_openat fs/open.c:1434 [inline] __x64_sys_openat+0x138/0x170 fs/open.c:1434 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:0x7f667179e159 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:00007f666db0dfe8 EFLAGS: 00000246 ORIG_RAX: 0000000000000101 RAX: ffffffffffffffda RBX: 00007f6671a26720 RCX: 00007f667179e159 RDX: 0000000000143041 RSI: 0000200000000040 RDI: ffffffffffffff9c RBP: 00007f667183506b R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007f6671a267b8 R14: 00007f6671a26720 R15: 00007ffe549f7a48 ---------------- Code disassembly (best guess), 2 bytes skipped: 0: 49 c7 c2 40 1e 0d 8c mov $0xffffffff8c0d1e40,%r10 7: 4c 0f 44 d0 cmove %rax,%r10 b: 48 8b 7c 24 10 mov 0x10(%rsp),%rdi 10: 48 c7 c6 e0 20 0d 8c mov $0xffffffff8c0d20e0,%rsi 17: 48 8b 14 24 mov (%rsp),%rdx 1b: 48 8b 4c 24 08 mov 0x8(%rsp),%rcx 20: 4d 89 e0 mov %r12,%r8 23: 4d 89 f9 mov %r15,%r9 26: 41 52 push %r10 * 28: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2d: 48 83 c4 08 add $0x8,%rsp 31: e8 43 8b 3a 03 call 0x33a8b79 36: e9 d6 fc ff ff jmp 0xfffffd11 3b: 48 rex.W 3c: c7 .byte 0xc7 3d: c1 .byte 0xc1