================================================================== BUG: KASAN: use-after-free in leaf_paste_entries+0x33c/0x924 fs/reiserfs/lbalance.c:1362 Read of size 2 at addr ffff0000ec42100c by task syz.0.373/5908 CPU: 0 PID: 5908 Comm: syz.0.373 Not tainted 5.15.184-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Call trace: dump_backtrace+0x0/0x43c arch/arm64/kernel/stacktrace.c:152 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:216 __dump_stack+0x30/0x40 lib/dump_stack.c:88 dump_stack_lvl+0xf8/0x160 lib/dump_stack.c:106 print_address_description+0x78/0x30c mm/kasan/report.c:248 __kasan_report mm/kasan/report.c:434 [inline] kasan_report+0xec/0x15c mm/kasan/report.c:451 __asan_report_load_n_noabort+0x40/0x4c mm/kasan/report_generic.c:319 leaf_paste_entries+0x33c/0x924 fs/reiserfs/lbalance.c:1362 leaf_copy_dir_entries+0x4dc/0x788 fs/reiserfs/lbalance.c:119 leaf_copy_boundary_item+0x888/0x19dc fs/reiserfs/lbalance.c:-1 leaf_copy_items fs/reiserfs/lbalance.c:551 [inline] leaf_move_items+0x694/0xb9c fs/reiserfs/lbalance.c:726 balance_leaf_when_delete_left fs/reiserfs/do_balan.c:167 [inline] balance_leaf_when_delete fs/reiserfs/do_balan.c:272 [inline] balance_leaf+0x9298/0xd2f4 fs/reiserfs/do_balan.c:1393 do_balance+0x260/0x778 fs/reiserfs/do_balan.c:1888 reiserfs_cut_from_item+0x1184/0x1a44 fs/reiserfs/stree.c:1838 reiserfs_do_truncate+0x738/0x1020 fs/reiserfs/stree.c:1973 reiserfs_truncate_file+0x328/0x6e4 fs/reiserfs/inode.c:2318 reiserfs_setattr+0x8c8/0xd70 fs/reiserfs/inode.c:3409 notify_change+0xa08/0xcd8 fs/attr.c:505 do_truncate+0x178/0x1f0 fs/open.c:65 handle_truncate fs/namei.c:3265 [inline] do_open fs/namei.c:3612 [inline] path_openat+0x211c/0x26e4 fs/namei.c:3742 do_filp_open+0x164/0x330 fs/namei.c:3769 do_sys_openat2+0x128/0x3d8 fs/open.c:1253 do_sys_open fs/open.c:1269 [inline] __do_sys_openat fs/open.c:1285 [inline] __se_sys_openat fs/open.c:1280 [inline] __arm64_sys_openat+0x120/0x154 fs/open.c:1280 __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+0x78/0x1e0 arch/arm64/kernel/entry-common.c:608 el0t_64_sync_handler+0xcc/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:0000000076c5681c refcount:0 mapcount:0 mapping:0000000000000000 index:0x1 pfn:0x12c421 flags: 0x5ffc00000000000(node=0|zone=2|lastcpupid=0x7ff) raw: 05ffc00000000000 fffffc0003b10888 fffffc0003c12388 0000000000000000 raw: 0000000000000001 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000ec420f00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff0000ec420f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >ffff0000ec421000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ^ ffff0000ec421080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff0000ec421100: 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 ffff0000ebec5ff0 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=0000000211394000 [ffff0000ebec5ff0] pgd=180000023fff7003, p4d=180000023fff7003, pud=180000023f613003, pmd=180000023f4b3003, pte=006000012bec5787 Internal error: Oops: 000000009600004f [#1] PREEMPT SMP Modules linked in: CPU: 1 PID: 5908 Comm: syz.0.373 Tainted: G B 5.15.184-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 pstate: a0400005 (NzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __memcpy+0x1e8/0x260 arch/arm64/lib/memcpy.S:224 lr : memmove+0xc8/0xe8 mm/kasan/shadow.c:58 sp : ffff8000200461c0 x29: ffff8000200461c0 x28: dfff800000000000 x27: 0000000000000000 x26: ffff0000ec4180d3 x25: 0000000000000020 x24: 00000000000ffff0 x23: ffff800016784000 x22: ffff800008c05e3c x21: ffff0000ec518ea0 x20: ffff0000ec518e80 x19: fffffffffff00010 x18: 0000000000000002 x17: 0000000040000000 x16: ffff8000082d4b38 x15: 0000000000000002 x14: 0000000000000000 x13: d4202000d4202000 x12: d4202000d4202000 x11: d4202000d4202000 x10: d4202000d4202000 x9 : d4202000d4202000 x8 : d4202000d4202000 x7 : d4202000d4202000 x6 : d4202000d4202000 x5 : ffff0000ebec6030 x4 : ffff0000ebec5fd0 x3 : ffff800008c05e3c x2 : ffffffffff9ad110 x1 : ffff0000ec518e80 x0 : ffff0000ec518ea0 Call trace: __memcpy+0x1e8/0x260 arch/arm64/lib/memcpy.S:223 leaf_paste_entries+0x4d8/0x924 fs/reiserfs/lbalance.c:1377 leaf_copy_dir_entries+0x4dc/0x788 fs/reiserfs/lbalance.c:119 leaf_copy_boundary_item+0x888/0x19dc fs/reiserfs/lbalance.c:-1 leaf_copy_items fs/reiserfs/lbalance.c:551 [inline] leaf_move_items+0x694/0xb9c fs/reiserfs/lbalance.c:726 balance_leaf_when_delete_left fs/reiserfs/do_balan.c:167 [inline] balance_leaf_when_delete fs/reiserfs/do_balan.c:272 [inline] balance_leaf+0x9298/0xd2f4 fs/reiserfs/do_balan.c:1393 do_balance+0x260/0x778 fs/reiserfs/do_balan.c:1888 reiserfs_cut_from_item+0x1184/0x1a44 fs/reiserfs/stree.c:1838 reiserfs_do_truncate+0x738/0x1020 fs/reiserfs/stree.c:1973 reiserfs_truncate_file+0x328/0x6e4 fs/reiserfs/inode.c:2318 reiserfs_setattr+0x8c8/0xd70 fs/reiserfs/inode.c:3409 notify_change+0xa08/0xcd8 fs/attr.c:505 do_truncate+0x178/0x1f0 fs/open.c:65 handle_truncate fs/namei.c:3265 [inline] do_open fs/namei.c:3612 [inline] path_openat+0x211c/0x26e4 fs/namei.c:3742 do_filp_open+0x164/0x330 fs/namei.c:3769 do_sys_openat2+0x128/0x3d8 fs/open.c:1253 do_sys_open fs/open.c:1269 [inline] __do_sys_openat fs/open.c:1285 [inline] __se_sys_openat fs/open.c:1280 [inline] __arm64_sys_openat+0x120/0x154 fs/open.c:1280 __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+0x78/0x1e0 arch/arm64/kernel/entry-common.c:608 el0t_64_sync_handler+0xcc/0xe4 arch/arm64/kernel/entry-common.c:626 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584 Code: a93e24a8 a97e2488 a93d2caa a97d2c8a (a9bc34ac) ---[ end trace 90ab3b15b3213a5c ]--- ---------------- Code disassembly (best guess): 0: a93e24a8 stp x8, x9, [x5, #-32] 4: a97e2488 ldp x8, x9, [x4, #-32] 8: a93d2caa stp x10, x11, [x5, #-48] c: a97d2c8a ldp x10, x11, [x4, #-48] * 10: a9bc34ac stp x12, x13, [x5, #-64]! <-- trapping instruction