------------[ cut here ]------------ refcount_t: addition on 0; use-after-free. WARNING: lib/refcount.c:25 at refcount_warn_saturate+0x9f/0x110 lib/refcount.c:25, 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:refcount_warn_saturate+0x9f/0x110 lib/refcount.c:25 Code: eb 66 85 db 74 3e 83 fb 01 75 4c e8 2b 0d f2 fc 48 8d 3d 24 07 8e 0b 67 48 0f b9 3a eb 4a e8 18 0d f2 fc 48 8d 3d 21 07 8e 0b <67> 48 0f b9 3a eb 37 e8 05 0d f2 fc 48 8d 3d 1e 07 8e 0b 67 48 0f RSP: 0018:ffffc9000f1e7c48 EFLAGS: 00010293 RAX: ffffffff84d515c8 RBX: 0000000000000002 RCX: ffff88803ebb0000 RDX: 0000000000000000 RSI: ffffffff8f367700 RDI: ffffffff90631cf0 RBP: 0000000000000000 R08: ffff88803ebb0000 R09: 0000000000000005 R10: 0000000000000004 R11: 0000000000000000 R12: dffffc0000000000 R13: ffff888000e46530 R14: ffff88801fa0a01c R15: 1ffff92001e3cfa0 FS: 00007f44560a16c0(0000) GS:ffff88808c540000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007ffdc826da80 CR3: 0000000012150000 CR4: 0000000000352ef0 Call Trace: __refcount_add include/linux/refcount.h:-1 [inline] __refcount_inc include/linux/refcount.h:366 [inline] refcount_inc include/linux/refcount.h:383 [inline] kref_get include/linux/kref.h:45 [inline] config_item_get+0x88/0x90 fs/configfs/item.c:104 configfs_get_config_item fs/configfs/configfs_internal.h:127 [inline] get_target fs/configfs/symlink.c:128 [inline] configfs_symlink+0x4ab/0x1030 fs/configfs/symlink.c:185 vfs_symlink+0x18b/0x330 fs/namei.c:5660 filename_symlinkat+0x1cd/0x410 fs/namei.c:5685 __do_sys_symlinkat fs/namei.c:5705 [inline] __se_sys_symlinkat+0x4e/0x2b0 fs/namei.c:5700 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0x174/0x580 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f445519e0d9 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:00007f44560a0fe8 EFLAGS: 00000246 ORIG_RAX: 000000000000010a RAX: ffffffffffffffda RBX: 00007f4455425fa0 RCX: 00007f445519e0d9 RDX: 00002000000002c0 RSI: ffffffffffffff9c RDI: 0000200000000280 RBP: 00007f4455235024 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007f4455426038 R14: 00007f4455425fa0 R15: 00007ffdc826e268 ---------------- Code disassembly (best guess): 0: eb 66 jmp 0x68 2: 85 db test %ebx,%ebx 4: 74 3e je 0x44 6: 83 fb 01 cmp $0x1,%ebx 9: 75 4c jne 0x57 b: e8 2b 0d f2 fc call 0xfcf20d3b 10: 48 8d 3d 24 07 8e 0b lea 0xb8e0724(%rip),%rdi # 0xb8e073b 17: 67 48 0f b9 3a ud1 (%edx),%rdi 1c: eb 4a jmp 0x68 1e: e8 18 0d f2 fc call 0xfcf20d3b 23: 48 8d 3d 21 07 8e 0b lea 0xb8e0721(%rip),%rdi # 0xb8e074b * 2a: 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2f: eb 37 jmp 0x68 31: e8 05 0d f2 fc call 0xfcf20d3b 36: 48 8d 3d 1e 07 8e 0b lea 0xb8e071e(%rip),%rdi # 0xb8e075b 3d: 67 addr32 3e: 48 rex.W 3f: 0f .byte 0xf