syzbot


general protection fault in btrfs_root_node

Status: upstream: reported C repro on 2025/12/30 12:00
Bug presence: origin:lts-only
[Documentation on labels]
Reported-by: syzbot+4ae02193d2fd76fd07e2@syzkaller.appspotmail.com
First crash: 130d, last: 7h49m
Bug presence (2)
Date Name Commit Repro Result
2026/01/02 linux-6.6.y (ToT) 5fa4793a2d2d C [report] general protection fault in btrfs_root_node
2026/01/02 upstream (ToT) b69053dd3ffb C Didn't crash
Similar bugs (4)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream general protection fault in btrfs_root_node btrfs 8 C done 670 216d 613d 29/29 fixed on 2025/10/29 21:02
linux-5.15 KASAN: null-ptr-deref Write in btrfs_root_node (2) origin:lts-only 12 C done 55 4d21h 965d 0/3 upstream: reported C repro on 2023/09/18 04:34
linux-6.1 BUG: unable to handle kernel paging request in btrfs_root_node origin:upstream missing-backport 8 C inconclusive 36 116d 559d 0/3 upstream: reported C repro on 2024/10/27 14:03
linux-5.15 KASAN: null-ptr-deref Write in btrfs_root_node 12 1 1111d 1111d 0/3 auto-obsoleted due to no activity on 2023/08/22 05:04
Fix bisection attempts (1)
Created Duration User Patch Repo Result
2026/01/12 16:28 1h47m fix candidate upstream OK (0) job log

Sample crash report:
general protection fault, probably for non-canonical address 0xdffffc0000000003: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f]
CPU: 0 PID: 5924 Comm: syz.0.17 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/18/2026
RIP: 0010:btrfs_root_node+0x7f/0x3a0 fs/btrfs/ctree.c:260
Code: 97 81 f0 fd 48 83 c4 08 e8 3e c8 0e 07 89 c5 31 ff 89 c6 e8 03 7d 0f fe 85 ed 74 17 e8 2a 3c f9 fd 84 c0 74 1c e8 41 79 0f fe <42> 80 3c 2b 00 75 4b eb 51 e8 33 79 0f fe 42 80 3c 2b 00 75 3d eb
RSP: 0018:ffffc90003317598 EFLAGS: 00010293
RAX: ffffffff8377a8bf RBX: 0000000000000003 RCX: ffff88807aecbc00
RDX: 0000000000000000 RSI: ffffffff8b1c8f80 RDI: ffffffff8b1c8f40
RBP: 0000000000000001 R08: dffffc0000000000 R09: 1ffffffff2238ca0
R10: dffffc0000000000 R11: fffffbfff2238ca1 R12: ffffffff8377a87c
R13: dffffc0000000000 R14: 0000000000000018 R15: 0000000000000038
FS:  000055558701e500(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055cfc3a1de18 CR3: 0000000075822000 CR4: 00000000003506f0
Call Trace:
 <TASK>
 btrfs_read_lock_root_node+0x82/0x3a0 fs/btrfs/locking.c:279
 btrfs_build_ref_tree+0x11b/0x1240 fs/btrfs/ref-verify.c:1005
 open_ctree+0x235e/0x2da0 fs/btrfs/disk-io.c:3535
 btrfs_fill_super+0x1c2/0x300 fs/btrfs/super.c:1163
 btrfs_mount_root+0x88d/0x8f0 fs/btrfs/super.c:1527
 legacy_get_tree+0xea/0x180 fs/fs_context.c:662
 vfs_get_tree+0x8c/0x280 fs/super.c:1764
 fc_mount fs/namespace.c:1117 [inline]
 vfs_kern_mount+0xbe/0x160 fs/namespace.c:1147
 btrfs_mount+0x32d/0xb10 fs/btrfs/super.c:1587
 legacy_get_tree+0xea/0x180 fs/fs_context.c:662
 vfs_get_tree+0x8c/0x280 fs/super.c:1764
 do_new_mount+0x24b/0xa40 fs/namespace.c:3386
 do_mount fs/namespace.c:3726 [inline]
 __do_sys_mount fs/namespace.c:3935 [inline]
 __se_sys_mount+0x2e7/0x3d0 fs/namespace.c:3912
 do_syscall_x64 arch/x86/entry/common.c:46 [inline]
 do_syscall_64+0x55/0xa0 arch/x86/entry/common.c:76
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fd10bb9e04a
Code: 48 c7 c2 e8 ff ff ff f7 d8 64 89 02 b8 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffdaced25c8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00007ffdaced2650 RCX: 00007fd10bb9e04a
RDX: 0000200000000080 RSI: 00002000000000c0 RDI: 00007ffdaced2610
RBP: 0000200000000080 R08: 00007ffdaced2650 R09: 000000000001c005
R10: 000000000001c005 R11: 0000000000000246 R12: 00002000000000c0
R13: 00007ffdaced2610 R14: 00000000000055cb R15: 0000200000000400
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:btrfs_root_node+0x7f/0x3a0 fs/btrfs/ctree.c:260
Code: 97 81 f0 fd 48 83 c4 08 e8 3e c8 0e 07 89 c5 31 ff 89 c6 e8 03 7d 0f fe 85 ed 74 17 e8 2a 3c f9 fd 84 c0 74 1c e8 41 79 0f fe <42> 80 3c 2b 00 75 4b eb 51 e8 33 79 0f fe 42 80 3c 2b 00 75 3d eb
RSP: 0018:ffffc90003317598 EFLAGS: 00010293
RAX: ffffffff8377a8bf RBX: 0000000000000003 RCX: ffff88807aecbc00
RDX: 0000000000000000 RSI: ffffffff8b1c8f80 RDI: ffffffff8b1c8f40
RBP: 0000000000000001 R08: dffffc0000000000 R09: 1ffffffff2238ca0
R10: dffffc0000000000 R11: fffffbfff2238ca1 R12: ffffffff8377a87c
R13: dffffc0000000000 R14: 0000000000000018 R15: 0000000000000038
FS:  000055558701e500(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055cfc3a285f8 CR3: 0000000075822000 CR4: 00000000003506e0
----------------
Code disassembly (best guess), 2 bytes skipped:
   0:	f0 fd                	lock std
   2:	48 83 c4 08          	add    $0x8,%rsp
   6:	e8 3e c8 0e 07       	call   0x70ec849
   b:	89 c5                	mov    %eax,%ebp
   d:	31 ff                	xor    %edi,%edi
   f:	89 c6                	mov    %eax,%esi
  11:	e8 03 7d 0f fe       	call   0xfe0f7d19
  16:	85 ed                	test   %ebp,%ebp
  18:	74 17                	je     0x31
  1a:	e8 2a 3c f9 fd       	call   0xfdf93c49
  1f:	84 c0                	test   %al,%al
  21:	74 1c                	je     0x3f
  23:	e8 41 79 0f fe       	call   0xfe0f7969
* 28:	42 80 3c 2b 00       	cmpb   $0x0,(%rbx,%r13,1) <-- trapping instruction
  2d:	75 4b                	jne    0x7a
  2f:	eb 51                	jmp    0x82
  31:	e8 33 79 0f fe       	call   0xfe0f7969
  36:	42 80 3c 2b 00       	cmpb   $0x0,(%rbx,%r13,1)
  3b:	75 3d                	jne    0x7a
  3d:	eb                   	.byte 0xeb

Crashes (8):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/05/09 21:09 linux-6.6.y 3b9f64db0496 29233ece .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
2025/12/30 17:29 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
2025/12/30 16:23 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
2025/12/30 15:11 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
2025/12/30 14:11 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
2025/12/30 13:02 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
2025/12/31 04:40 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
2025/12/30 11:59 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in btrfs_root_node
* Struck through repros no longer work on HEAD.