syzbot


BUG: unable to handle kernel paging request in btrfs_root_node

Status: upstream: reported C repro on 2024/10/27 14:03
Bug presence: origin:upstream
[Documentation on labels]
Reported-by: syzbot+83f9d214f99a8c47f5a3@syzkaller.appspotmail.com
First crash: 174d, last: 10d
Bug presence (1)
Date Name Commit Repro Result
2024/10/31 upstream (ToT) 0fc810ae3ae1 C [report] BUG: unable to handle kernel paging request in btrfs_root_node
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream general protection fault in btrfs_root_node btrfs C done 380 5h45m 228d 0/28 upstream: reported C repro on 2024/09/03 16:42
linux-5.15 KASAN: null-ptr-deref Write in btrfs_root_node (2) origin:lts-only C done 32 3d14h 579d 0/3 upstream: reported C repro on 2023/09/18 04:34
linux-5.15 KASAN: null-ptr-deref Write in btrfs_root_node 1 726d 726d 0/3 auto-obsoleted due to no activity on 2023/08/22 05:04
Fix bisection attempts (1)
Created Duration User Patch Repo Result
2024/12/11 11:26 2h30m bisect fix linux-6.1.y OK (0) job log log

Sample crash report:
BTRFS info (device loop0): disk space caching is enabled
BTRFS info (device loop0): enabling ssd optimizations
Unable to handle kernel paging request at virtual address dfff800000000003
KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f]
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
[dfff800000000003] address between user and kernel address ranges
Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 0 PID: 4297 Comm: syz-executor919 Not tainted 6.1.128-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : btrfs_root_node+0xe0/0x3c8 fs/btrfs/ctree.c:150
lr : rcu_read_lock include/linux/rcupdate.h:792 [inline]
lr : btrfs_root_node+0x88/0x3c8 fs/btrfs/ctree.c:149
sp : ffff800020e771d0
x29: ffff800020e771d0 x28: dfff800000000000 x27: ffff800012882920
x26: 0000000000000001 x25: ffff800012883080 x24: 0000000000000003
x23: ffff8000128830c0 x22: ffff80001840e000 x21: 0000000000000001
x20: ffff80001840e000 x19: 0000000000000018 x18: 1fffe0003679bf76
x17: 0000000000000000 x16: ffff8000123313e4 x15: ffff800008ad1a74
x14: 1ffff00002b520b2 x13: dfff800000000000 x12: 0000000002774f7f
x11: 0000000000ff0100 x10: 0000000000000000 x9 : ffff80000a12c57c
x8 : ffff0000dbc53780 x7 : ffff80000a141144 x6 : 0000000000000000
x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000002
x2 : 0000000000000008 x1 : ffff800012976460 x0 : 0000000000000001
Call trace:
 rcu_read_lock include/linux/rcupdate.h:792 [inline]
 btrfs_root_node+0xe0/0x3c8 fs/btrfs/ctree.c:149
 btrfs_read_lock_root_node+0x6c/0x350 fs/btrfs/locking.c:277
 btrfs_build_ref_tree+0xe8/0x1220 fs/btrfs/ref-verify.c:995
 open_ctree+0x1d48/0x2340 fs/btrfs/disk-io.c:3810
 btrfs_fill_super+0x1b4/0x2c8 fs/btrfs/super.c:1469
 btrfs_mount_root+0x6f8/0x7f8 fs/btrfs/super.c:1835
 legacy_get_tree+0xd4/0x16c fs/fs_context.c:632
 vfs_get_tree+0x90/0x274 fs/super.c:1573
 fc_mount fs/namespace.c:1043 [inline]
 vfs_kern_mount+0xdc/0x178 fs/namespace.c:1073
 btrfs_mount+0x330/0x9c8 fs/btrfs/super.c:1895
 legacy_get_tree+0xd4/0x16c fs/fs_context.c:632
 vfs_get_tree+0x90/0x274 fs/super.c:1573
 do_new_mount+0x278/0x8fc fs/namespace.c:3056
 path_mount+0x590/0xe5c fs/namespace.c:3386
 do_mount fs/namespace.c:3399 [inline]
 __do_sys_mount fs/namespace.c:3607 [inline]
 __se_sys_mount fs/namespace.c:3584 [inline]
 __arm64_sys_mount+0x45c/0x594 fs/namespace.c:3584
 __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/0x168 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
Code: 52806321 aa1703e2 3915a6da 97878c25 (387c6b08) 
---[ end trace 0000000000000000 ]---
----------------
Code disassembly (best guess):
   0:	52806321 	mov	w1, #0x319                 	// #793
   4:	aa1703e2 	mov	x2, x23
   8:	3915a6da 	strb	w26, [x22, #1385]
   c:	97878c25 	bl	0xfffffffffe1e30a0
* 10:	387c6b08 	ldrb	w8, [x24, x28] <-- trapping instruction

Crashes (10):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/02/13 04:35 linux-6.1.y 0cbb5f65e52f b27c2402 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2024/10/27 14:16 linux-6.1.y 7ec6f9fa3d97 65e8686b .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2025/04/09 00:34 linux-6.1.y 3dfebb87d7eb a775275d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2025/04/09 00:32 linux-6.1.y 3dfebb87d7eb a775275d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2025/03/07 13:04 linux-6.1.y 3a8358583626 831e3629 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2025/02/13 04:18 linux-6.1.y 0cbb5f65e52f b27c2402 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2025/01/12 12:18 linux-6.1.y c63962be84ef 6dbc6a9b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2025/01/07 03:48 linux-6.1.y 7dc732d24ff7 f3558dbf .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2024/12/25 12:23 linux-6.1.y 29f02ec58a94 444551c4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
2024/10/27 14:03 linux-6.1.y 7ec6f9fa3d97 65e8686b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 BUG: unable to handle kernel paging request in btrfs_root_node
* Struck through repros no longer work on HEAD.