================================================================== BUG: KASAN: slab-out-of-bounds in diWrite+0x928/0x11f0 fs/jfs/jfs_imap.c:753 Read of size 32 at addr ffff0000f52378b0 by task syz.4.83/4914 CPU: 0 PID: 4914 Comm: syz.4.83 Not tainted 6.1.140-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+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 check_region_inline mm/kasan/generic.c:-1 [inline] kasan_check_range+0x260/0x2a0 mm/kasan/generic.c:189 memcpy+0x48/0x90 mm/kasan/shadow.c:65 diWrite+0x928/0x11f0 fs/jfs/jfs_imap.c:753 txCommit+0x5d0/0x3bec fs/jfs/jfs_txnmgr.c:1255 add_missing_indices+0x6e0/0x9f8 fs/jfs/jfs_dtree.c:2664 jfs_readdir+0x184c/0x3148 fs/jfs/jfs_dtree.c:3020 iterate_dir+0x1f0/0x4cc fs/readdir.c:-1 __do_sys_getdents64 fs/readdir.c:369 [inline] __se_sys_getdents64 fs/readdir.c:354 [inline] __arm64_sys_getdents64+0x11c/0x318 fs/readdir.c:354 __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 4910: 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_slab_alloc+0x70/0x88 mm/kasan/common.c:328 kasan_slab_alloc include/linux/kasan.h:201 [inline] slab_post_alloc_hook+0x74/0x43c mm/slab.h:737 slab_alloc_node mm/slub.c:3398 [inline] slab_alloc mm/slub.c:3406 [inline] __kmem_cache_alloc_lru mm/slub.c:3413 [inline] kmem_cache_alloc_lru+0x1b0/0x298 mm/slub.c:3429 alloc_inode_sb include/linux/fs.h:3245 [inline] jfs_alloc_inode+0x2c/0x68 fs/jfs/super.c:105 alloc_inode fs/inode.c:261 [inline] new_inode_pseudo+0x68/0x1cc fs/inode.c:1063 new_inode+0x38/0x174 fs/inode.c:1091 ialloc+0x54/0x7b0 fs/jfs/jfs_inode.c:48 jfs_create+0x170/0x8c4 fs/jfs/namei.c:92 lookup_open fs/namei.c:3482 [inline] open_last_lookups fs/namei.c:3550 [inline] path_openat+0x112c/0x2680 fs/namei.c:3780 do_filp_open+0x174/0x344 fs/namei.c:3810 do_sys_openat2+0x128/0x3d8 fs/open.c:1318 do_sys_open fs/open.c:1334 [inline] __do_sys_openat fs/open.c:1350 [inline] __se_sys_openat fs/open.c:1345 [inline] __arm64_sys_openat+0x120/0x154 fs/open.c:1345 __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 ffff0000f5236f00 which belongs to the cache jfs_ip of size 2240 The buggy address is located 240 bytes to the right of 2240-byte region [ffff0000f5236f00, ffff0000f52377c0) The buggy address belongs to the physical page: page:0000000099e30411 refcount:1 mapcount:0 mapping:0000000000000000 index:0xffff0000f5230000 pfn:0x135230 head:0000000099e30411 order:3 compound_mapcount:0 compound_pincount:0 memcg:ffff0000f5e3b001 flags: 0x5ffc00000010200(slab|head|node=0|zone=2|lastcpupid=0x7ff) raw: 05ffc00000010200 0000000000000000 dead000000000122 ffff0000c6f91080 raw: ffff0000f5230000 00000000800d0007 00000001ffffffff ffff0000f5e3b001 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000f5237780: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc ffff0000f5237800: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff0000f5237880: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff0000f5237900: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff0000f5237980: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ================================================================== ... Log Wrap ... Log Wrap ... Log Wrap ... ... Log Wrap ... Log Wrap ... Log Wrap ... ... Log Wrap ... Log Wrap ... Log Wrap ... ERROR: (device loop4): jfs_readdir: JFS:Dtree error: ino = 2, bn=0, index = 0 JFS: Invalid stbl[1] = -128 for inode 2, block = 0