================================================================== BUG: KASAN: slab-out-of-bounds in addressPXD fs/jfs/jfs_types.h:80 [inline] BUG: KASAN: slab-out-of-bounds in dtReadFirst+0x3f0/0xa1c fs/jfs/jfs_dtree.c:3107 Read of size 4 at addr ffff0000db73c028 by task syz.3.94/7004 CPU: 1 UID: 0 PID: 7004 Comm: syz.3.94 Not tainted 6.13.0-rc3-syzkaller-g573067a5a685 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C) __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 [inline] print_report+0x198/0x538 mm/kasan/report.c:489 kasan_report+0xd8/0x138 mm/kasan/report.c:602 __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380 addressPXD fs/jfs/jfs_types.h:80 [inline] dtReadFirst+0x3f0/0xa1c fs/jfs/jfs_dtree.c:3107 jfs_readdir+0x584/0x3030 fs/jfs/jfs_dtree.c:2820 wrap_directory_iterator+0xa8/0xf4 fs/readdir.c:65 shared_jfs_readdir+0x30/0x40 fs/jfs/namei.c:1540 iterate_dir+0x408/0x648 fs/readdir.c:108 __do_sys_getdents64 fs/readdir.c:403 [inline] __se_sys_getdents64 fs/readdir.c:389 [inline] __arm64_sys_getdents64+0x1c0/0x490 fs/readdir.c:389 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600 Allocated by task 7004: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:68 kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:568 unpoison_slab_object mm/kasan/common.c:319 [inline] __kasan_slab_alloc+0x74/0x8c mm/kasan/common.c:345 kasan_slab_alloc include/linux/kasan.h:250 [inline] slab_post_alloc_hook mm/slub.c:4119 [inline] slab_alloc_node mm/slub.c:4168 [inline] kmem_cache_alloc_lru_noprof+0x258/0x414 mm/slub.c:4187 jfs_alloc_inode+0x2c/0x68 fs/jfs/super.c:105 alloc_inode+0x68/0x19c fs/inode.c:336 new_inode_pseudo fs/inode.c:1174 [inline] new_inode+0x30/0x16c fs/inode.c:1193 ialloc+0x58/0x78c fs/jfs/jfs_inode.c:48 jfs_create+0x190/0xa18 fs/jfs/namei.c:92 lookup_open fs/namei.c:3649 [inline] open_last_lookups fs/namei.c:3748 [inline] path_openat+0x13e4/0x2b14 fs/namei.c:3984 do_filp_open+0x1e8/0x404 fs/namei.c:4014 do_sys_openat2+0x124/0x1b8 fs/open.c:1402 do_sys_open fs/open.c:1417 [inline] __do_sys_openat fs/open.c:1433 [inline] __se_sys_openat fs/open.c:1428 [inline] __arm64_sys_openat+0x1f0/0x240 fs/open.c:1428 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600 The buggy address belongs to the object at ffff0000db73b750 which belongs to the cache jfs_ip of size 2232 The buggy address is located 32 bytes to the right of allocated 2232-byte region [ffff0000db73b750, ffff0000db73c008) The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x11b738 head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 memcg:ffff0000cac8d001 flags: 0x5ffc00000000040(head|node=0|zone=2|lastcpupid=0x7ff) page_type: f5(slab) raw: 05ffc00000000040 ffff0000c3d3d3c0 dead000000000122 0000000000000000 raw: 0000000000000000 00000000800d000d 00000001f5000000 ffff0000cac8d001 head: 05ffc00000000040 ffff0000c3d3d3c0 dead000000000122 0000000000000000 head: 0000000000000000 00000000800d000d 00000001f5000000 ffff0000cac8d001 head: 05ffc00000000003 fffffdffc36dce01 ffffffffffffffff 0000000000000000 head: 0000000000000008 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000db73bf00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff0000db73bf80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffff0000db73c000: 00 fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff0000db73c080: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff0000db73c100: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ================================================================== ERROR: (device loop3): dtReadFirst: btstack overrun ERROR: (device loop3): remounting filesystem as read-only btstack dump: bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 ERROR: (device loop3): diRead: i_ino != di_number ERROR: (device loop3): dtReadFirst: btstack overrun btstack dump: bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0 bn = 0, index = 0