syzbot


KASAN: use-after-free Read in rose_get_neigh

Status: upstream: reported C repro on 2025/03/17 15:45
Bug presence: origin:upstream
[Documentation on labels]
Reported-by: syzbot+a30154b4da062a2cc7b2@syzkaller.appspotmail.com
First crash: 84d, last: 2d17h
Bug presence (1)
Date Name Commit Repro Result
2025/06/02 upstream (ToT) 7f9039c524a3 C [report] KASAN: slab-use-after-free Read in rose_get_neigh
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-5.15 KASAN: use-after-free Read in rose_get_neigh (2) origin:upstream C 76 5d23h 69d 0/3 upstream: reported C repro on 2025/04/01 12:19
linux-5.15 KASAN: use-after-free Read in rose_get_neigh 1 313d 313d 0/3 auto-obsoleted due to no activity on 2024/11/08 20:40
upstream KASAN: slab-use-after-free Read in rose_get_neigh hams C error 914 1h07m 363d 0/28 upstream: reported C repro on 2024/06/11 06:56

Sample crash report:
IPv6: ADDRCONF(NETDEV_CHANGE): bpq0: link becomes ready
==================================================================
BUG: KASAN: use-after-free in rose_get_neigh+0x17c/0x480 net/rose/rose_route.c:692
Read of size 1 at addr ffff0000cb99a830 by task syz-executor421/4352

CPU: 0 PID: 4352 Comm: syz-executor421 Not tainted 6.1.140-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
Call trace:
 dump_backtrace+0x1c8/0x1f4 arch/arm64/kernel/stacktrace.c:158
 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:165
 __dump_stack+0x30/0x40 lib/dump_stack.c:88
 dump_stack_lvl+0xf8/0x160 lib/dump_stack.c:106
 print_address_description+0x88/0x220 mm/kasan/report.c:316
 print_report+0x50/0x68 mm/kasan/report.c:427
 kasan_report+0xa8/0x100 mm/kasan/report.c:531
 __asan_report_load1_noabort+0x2c/0x38 mm/kasan/report_generic.c:348
 rose_get_neigh+0x17c/0x480 net/rose/rose_route.c:692
 rose_connect+0x364/0xfe8 net/rose/af_rose.c:816
 __sys_connect_file net/socket.c:2011 [inline]
 __sys_connect+0x264/0x28c net/socket.c:2028
 __do_sys_connect net/socket.c:2038 [inline]
 __se_sys_connect net/socket.c:2035 [inline]
 __arm64_sys_connect+0x7c/0x94 net/socket.c:2035
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2bc arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:140
 do_el0_svc+0x58/0x13c arch/arm64/kernel/syscall.c:204
 el0_svc+0x58/0x138 arch/arm64/kernel/entry-common.c:637
 el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
 el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:585

Allocated by task 4348:
 kasan_save_stack mm/kasan/common.c:45 [inline]
 kasan_set_track+0x4c/0x80 mm/kasan/common.c:52
 kasan_save_alloc_info+0x28/0x34 mm/kasan/generic.c:505
 ____kasan_kmalloc mm/kasan/common.c:374 [inline]
 __kasan_kmalloc+0xa0/0xb8 mm/kasan/common.c:383
 kasan_kmalloc include/linux/kasan.h:211 [inline]
 kmalloc_trace+0x7c/0x94 mm/slab_common.c:1031
 kmalloc include/linux/slab.h:563 [inline]
 rose_add_node+0x1f4/0xba4 net/rose/rose_route.c:85
 rose_rt_ioctl+0xa04/0xde4 net/rose/rose_route.c:747
 rose_ioctl+0x378/0xb80 net/rose/af_rose.c:1380
 sock_do_ioctl+0xf8/0x240 net/socket.c:1204
 sock_ioctl+0x5c4/0x840 net/socket.c:1321
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:870 [inline]
 __se_sys_ioctl fs/ioctl.c:856 [inline]
 __arm64_sys_ioctl+0x14c/0x1c8 fs/ioctl.c:856
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2bc arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:140
 do_el0_svc+0x58/0x13c arch/arm64/kernel/syscall.c:204
 el0_svc+0x58/0x138 arch/arm64/kernel/entry-common.c:637
 el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
 el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:585

Freed by task 4350:
 kasan_save_stack mm/kasan/common.c:45 [inline]
 kasan_set_track+0x4c/0x80 mm/kasan/common.c:52
 kasan_save_free_info+0x3c/0x60 mm/kasan/generic.c:516
 ____kasan_slab_free+0x148/0x1b0 mm/kasan/common.c:236
 __kasan_slab_free+0x18/0x28 mm/kasan/common.c:244
 kasan_slab_free include/linux/kasan.h:177 [inline]
 slab_free_hook mm/slub.c:1724 [inline]
 slab_free_freelist_hook+0x16c/0x1ec mm/slub.c:1750
 slab_free mm/slub.c:3661 [inline]
 __kmem_cache_free+0xc0/0x224 mm/slub.c:3674
 kfree+0xd0/0x1ac mm/slab_common.c:988
 rose_remove_neigh+0x23c/0x2b8 net/rose/rose_route.c:-1
 rose_rt_device_down+0x33c/0x394 net/rose/rose_route.c:522
 rose_device_event+0x5d8/0x68c net/rose/af_rose.c:248
 notifier_call_chain kernel/notifier.c:87 [inline]
 raw_notifier_call_chain+0xd4/0x164 kernel/notifier.c:455
 call_netdevice_notifiers_info net/core/dev.c:2001 [inline]
 call_netdevice_notifiers_extack net/core/dev.c:2039 [inline]
 call_netdevice_notifiers net/core/dev.c:2053 [inline]
 __dev_notify_flags+0x250/0x46c net/core/dev.c:-1
 dev_change_flags+0xc8/0x154 net/core/dev.c:8702
 dev_ifsioc+0x524/0xed0 net/core/dev_ioctl.c:327
 dev_ioctl+0x4c8/0xc8c net/core/dev_ioctl.c:588
 sock_do_ioctl+0x18c/0x240 net/socket.c:1218
 sock_ioctl+0x5c4/0x840 net/socket.c:1321
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:870 [inline]
 __se_sys_ioctl fs/ioctl.c:856 [inline]
 __arm64_sys_ioctl+0x14c/0x1c8 fs/ioctl.c:856
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2bc arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:140
 do_el0_svc+0x58/0x13c arch/arm64/kernel/syscall.c:204
 el0_svc+0x58/0x138 arch/arm64/kernel/entry-common.c:637
 el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
 el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:585

The buggy address belongs to the object at ffff0000cb99a800
 which belongs to the cache kmalloc-512 of size 512
The buggy address is located 48 bytes inside of
 512-byte region [ffff0000cb99a800, ffff0000cb99aa00)

The buggy address belongs to the physical page:
page:000000000f4ebb65 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10b998
head:000000000f4ebb65 order:2 compound_mapcount:0 compound_pincount:0
flags: 0x5ffc00000010200(slab|head|node=0|zone=2|lastcpupid=0x7ff)
raw: 05ffc00000010200 0000000000000000 dead000000000001 ffff0000c0002600
raw: 0000000000000000 0000000000100010 00000001ffffffff 0000000000000000
page dumped because: kasan: bad access detected

Memory state around the buggy address:
 ffff0000cb99a700: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
 ffff0000cb99a780: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
>ffff0000cb99a800: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                                     ^
 ffff0000cb99a880: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff0000cb99a900: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================

Crashes (64):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/06/01 13:58 linux-6.1.y da3c5173c55f 3d2f584d .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/05 01:18 linux-6.1.y b6736e03756f b0714e37 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/28 15:11 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/27 06:37 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/30 16:51 linux-6.1.y da3c5173c55f 3d2f584d .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/04/01 12:08 linux-6.1.y 8e60a714ba3b 36d76a97 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/06/07 07:19 linux-6.1.y 58485ff1a74f 4826c28e .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/06/01 18:49 linux-6.1.y da3c5173c55f 3d2f584d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/06/01 18:48 linux-6.1.y da3c5173c55f 3d2f584d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/17 02:56 linux-6.1.y 02b72ccb5f9d f41472b0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/08 04:31 linux-6.1.y ac7079a42ea5 dbf35fa1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/08 02:37 linux-6.1.y ac7079a42ea5 dbf35fa1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/07 22:50 linux-6.1.y ac7079a42ea5 dbf35fa1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/04 22:32 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/04 22:31 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/03 04:35 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/03 04:35 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/05/03 04:35 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/30 14:37 linux-6.1.y 535ec20c5027 85a5a23f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/30 14:36 linux-6.1.y 535ec20c5027 85a5a23f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/30 04:20 linux-6.1.y 535ec20c5027 85a5a23f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/30 04:19 linux-6.1.y 535ec20c5027 85a5a23f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/28 14:40 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/28 14:40 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/28 14:33 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/28 14:33 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/27 21:17 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/27 06:06 linux-6.1.y 535ec20c5027 c6b4fb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/23 23:55 linux-6.1.y 420102835862 73a168d0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/23 23:55 linux-6.1.y 420102835862 73a168d0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/23 03:21 linux-6.1.y 420102835862 53a8b9bd .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/16 19:44 linux-6.1.y 420102835862 a95239b1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/16 19:44 linux-6.1.y 420102835862 a95239b1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/09 00:13 linux-6.1.y 3dfebb87d7eb a775275d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/07 20:09 linux-6.1.y 3dfebb87d7eb a2ada0e7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/06 22:24 linux-6.1.y 8e60a714ba3b 1c65791e .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/06 16:25 linux-6.1.y 8e60a714ba3b 1c65791e .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/01 13:36 linux-6.1.y 8e60a714ba3b 36d76a97 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/04/01 13:36 linux-6.1.y 8e60a714ba3b 36d76a97 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan KASAN: use-after-free Read in rose_get_neigh
2025/06/05 08:18 linux-6.1.y 58485ff1a74f 6b6b5f21 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/06/01 05:48 linux-6.1.y da3c5173c55f 3d2f584d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/30 14:35 linux-6.1.y da3c5173c55f 3d2f584d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/14 09:39 linux-6.1.y 02b72ccb5f9d 7344edeb .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/14 08:09 linux-6.1.y 02b72ccb5f9d 7344edeb .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/03 20:31 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/03 16:28 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/03 13:54 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/03 12:28 linux-6.1.y b6736e03756f b0714e37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/02 05:41 linux-6.1.y 535ec20c5027 51b137cd .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/05/02 05:28 linux-6.1.y 535ec20c5027 51b137cd .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/04/29 03:04 linux-6.1.y 535ec20c5027 aeb6ec69 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/04/16 18:20 linux-6.1.y 420102835862 a95239b1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/04/04 07:13 linux-6.1.y 8e60a714ba3b d7ae3a11 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/04/01 11:22 linux-6.1.y 8e60a714ba3b 36d76a97 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/03/17 17:21 linux-6.1.y 344a09659766 948c34e4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
2025/03/17 15:45 linux-6.1.y 344a09659766 948c34e4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 KASAN: use-after-free Read in rose_get_neigh
* Struck through repros no longer work on HEAD.