================================================================================ UBSAN: array-index-out-of-bounds in fs/jfs/jfs_dtree.c:628:10 index 237 is out of range for type 'struct dtslot[128]' CPU: 1 PID: 4617 Comm: syz.4.36 Not tainted 6.1.132-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/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 lib/dump_stack.c:88 [inline] dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106 dump_stack+0x1c/0x5c lib/dump_stack.c:113 ubsan_epilogue lib/ubsan.c:151 [inline] __ubsan_handle_out_of_bounds+0xfc/0x148 lib/ubsan.c:282 dtSearch+0x1718/0x1f34 fs/jfs/jfs_dtree.c:628 jfs_lookup+0x164/0x39c fs/jfs/namei.c:1459 lookup_one_qstr_excl+0x108/0x230 fs/namei.c:1605 filename_create+0x230/0x468 fs/namei.c:3877 do_mkdirat+0xac/0x510 fs/namei.c:4121 __do_sys_mkdirat fs/namei.c:4146 [inline] __se_sys_mkdirat fs/namei.c:4144 [inline] __arm64_sys_mkdirat+0x90/0xa8 fs/namei.c:4144 __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/0x168 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 ================================================================================ ================================================================== BUG: KASAN: slab-out-of-bounds in dtSearch+0x15c0/0x1f34 fs/jfs/jfs_dtree.c:783 Read of size 1 at addr ffff0000cb036da0 by task syz.4.36/4617 CPU: 1 PID: 4617 Comm: syz.4.36 Not tainted 6.1.132-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/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 lib/dump_stack.c:88 [inline] dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106 print_address_description mm/kasan/report.c:316 [inline] print_report+0x174/0x4c0 mm/kasan/report.c:427 kasan_report+0xd4/0x130 mm/kasan/report.c:531 __asan_report_load1_noabort+0x2c/0x38 mm/kasan/report_generic.c:348 dtSearch+0x15c0/0x1f34 fs/jfs/jfs_dtree.c:783 jfs_lookup+0x164/0x39c fs/jfs/namei.c:1459 lookup_one_qstr_excl+0x108/0x230 fs/namei.c:1605 filename_create+0x230/0x468 fs/namei.c:3877 do_mkdirat+0xac/0x510 fs/namei.c:4121 __do_sys_mkdirat fs/namei.c:4146 [inline] __se_sys_mkdirat fs/namei.c:4144 [inline] __arm64_sys_mkdirat+0x90/0xa8 fs/namei.c:4144 __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/0x168 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 4478: kasan_save_stack mm/kasan/common.c:45 [inline] kasan_set_track+0x4c/0x80 mm/kasan/common.c:52 kasan_save_alloc_info+0x24/0x30 mm/kasan/generic.c:505 ____kasan_kmalloc mm/kasan/common.c:374 [inline] __kasan_kmalloc+0xac/0xc4 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] dst_cow_metrics_generic+0x60/0x230 net/core/dst.c:202 dst_metrics_write_ptr include/net/dst.h:119 [inline] dst_metric_set include/net/dst.h:180 [inline] icmp6_dst_alloc+0x268/0x410 net/ipv6/route.c:3287 ndisc_send_skb+0x374/0x18a0 net/ipv6/ndisc.c:493 ndisc_send_rs+0x3b8/0x4e0 net/ipv6/ndisc.c:723 addrconf_rs_timer+0x300/0x58c net/ipv6/addrconf.c:3982 call_timer_fn+0x1c0/0xa1c kernel/time/timer.c:1504 expire_timers kernel/time/timer.c:1549 [inline] __run_timers+0x554/0x718 kernel/time/timer.c:1820 run_timer_softirq+0x7c/0x114 kernel/time/timer.c:1833 handle_softirqs+0x318/0xd58 kernel/softirq.c:578 __do_softirq+0x14/0x20 kernel/softirq.c:612 Freed by task 21: kasan_save_stack mm/kasan/common.c:45 [inline] kasan_set_track+0x4c/0x80 mm/kasan/common.c:52 kasan_save_free_info+0x38/0x5c mm/kasan/generic.c:516 ____kasan_slab_free+0x144/0x1c0 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 mm/slub.c:1750 [inline] slab_free mm/slub.c:3661 [inline] __kmem_cache_free+0x2c0/0x4b4 mm/slub.c:3674 kfree+0xcc/0x1b8 mm/slab_common.c:988 ip_dst_metrics_put include/net/ip.h:527 [inline] ip6_dst_destroy+0xa0/0x3d8 net/ipv6/route.c:363 dst_destroy+0xc4/0x31c net/core/dst.c:112 dst_destroy_rcu+0x20/0x30 net/core/dst.c:133 rcu_do_batch kernel/rcu/tree.c:2297 [inline] rcu_core+0x880/0x1c48 kernel/rcu/tree.c:2557 rcu_core_si+0x10/0x1c kernel/rcu/tree.c:2574 handle_softirqs+0x318/0xd58 kernel/softirq.c:578 run_ksoftirqd+0x6c/0x29c kernel/softirq.c:945 smpboot_thread_fn+0x4b0/0x96c kernel/smpboot.c:164 kthread+0x250/0x2d8 kernel/kthread.c:376 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:864 Last potentially related work creation: kasan_save_stack+0x40/0x70 mm/kasan/common.c:45 __kasan_record_aux_stack+0xcc/0xe8 mm/kasan/generic.c:486 kasan_record_aux_stack_noalloc+0x14/0x20 mm/kasan/generic.c:496 kvfree_call_rcu+0xb4/0x714 kernel/rcu/tree.c:3401 kernfs_unlink_open_file+0x398/0x448 fs/kernfs/file.c:635 kernfs_fop_release+0x130/0x198 fs/kernfs/file.c:807 __fput+0x1c8/0x7c8 fs/file_table.c:320 ____fput+0x20/0x30 fs/file_table.c:348 task_work_run+0x240/0x2f0 kernel/task_work.c:203 resume_user_mode_work include/linux/resume_user_mode.h:49 [inline] do_notify_resume+0x2080/0x2cb8 arch/arm64/kernel/signal.c:1132 prepare_exit_to_user_mode arch/arm64/kernel/entry-common.c:137 [inline] exit_to_user_mode arch/arm64/kernel/entry-common.c:142 [inline] el0_svc+0x9c/0x168 arch/arm64/kernel/entry-common.c:638 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 ffff0000cb036d00 which belongs to the cache kmalloc-128 of size 128 The buggy address is located 32 bytes to the right of 128-byte region [ffff0000cb036d00, ffff0000cb036d80) The buggy address belongs to the physical page: page:00000000b815fbd3 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10b036 flags: 0x5ffc00000000200(slab|node=0|zone=2|lastcpupid=0x7ff) raw: 05ffc00000000200 fffffc00033d4340 dead000000000004 ffff0000c0002300 raw: 0000000000000000 0000000000100010 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000cb036c80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff0000cb036d00: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff0000cb036d80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff0000cb036e00: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc ffff0000cb036e80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ================================================================== MetaData crosses page boundary!! lblock = 6300000010, size = -820051968 CPU: 1 PID: 4617 Comm: syz.4.36 Tainted: G B 6.1.132-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/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 lib/dump_stack.c:88 [inline] dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106 dump_stack+0x1c/0x5c lib/dump_stack.c:113 __get_metapage+0xb48/0x1050 fs/jfs/jfs_metapage.c:596 dtSearch+0x4e8/0x1f34 fs/jfs/jfs_dtree.c:623 jfs_lookup+0x164/0x39c fs/jfs/namei.c:1459 lookup_one_qstr_excl+0x108/0x230 fs/namei.c:1605 filename_create+0x230/0x468 fs/namei.c:3877 do_mkdirat+0xac/0x510 fs/namei.c:4121 __do_sys_mkdirat fs/namei.c:4146 [inline] __se_sys_mkdirat fs/namei.c:4144 [inline] __arm64_sys_mkdirat+0x90/0xa8 fs/namei.c:4144 __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/0x168 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 bread failed! jfs_lookup: dtSearch returned -5