BTRFS info (device loop0): clearing compat-ro feature flag for FREE_SPACE_TREE (0x1) BTRFS info (device loop0): clearing compat-ro feature flag for FREE_SPACE_TREE_VALID (0x2) ================================================================== BUG: KASAN: null-ptr-deref in instrument_atomic_read_write include/linux/instrumented.h:101 [inline] BUG: KASAN: null-ptr-deref in atomic_inc_not_zero include/linux/atomic/atomic-instrumented.h:577 [inline] BUG: KASAN: null-ptr-deref in btrfs_root_node+0x144/0x404 fs/btrfs/ctree.c:138 Write of size 4 at addr 0000000000000060 by task syz-executor242/4017 CPU: 0 PID: 4017 Comm: syz-executor242 Not tainted 5.15.164-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/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 __kasan_report mm/kasan/report.c:438 [inline] kasan_report+0x168/0x1e4 mm/kasan/report.c:451 kasan_check_range+0x274/0x2b4 mm/kasan/generic.c:189 __kasan_check_write+0x44/0x54 mm/kasan/shadow.c:37 instrument_atomic_read_write include/linux/instrumented.h:101 [inline] atomic_inc_not_zero include/linux/atomic/atomic-instrumented.h:577 [inline] btrfs_root_node+0x144/0x404 fs/btrfs/ctree.c:138 btrfs_read_lock_root_node+0x68/0x344 fs/btrfs/locking.c:276 btrfs_search_slot_get_root fs/btrfs/ctree.c:1647 [inline] btrfs_search_slot+0x3d0/0x24d8 fs/btrfs/ctree.c:1805 btrfs_orphan_cleanup+0x1c8/0xa98 fs/btrfs/inode.c:3541 btrfs_cleanup_fs_roots+0x5e0/0x860 fs/btrfs/disk-io.c:4305 btrfs_start_pre_rw_mount+0x150/0x578 fs/btrfs/disk-io.c:3102 open_ctree+0x2290/0x28f4 fs/btrfs/disk-io.c:3634 btrfs_fill_super+0x1b4/0x2c8 fs/btrfs/super.c:1387 btrfs_mount_root+0x6f8/0x7f8 fs/btrfs/super.c:1752 legacy_get_tree+0xd4/0x16c fs/fs_context.c:611 vfs_get_tree+0x90/0x274 fs/super.c:1517 fc_mount fs/namespace.c:1000 [inline] vfs_kern_mount+0xdc/0x178 fs/namespace.c:1030 btrfs_mount+0x328/0x9b8 fs/btrfs/super.c:1812 legacy_get_tree+0xd4/0x16c fs/fs_context.c:611 vfs_get_tree+0x90/0x274 fs/super.c:1517 do_new_mount+0x278/0x8fc fs/namespace.c:3005 path_mount+0x594/0x101c fs/namespace.c:3335 do_mount fs/namespace.c:3348 [inline] __do_sys_mount fs/namespace.c:3556 [inline] __se_sys_mount fs/namespace.c:3533 [inline] __arm64_sys_mount+0x510/0x5e0 fs/namespace.c:3533 __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 ================================================================== Unable to handle kernel paging request at virtual address dfff80000000000c Mem abort info: ESR = 0x0000000096000006 EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x06: level 2 translation fault Data abort info: ISV = 0, ISS = 0x00000006 CM = 0, WnR = 0 [dfff80000000000c] address between user and kernel address ranges Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP Modules linked in: CPU: 0 PID: 4017 Comm: syz-executor242 Tainted: G B 5.15.164-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024 pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : arch_atomic_fetch_add_unless include/linux/atomic/atomic-arch-fallback.h:1172 [inline] pc : arch_atomic_add_unless include/linux/atomic/atomic-arch-fallback.h:1197 [inline] pc : arch_atomic_inc_not_zero include/linux/atomic/atomic-arch-fallback.h:1213 [inline] pc : atomic_inc_not_zero include/linux/atomic/atomic-instrumented.h:578 [inline] pc : btrfs_root_node+0x148/0x404 fs/btrfs/ctree.c:138 lr : instrument_atomic_read_write include/linux/instrumented.h:101 [inline] lr : atomic_inc_not_zero include/linux/atomic/atomic-instrumented.h:577 [inline] lr : btrfs_root_node+0x144/0x404 fs/btrfs/ctree.c:138 sp : ffff80001a046de0 x29: ffff80001a046de0 x28: dfff800000000000 x27: ffff800011fcd4c0 x26: 0000000000000060 x25: 0000000000000000 x24: 1fffe000194e0800 x23: ffff800011fcdc00 x22: 0000000000000001 x21: 0000000000000001 x20: ffff800011fcd4c0 x19: ffff0000ca704000 x18: 0000000000000002 x17: 0000000000000000 x16: ffff80000824e1f4 x15: 00000000ffffffff x14: ffff0000d3990000 x13: 0000000000000001 x12: ffff700002e22764 x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000 x8 : 000000000000000c x7 : 0000000000000000 x6 : 0000000000000001 x5 : ffff80001a046478 x4 : 0000000000000000 x3 : ffff80000819c044 x2 : 0000000000000001 x1 : 0000000000000001 x0 : 0000000000000000 Call trace: arch_atomic_fetch_add_unless include/linux/atomic/atomic-arch-fallback.h:1172 [inline] arch_atomic_add_unless include/linux/atomic/atomic-arch-fallback.h:1197 [inline] arch_atomic_inc_not_zero include/linux/atomic/atomic-arch-fallback.h:1213 [inline] atomic_inc_not_zero include/linux/atomic/atomic-instrumented.h:578 [inline] btrfs_root_node+0x148/0x404 fs/btrfs/ctree.c:138 btrfs_read_lock_root_node+0x68/0x344 fs/btrfs/locking.c:276 btrfs_search_slot_get_root fs/btrfs/ctree.c:1647 [inline] btrfs_search_slot+0x3d0/0x24d8 fs/btrfs/ctree.c:1805 btrfs_orphan_cleanup+0x1c8/0xa98 fs/btrfs/inode.c:3541 btrfs_cleanup_fs_roots+0x5e0/0x860 fs/btrfs/disk-io.c:4305 btrfs_start_pre_rw_mount+0x150/0x578 fs/btrfs/disk-io.c:3102 open_ctree+0x2290/0x28f4 fs/btrfs/disk-io.c:3634 btrfs_fill_super+0x1b4/0x2c8 fs/btrfs/super.c:1387 btrfs_mount_root+0x6f8/0x7f8 fs/btrfs/super.c:1752 legacy_get_tree+0xd4/0x16c fs/fs_context.c:611 vfs_get_tree+0x90/0x274 fs/super.c:1517 fc_mount fs/namespace.c:1000 [inline] vfs_kern_mount+0xdc/0x178 fs/namespace.c:1030 btrfs_mount+0x328/0x9b8 fs/btrfs/super.c:1812 legacy_get_tree+0xd4/0x16c fs/fs_context.c:611 vfs_get_tree+0x90/0x274 fs/super.c:1517 do_new_mount+0x278/0x8fc fs/namespace.c:3005 path_mount+0x594/0x101c fs/namespace.c:3335 do_mount fs/namespace.c:3348 [inline] __do_sys_mount fs/namespace.c:3556 [inline] __se_sys_mount fs/namespace.c:3533 [inline] __arm64_sys_mount+0x510/0x5e0 fs/namespace.c:3533 __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: aa1a03e0 aa1b03f4 97a45d64 d343ff48 (38fc6908) ---[ end trace d8a454937f94438f ]--- ---------------- Code disassembly (best guess): 0: aa1a03e0 mov x0, x26 4: aa1b03f4 mov x20, x27 8: 97a45d64 bl 0xfffffffffe917598 c: d343ff48 lsr x8, x26, #3 * 10: 38fc6908 ldrsb w8, [x8, x28] <-- trapping instruction