================================================================== BUG: KFENCE: use-after-free read in rose_get_neigh+0x17f/0x640 net/rose/rose_route.c:692 Use-after-free read at 0xffff88816db7a030 (in kfence-#188): rose_get_neigh+0x17f/0x640 net/rose/rose_route.c:692 rose_connect+0x2d4/0x1540 net/rose/af_rose.c:816 __sys_connect_file+0x13e/0x1a0 net/socket.c:2038 __sys_connect+0x14d/0x170 net/socket.c:2057 __do_sys_connect net/socket.c:2063 [inline] __se_sys_connect net/socket.c:2060 [inline] __x64_sys_connect+0x72/0xb0 net/socket.c:2060 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f kfence-#188: 0xffff88816db7ae80-0xffff88816db7afe7, size=360, cache=filp allocated by task 5953 on cpu 2 at 85.374706s (8.475714s ago): alloc_empty_file+0x55/0x1e0 fs/file_table.c:234 path_openat+0xe0/0x2d40 fs/namei.c:4025 do_filp_open+0x20b/0x470 fs/namei.c:4066 do_sys_openat2+0x11b/0x1d0 fs/open.c:1429 do_sys_open fs/open.c:1444 [inline] __do_sys_openat fs/open.c:1460 [inline] __se_sys_openat fs/open.c:1455 [inline] __x64_sys_openat+0x174/0x210 fs/open.c:1455 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f freed by task 5953 on cpu 2 at 85.382081s (8.484716s ago): file_free fs/file_table.c:76 [inline] __fput+0x68d/0xb70 fs/file_table.c:478 fput_close_sync+0x15e/0x1e0 fs/file_table.c:570 __do_sys_close fs/open.c:1581 [inline] __se_sys_close fs/open.c:1566 [inline] __x64_sys_close+0x8b/0x120 fs/open.c:1566 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f CPU: 1 UID: 0 PID: 8805 Comm: syz.1.528 Not tainted 6.15.0-rc3-syzkaller-00019-gbc3372351d0c #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:rose_get_neigh+0x17f/0x640 net/rose/rose_route.c:692 Code: 03 42 80 3c 28 00 0f 85 ed 03 00 00 4c 8b 7d 00 49 8d 7f 30 48 89 fa 48 c1 ea 03 42 0f b6 14 2a 84 d2 74 06 0f 8e c5 03 00 00 <45> 0f b6 77 30 31 ff 44 89 f6 e8 c2 07 5c f7 45 84 f6 74 82 e8 d8 RSP: 0018:ffffc9000fd27c18 EFLAGS: 00010246 RAX: 1ffff11009c83b93 RBX: 0000000000000000 RCX: ffffc9000c001000 RDX: 0000000000000000 RSI: ffffffff8a5f42bd RDI: ffff88816db7a030 RBP: ffff88804e41dc98 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000002 R11: 0000000000000001 R12: ffff88804e41dc80 R13: dffffc0000000000 R14: 00000000ffffff96 R15: ffff88816db7a000 FS: 00007f7133bf46c0(0000) GS:ffff8880d6ab2000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffff88816db7a030 CR3: 0000000052b10000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: rose_connect+0x2d4/0x1540 net/rose/af_rose.c:816 __sys_connect_file+0x13e/0x1a0 net/socket.c:2038 __sys_connect+0x14d/0x170 net/socket.c:2057 __do_sys_connect net/socket.c:2063 [inline] __se_sys_connect net/socket.c:2060 [inline] __x64_sys_connect+0x72/0xb0 net/socket.c:2060 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xcd/0x260 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f7132d8e169 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 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f7133bf4038 EFLAGS: 00000246 ORIG_RAX: 000000000000002a RAX: ffffffffffffffda RBX: 00007f7132fb5fa0 RCX: 00007f7132d8e169 RDX: 0000000000000040 RSI: 0000200000000040 RDI: 0000000000000007 RBP: 00007f7132e10a68 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f7132fb5fa0 R15: 00007fff407dc9f8 ================================================================== ---------------- Code disassembly (best guess): 0: 03 42 80 add -0x80(%rdx),%eax 3: 3c 28 cmp $0x28,%al 5: 00 0f add %cl,(%rdi) 7: 85 ed test %ebp,%ebp 9: 03 00 add (%rax),%eax b: 00 4c 8b 7d add %cl,0x7d(%rbx,%rcx,4) f: 00 49 8d add %cl,-0x73(%rcx) 12: 7f 30 jg 0x44 14: 48 89 fa mov %rdi,%rdx 17: 48 c1 ea 03 shr $0x3,%rdx 1b: 42 0f b6 14 2a movzbl (%rdx,%r13,1),%edx 20: 84 d2 test %dl,%dl 22: 74 06 je 0x2a 24: 0f 8e c5 03 00 00 jle 0x3ef * 2a: 45 0f b6 77 30 movzbl 0x30(%r15),%r14d <-- trapping instruction 2f: 31 ff xor %edi,%edi 31: 44 89 f6 mov %r14d,%esi 34: e8 c2 07 5c f7 call 0xf75c07fb 39: 45 84 f6 test %r14b,%r14b 3c: 74 82 je 0xffffffc0 3e: e8 .byte 0xe8 3f: d8 .byte 0xd8