================================================================== BUG: KASAN: use-after-free in ocfs2_replay_truncate_records fs/ocfs2/alloc.c:5967 [inline] BUG: KASAN: use-after-free in __ocfs2_flush_truncate_log+0x684/0xf6c fs/ocfs2/alloc.c:6062 Read of size 4 at addr ffff0000e7fae2c0 by task syz-executor/6644 CPU: 0 UID: 0 PID: 6644 Comm: syz-executor Not tainted syzkaller #0 PREEMPT Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/30/2025 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:499 (C) __dump_stack+0x30/0x40 lib/dump_stack.c:94 dump_stack_lvl+0xd8/0x12c lib/dump_stack.c:120 print_address_description+0xa8/0x238 mm/kasan/report.c:378 print_report+0x68/0x84 mm/kasan/report.c:482 kasan_report+0xb0/0x110 mm/kasan/report.c:595 __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380 ocfs2_replay_truncate_records fs/ocfs2/alloc.c:5967 [inline] __ocfs2_flush_truncate_log+0x684/0xf6c fs/ocfs2/alloc.c:6062 ocfs2_flush_truncate_log+0x4c/0x6c fs/ocfs2/alloc.c:6084 ocfs2_sync_fs+0xf8/0x2a4 fs/ocfs2/super.c:406 sync_filesystem+0x1a0/0x218 fs/sync.c:66 generic_shutdown_super+0x70/0x2b8 fs/super.c:622 kill_block_super+0x44/0x90 fs/super.c:1766 deactivate_locked_super+0xc4/0x12c fs/super.c:474 deactivate_super+0xe0/0x100 fs/super.c:507 cleanup_mnt+0x31c/0x3ac fs/namespace.c:1375 __cleanup_mnt+0x20/0x30 fs/namespace.c:1382 task_work_run+0x1dc/0x260 kernel/task_work.c:227 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline] exit_to_user_mode_loop+0xfc/0x168 kernel/entry/common.c:43 exit_to_user_mode_prepare include/linux/irq-entry-common.h:225 [inline] arm64_exit_to_user_mode arch/arm64/kernel/entry-common.c:103 [inline] el0_svc+0x170/0x254 arch/arm64/kernel/entry-common.c:745 el0t_64_sync_handler+0x84/0x12c arch/arm64/kernel/entry-common.c:763 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:596 The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff9f804 pfn:0x127fae flags: 0x5ffc00000000000(node=0|zone=2|lastcpupid=0x7ff) raw: 05ffc00000000000 fffffdffc39febc8 fffffdffc39feac8 0000000000000000 raw: 0000000ffff9f804 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000e7fae180: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff0000e7fae200: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >ffff0000e7fae280: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ^ ffff0000e7fae300: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff0000e7fae380: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ================================================================== (syz-executor,6644,0):ocfs2_read_blocks:239 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_suballoc_bits:2579 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_clusters:2676 ERROR: status = -12 (syz-executor,6644,0):ocfs2_replay_truncate_records:5984 ERROR: status = -12 (syz-executor,6644,0):__ocfs2_flush_truncate_log:6065 ERROR: status = -12 (syz-executor,6644,0):ocfs2_sync_fs:408 ERROR: status = -12 (syz-executor,6644,0):ocfs2_read_blocks:239 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_suballoc_bits:2579 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_clusters:2676 ERROR: status = -12 (syz-executor,6644,0):ocfs2_replay_truncate_records:5984 ERROR: status = -12 (syz-executor,6644,0):__ocfs2_flush_truncate_log:6065 ERROR: status = -12 (syz-executor,6644,0):ocfs2_truncate_log_shutdown:6345 ERROR: status = -12 ocfs2: Unmounting device (7,0) on (node local) ocfs2: Unmounting device (7,0) on (node local) ocfs2: Unmounting device (7,0) on (node local) ocfs2: Unmounting device (7,0) on (node local) (syz-executor,6644,0):ocfs2_read_blocks:239 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_suballoc_bits:2579 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_clusters:2676 ERROR: status = -12 (syz-executor,6644,0):ocfs2_replay_truncate_records:5984 ERROR: status = -12 (syz-executor,6644,0):__ocfs2_flush_truncate_log:6065 ERROR: status = -12 (syz-executor,6644,0):ocfs2_sync_fs:408 ERROR: status = -12 (syz-executor,6644,0):ocfs2_read_blocks:239 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_suballoc_bits:2579 ERROR: status = -12 (syz-executor,6644,0):_ocfs2_free_clusters:2676 ERROR: status = -12 (syz-executor,6644,0):ocfs2_replay_truncate_records:5984 ERROR: status = -12 (syz-executor,6644,0):__ocfs2_flush_truncate_log:6065 ERROR: status = -12 (syz-executor,6644,0):ocfs2_truncate_log_shutdown:6345 ERROR: status = -12 ocfs2: Unmounting device (7,0) on (node local) (syz-executor,6644,1):ocfs2_read_blocks:239 ERROR: status = -12 (syz-executor,6644,1):_ocfs2_free_suballoc_bits:2579 ERROR: status = -12 (syz-executor,6644,1):_ocfs2_free_clusters:2676 ERROR: status = -12 (syz-executor,6644,1):ocfs2_replay_truncate_records:5984 ERROR: status = -12 (syz-executor,6644,1):__ocfs2_flush_truncate_log:6065 ERROR: status = -12 (syz-executor,6644,1):ocfs2_sync_fs:408 ERROR: status = -12 (syz-executor,6644,1):ocfs2_read_blocks:239 ERROR: status = -12 (syz-executor,6644,1):_ocfs2_free_suballoc_bits:2579 ERROR: status = -12 (syz-executor,6644,1):_ocfs2_free_clusters:2676 ERROR: status = -12 (syz-executor,6644,1):ocfs2_replay_truncate_records:5984 ERROR: status = -12 (syz-executor,6644,1):__ocfs2_flush_truncate_log:6065 ERROR: status = -12 (syz-executor,6644,1):ocfs2_truncate_log_shutdown:6345 ERROR: status = -12 ocfs2: Unmounting device (7,0) on (node local) ocfs2: Unmounting device (7,0) on (node local) ocfs2: Unmounting device (7,0) on (node local) ocfs2: Unmounting device (7,0) on (node local) ------------[ cut here ]------------ kernel BUG at fs/ocfs2/suballoc.c:2569! Internal error: Oops - BUG: 00000000f2000800 [#1] SMP Modules linked in: CPU: 1 UID: 0 PID: 6644 Comm: syz-executor Tainted: G B syzkaller #0 PREEMPT Tainted: [B]=BAD_PAGE Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/30/2025 pstate: 83400005 (Nzcv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--) pc : _ocfs2_free_suballoc_bits+0xf00/0x1210 fs/ocfs2/suballoc.c:2569 lr : _ocfs2_free_suballoc_bits+0xf00/0x1210 fs/ocfs2/suballoc.c:2569 sp : ffff8000a1547540 x29: ffff8000a15476c0 x28: ffff0000ca6af528 x27: 0000000a909ac000 x26: ffff7000142a8ebc x25: ffff8000821b9688 x24: dfff800000000000 x23: 00000000f9405ef3 x22: 0000000000000e00 x21: 00000000f94066d6 x20: 0000000a909ac000 x19: 0000000000000e00 x18: 1fffe00033793888 x17: ffff80008f7ee000 x16: ffff80008aff19fc x15: 0000000000000001 x14: 0000000000000000 x13: 00000000fffffffc x12: 0000000000000000 x11: 0000000000000000 x10: 0000000000ff0100 x9 : 0000000000000000 x8 : ffff0000ce925b80 x7 : 0000000000000000 x6 : ffff8000821b9688 x5 : 00000000f9405ef3 x4 : 0000000a909ac000 x3 : 00000000000007e3 x2 : ffff0000e1c823a0 x1 : 0000000000000e00 x0 : 00000000f94066d6 Call trace: _ocfs2_free_suballoc_bits+0xf00/0x1210 fs/ocfs2/suballoc.c:2569 (P) _ocfs2_free_clusters+0x514/0x9bc fs/ocfs2/suballoc.c:2672 ocfs2_free_clusters+0x50/0x68 fs/ocfs2/suballoc.c:2693 ocfs2_replay_truncate_records fs/ocfs2/alloc.c:5979 [inline] __ocfs2_flush_truncate_log+0x5d8/0xf6c fs/ocfs2/alloc.c:6062 ocfs2_flush_truncate_log+0x4c/0x6c fs/ocfs2/alloc.c:6084 ocfs2_sync_fs+0xf8/0x2a4 fs/ocfs2/super.c:406 sync_filesystem+0x1a0/0x218 fs/sync.c:66 generic_shutdown_super+0x70/0x2b8 fs/super.c:622 kill_block_super+0x44/0x90 fs/super.c:1766 deactivate_locked_super+0xc4/0x12c fs/super.c:474 deactivate_super+0xe0/0x100 fs/super.c:507 cleanup_mnt+0x31c/0x3ac fs/namespace.c:1375 __cleanup_mnt+0x20/0x30 fs/namespace.c:1382 task_work_run+0x1dc/0x260 kernel/task_work.c:227 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline] exit_to_user_mode_loop+0xfc/0x168 kernel/entry/common.c:43 exit_to_user_mode_prepare include/linux/irq-entry-common.h:225 [inline] arm64_exit_to_user_mode arch/arm64/kernel/entry-common.c:103 [inline] el0_svc+0x170/0x254 arch/arm64/kernel/entry-common.c:745 el0t_64_sync_handler+0x84/0x12c arch/arm64/kernel/entry-common.c:763 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:596 Code: 17ffff1e 9795c95d d4210000 9795c95b (d4210000) ---[ end trace 0000000000000000 ]---