------------[ cut here ]------------ refcount_t: addition on 0; use-after-free. WARNING: CPU: 0 PID: 19641 at lib/refcount.c:25 refcount_warn_saturate+0x169/0x1e0 lib/refcount.c:25 Modules linked in: CPU: 0 PID: 19641 Comm: syz-executor.0 Not tainted 5.14.0-rc5-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:refcount_warn_saturate+0x169/0x1e0 lib/refcount.c:25 Code: 09 31 ff 89 de e8 17 ca 9e fd 84 db 0f 85 36 ff ff ff e8 ca c3 9e fd 48 c7 c7 40 83 e3 89 c6 05 b3 37 81 09 01 e8 bc da 14 05 <0f> 0b e9 17 ff ff ff e8 ab c3 9e fd 0f b6 1d 98 37 81 09 31 ff 89 RSP: 0018:ffffc90001b9fd28 EFLAGS: 00010282 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: ffff888021e1d4c0 RSI: ffffffff815d87b5 RDI: fffff52000373f97 RBP: 0000000000000002 R08: 0000000000000000 R09: 0000000000000000 R10: ffffffff815d25ee R11: 0000000000000000 R12: ffff888029ed8000 R13: ffffc90001b9fe34 R14: ffffc90001b9fe40 R15: 0000000000000001 FS: 00007f36772c1700(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000558befc19270 CR3: 0000000014b95000 CR4: 00000000001506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: __refcount_add include/linux/refcount.h:199 [inline] __refcount_inc include/linux/refcount.h:250 [inline] refcount_inc include/linux/refcount.h:267 [inline] kref_get include/linux/kref.h:45 [inline] j1939_netdev_start+0x68e/0x930 net/can/j1939/main.c:254 j1939_sk_bind+0x426/0xeb0 net/can/j1939/socket.c:482 __sys_bind+0x1e9/0x250 net/socket.c:1690 __do_sys_bind net/socket.c:1701 [inline] __se_sys_bind net/socket.c:1699 [inline] __x64_sys_bind+0x6f/0xb0 net/socket.c:1699 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x4665e9 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 bc ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f36772c1188 EFLAGS: 00000246 ORIG_RAX: 0000000000000031 RAX: ffffffffffffffda RBX: 000000000056c038 RCX: 00000000004665e9 RDX: 0000000000000018 RSI: 0000000020000240 RDI: 0000000000000009 RBP: 00000000004bfcc4 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 000000000056c038 R13: 00007ffc226d5a3f R14: 00007f36772c1300 R15: 0000000000022000 ---------------- Code disassembly (best guess): 0: 09 31 or %esi,(%rcx) 2: ff 89 de e8 17 ca decl -0x35e81722(%rcx) 8: 9e sahf 9: fd std a: 84 db test %bl,%bl c: 0f 85 36 ff ff ff jne 0xffffff48 12: e8 ca c3 9e fd callq 0xfd9ec3e1 17: 48 c7 c7 40 83 e3 89 mov $0xffffffff89e38340,%rdi 1e: c6 05 b3 37 81 09 01 movb $0x1,0x98137b3(%rip) # 0x98137d8 25: e8 bc da 14 05 callq 0x514dae6 2a: 0f 0b ud2 <-- trapping instruction 2c: e9 17 ff ff ff jmpq 0xffffff48 31: e8 ab c3 9e fd callq 0xfd9ec3e1 36: 0f b6 1d 98 37 81 09 movzbl 0x9813798(%rip),%ebx # 0x98137d5 3d: 31 ff xor %edi,%edi 3f: 89 .byte 0x89