------------[ cut here ]------------ DEBUG_RWSEMS_WARN_ON((rwsem_owner(sem) != current) && !rwsem_test_oflags(sem, RWSEM_NONSPINNABLE)): count = 0x1, magic = 0xffff88804430c328, owner = 0xffff8880001dcb00, curr 0xffff888000afcb00, list not empty WARNING: kernel/locking/rwsem.c:1413 at __up_write kernel/locking/rwsem.c:1412 [inline], CPU#0: syz.0.0/5325 WARNING: kernel/locking/rwsem.c:1413 at up_write+0x35c/0x4a0 kernel/locking/rwsem.c:1688, CPU#0: syz.0.0/5325 Modules linked in: CPU: 0 UID: 0 PID: 5325 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 60 1c 0d 8c 4c 0f 44 d0 48 8b 7c 24 10 48 c7 c6 00 1f 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 73 de 39 03 e9 d6 fc ff ff 48 c7 c1 RSP: 0000:ffffc9000f507940 EFLAGS: 00010246 RAX: ffffffff8c0d1c80 RBX: ffff88804430c328 RCX: ffff88804430c328 RDX: 0000000000000001 RSI: ffffffff8c0d1f00 RDI: ffffffff907d75f0 RBP: dffffc0000000000 R08: ffff8880001dcb00 R09: ffff888000afcb00 R10: ffffffff8c0d1c80 R11: ffffed1008861867 R12: ffff8880001dcb00 R13: ffff88804430c330 R14: ffff88804430c380 R15: ffff888000afcb00 FS: 00007f36482bc6c0(0000) GS:ffff88808c2ca000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f363b2a4001 CR3: 0000000012132000 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:0x7f364739e159 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:00007f36482bbfe8 EFLAGS: 00000246 ORIG_RAX: 0000000000000101 RAX: ffffffffffffffda RBX: 00007f3647626360 RCX: 00007f364739e159 RDX: 0000000000183042 RSI: 0000200000000080 RDI: ffffffffffffff9c RBP: 00007f3647435024 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000025 R11: 0000000000000246 R12: 0000000000000000 R13: 00007f36476263f8 R14: 00007f3647626360 R15: 00007ffd846e6b38 ---------------- Code disassembly (best guess), 1 bytes skipped: 0: 8c 49 c7 mov %cs,-0x39(%rcx) 3: c2 60 1c ret $0x1c60 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 1f movb $0x1f,(%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 73 de 39 03 call 0x339deaa 37: e9 d6 fc ff ff jmp 0xfffffd12 3c: 48 rex.W 3d: c7 .byte 0xc7 3e: c1 .byte 0xc1