REISERFS warning (device loop3): vs-13060 reiserfs_update_sd_size: stat data of object [2 5 0x0 SD] (nlink == 1) not found (pos 1) REISERFS warning (device loop3): vs-13060 reiserfs_update_sd_size: stat data of object [2 5 0x0 SD] (nlink == 1) not found (pos 1) ================================================================== BUG: KASAN: use-after-free in leaf_paste_in_buffer+0x1a8/0x9f0 fs/reiserfs/lbalance.c:1017 Write of size 3824 at addr ffff0000efca0220 by task syz.3.68/4536 CPU: 0 PID: 4536 Comm: syz.3.68 Not tainted 5.15.178-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 Call trace: dump_backtrace+0x0/0x530 arch/arm64/kernel/stacktrace.c:152 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:216 __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106 print_address_description+0x7c/0x3f0 mm/kasan/report.c:248 __kasan_report mm/kasan/report.c:434 [inline] kasan_report+0x174/0x1e4 mm/kasan/report.c:451 kasan_check_range+0x274/0x2b4 mm/kasan/generic.c:189 memmove+0xb4/0xe8 mm/kasan/shadow.c:55 leaf_paste_in_buffer+0x1a8/0x9f0 fs/reiserfs/lbalance.c:1017 leaf_copy_boundary_item+0x96c/0x1a34 fs/reiserfs/lbalance.c:199 leaf_copy_items fs/reiserfs/lbalance.c:551 [inline] leaf_move_items+0xa0c/0x1f7c fs/reiserfs/lbalance.c:726 leaf_shift_left+0xc8/0x39c fs/reiserfs/lbalance.c:750 balance_leaf_paste_left_shift fs/reiserfs/do_balan.c:458 [inline] balance_leaf_paste_left fs/reiserfs/do_balan.c:592 [inline] balance_leaf_left fs/reiserfs/do_balan.c:613 [inline] balance_leaf+0x41c0/0xe860 fs/reiserfs/do_balan.c:1409 do_balance+0x27c/0x790 fs/reiserfs/do_balan.c:1888 reiserfs_paste_into_item+0x630/0x744 fs/reiserfs/stree.c:2159 reiserfs_get_block+0x1820/0x3fd0 fs/reiserfs/inode.c:1077 __block_write_begin_int+0x3ec/0x1608 fs/buffer.c:2012 __block_write_begin+0x40/0x54 fs/buffer.c:2062 reiserfs_write_begin+0x3c8/0x654 fs/reiserfs/inode.c:2790 generic_perform_write+0x24c/0x520 mm/filemap.c:3785 __generic_file_write_iter+0x230/0x454 mm/filemap.c:3912 generic_file_write_iter+0xb4/0x1b8 mm/filemap.c:3944 call_write_iter include/linux/fs.h:2174 [inline] new_sync_write fs/read_write.c:507 [inline] vfs_write+0x884/0xb44 fs/read_write.c:594 ksys_pwrite64 fs/read_write.c:701 [inline] __do_sys_pwrite64 fs/read_write.c:711 [inline] __se_sys_pwrite64 fs/read_write.c:708 [inline] __arm64_sys_pwrite64+0x188/0x220 fs/read_write.c:708 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142 do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181 el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:608 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584 The buggy address belongs to the page: page:000000006bb4c786 refcount:0 mapcount:-128 mapping:0000000000000000 index:0x100 pfn:0x12fca0 flags: 0x5ffc00000000000(node=0|zone=2|lastcpupid=0x7ff) raw: 05ffc00000000000 fffffc0003b06248 fffffc0003ab20c8 0000000000000000 raw: 0000000000000100 0000000000000000 00000000ffffff7f 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000efca0100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff0000efca0180: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >ffff0000efca0200: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ^ ffff0000efca0280: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff0000efca0300: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ================================================================== Unable to handle kernel write to read-only memory at virtual address ffff000161a20000 Mem abort info: ESR = 0x000000009600004f EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x0f: level 3 permission fault Data abort info: ISV = 0, ISS = 0x0000004f CM = 0, WnR = 1 swapper pgtable: 4k pages, 48-bit VAs, pgdp=00000001ae196000 [ffff000161a20000] pgd=180000023fff7003, p4d=180000023fff7003, pud=180000023f211003, pmd=180000023f103003, pte=00600001a1a20783 Internal error: Oops: 000000009600004f [#1] PREEMPT SMP Modules linked in: CPU: 0 PID: 4536 Comm: syz.3.68 Tainted: G B 5.15.178-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 pstate: a0400005 (NzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __memcpy+0x158/0x260 arch/arm64/lib/memcpy.S:178 lr : memmove+0xc8/0xe8 mm/kasan/shadow.c:58 sp : ffff8000228e6200 x29: ffff8000228e6200 x28: 0000000000000000 x27: ffff0000efca1000 x26: 0000000000000001 x25: 000000000000f220 x24: ffff0000d0570938 x23: ffff8000171c7000 x22: ffff800008cd5de0 x21: ffff0000efcb0140 x20: ffff0000efcb0220 x19: ffffffffffff1de0 x18: 1fffe00036832d8e x17: 0000000200040028 x16: 0000000600000002 x15: 0000000100000000 x14: 0000000000000000 x13: a9414ff4941290f0 x12: 14000002940c5dcc x11: 910003fda9054ff4 x10: a90457f6a9035ff8 x9 : a90267faf9000bfb x8 : a9ba7bfdd503233f x7 : 88dffd14d65f03c0 x6 : d50323bfa8c27bfd x5 : ffff0000efca1f20 x4 : ffff0000efca2000 x3 : ffff000161a1ffc0 x2 : ffffffff8e281ed0 x1 : ffff000161a200e0 x0 : ffff0000efcb0140 Call trace: __memcpy+0x158/0x260 arch/arm64/lib/memcpy.S:177 leaf_paste_in_buffer+0x1a8/0x9f0 fs/reiserfs/lbalance.c:1017 balance_leaf_paste_left_shift fs/reiserfs/do_balan.c:465 [inline] balance_leaf_paste_left fs/reiserfs/do_balan.c:592 [inline] balance_leaf_left fs/reiserfs/do_balan.c:613 [inline] balance_leaf+0x4dc0/0xe860 fs/reiserfs/do_balan.c:1409 do_balance+0x27c/0x790 fs/reiserfs/do_balan.c:1888 reiserfs_paste_into_item+0x630/0x744 fs/reiserfs/stree.c:2159 reiserfs_get_block+0x1820/0x3fd0 fs/reiserfs/inode.c:1077 __block_write_begin_int+0x3ec/0x1608 fs/buffer.c:2012 __block_write_begin+0x40/0x54 fs/buffer.c:2062 reiserfs_write_begin+0x3c8/0x654 fs/reiserfs/inode.c:2790 generic_perform_write+0x24c/0x520 mm/filemap.c:3785 __generic_file_write_iter+0x230/0x454 mm/filemap.c:3912 generic_file_write_iter+0xb4/0x1b8 mm/filemap.c:3944 call_write_iter include/linux/fs.h:2174 [inline] new_sync_write fs/read_write.c:507 [inline] vfs_write+0x884/0xb44 fs/read_write.c:594 ksys_pwrite64 fs/read_write.c:701 [inline] __do_sys_pwrite64 fs/read_write.c:711 [inline] __se_sys_pwrite64 fs/read_write.c:708 [inline] __arm64_sys_pwrite64+0x188/0x220 fs/read_write.c:708 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142 do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181 el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:608 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584 Code: a9022468 a9422428 a9032c6a a9432c2a (a984346c) ---[ end trace dcc7bc91c60b4052 ]--- ---------------- Code disassembly (best guess): 0: a9022468 stp x8, x9, [x3, #32] 4: a9422428 ldp x8, x9, [x1, #32] 8: a9032c6a stp x10, x11, [x3, #48] c: a9432c2a ldp x10, x11, [x1, #48] * 10: a984346c stp x12, x13, [x3, #64]! <-- trapping instruction