Kernel bug: general protection fault in six_lock_ip_waiter
Subsystem: bcachefs
Status: open

Crash report:
  running recovery pass check_topology (2), currently at recovery_pass_empty (0)
  running recovery pass scan_for_btree_nodes (1), currently at recovery_pass_empty (0)
  ret btree_node_read_err_bad_node
bcachefs (loop0): error reading btree root btree=(unknown btree 36) level=0: btree_node_read_error, fixing
bcachefs (loop0): check_topology...
Oops: general protection fault, probably for non-canonical address 0xdffffc000000000e: 0000 [#1] SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000070-0x0000000000000077]
CPU: 0 UID: 0 PID: 5849 Comm: syz-executor289 Tainted: G        W           6.16.0-syzkaller-11568-gd632ab86aff2 #0 PREEMPT_{RT,(full)} 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:kasan_byte_accessible+0x12/0x30 mm/kasan/generic.c:199
Code: 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 66 0f 1f 00 48 c1 ef 03 48 b8 00 00 00 00 00 fc ff df <0f> b6 04 07 3c 08 0f 92 c0 e9 10 40 db 08 cc 66 66 66 66 66 66 2e
RSP: 0018:ffffc90004beee98 EFLAGS: 00010202
RAX: dffffc0000000000 RBX: ffffffff844a7243 RCX: e699165fc746ba00
RDX: 0000000000000000 RSI: ffffffff844a7243 RDI: 000000000000000e
RBP: ffffffff8417e6ec R08: 0000000000000001 R09: 0000000000000000
R10: dffffc0000000000 R11: fffffbfff1e39ee7 R12: 0000000000000001
R13: 0000000000000070 R14: 0000000000000070 R15: 0000000000000001
FS:  0000555583f31380(0000) GS:ffff8881268cd000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055def4af5be0 CR3: 000000003a4b8000 CR4: 00000000003526f0
Call Trace:
 <TASK>
 __kasan_check_byte+0x12/0x40 mm/kasan/common.c:556
 kasan_check_byte include/linux/kasan.h:399 [inline]
 lock_acquire+0x8d/0x360 kernel/locking/lockdep.c:5842
 six_lock_ip_waiter+0xa3/0x170 fs/bcachefs/six.c:550
 __btree_node_lock_nopath fs/bcachefs/btree_locking.h:237 [inline]
 btree_node_lock_nopath_nofail fs/bcachefs/btree_locking.h:260 [inline]
 bch2_check_topology+0x61a/0xe00 fs/bcachefs/btree_gc.c:601
 bch2_run_recovery_pass fs/bcachefs/recovery_passes.c:484 [inline]
 __bch2_run_recovery_passes+0x3ba/0x1060 fs/bcachefs/recovery_passes.c:539
 bch2_run_recovery_passes+0x184/0x210 fs/bcachefs/recovery_passes.c:610
 bch2_fs_recovery+0x2690/0x3a50 fs/bcachefs/recovery.c:1016
 bch2_fs_start+0xaaf/0xda0 fs/bcachefs/super.c:1213
 bch2_fs_get_tree+0xb39/0x1520 fs/bcachefs/fs.c:2488
 vfs_get_tree+0x8f/0x2b0 fs/super.c:1815
 do_new_mount+0x2a2/0x9e0 fs/namespace.c:3805
 do_mount fs/namespace.c:4133 [inline]
 __do_sys_mount fs/namespace.c:4344 [inline]
 __se_sys_mount+0x317/0x410 fs/namespace.c:4321
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f3cdbc4c12a
Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb a6 e8 5e 04 00 00 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 b8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffc00a48558 EFLAGS: 00000282 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00007ffc00a48570 RCX: 00007f3cdbc4c12a
RDX: 00002000000000c0 RSI: 0000200000000180 RDI: 00007ffc00a48570
RBP: 0000200000000180 R08: 00007ffc00a485b0 R09: 000000000000593f
R10: 0000000001808044 R11: 0000000000000282 R12: 00002000000000c0
R13: 00007ffc00a485b0 R14: 0000000000000003 R15: 0000000001808044
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:kasan_byte_accessible+0x12/0x30 mm/kasan/generic.c:199
Code: 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 66 0f 1f 00 48 c1 ef 03 48 b8 00 00 00 00 00 fc ff df <0f> b6 04 07 3c 08 0f 92 c0 e9 10 40 db 08 cc 66 66 66 66 66 66 2e
RSP: 0018:ffffc90004beee98 EFLAGS: 00010202
RAX: dffffc0000000000 RBX: ffffffff844a7243 RCX: e699165fc746ba00
RDX: 0000000000000000 RSI: ffffffff844a7243 RDI: 000000000000000e
RBP: ffffffff8417e6ec R08: 0000000000000001 R09: 0000000000000000
R10: dffffc0000000000 R11: fffffbfff1e39ee7 R12: 0000000000000001
R13: 0000000000000070 R14: 0000000000000070 R15: 0000000000000001
FS:  0000555583f31380(0000) GS:ffff8881268cd000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055def4af5be0 CR3: 000000003a4b8000 CR4: 00000000003526f0
----------------
Code disassembly (best guess):
   0:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
   7:	00
   8:	90                   	nop
   9:	90                   	nop
   a:	90                   	nop
   b:	90                   	nop
   c:	90                   	nop
   d:	90                   	nop
   e:	90                   	nop
   f:	90                   	nop
  10:	90                   	nop
  11:	90                   	nop
  12:	90                   	nop
  13:	90                   	nop
  14:	90                   	nop
  15:	90                   	nop
  16:	90                   	nop
  17:	90                   	nop
  18:	66 0f 1f 00          	nopw   (%rax)
  1c:	48 c1 ef 03          	shr    $0x3,%rdi
  20:	48 b8 00 00 00 00 00 	movabs $0xdffffc0000000000,%rax
  27:	fc ff df
* 2a:	0f b6 04 07          	movzbl (%rdi,%rax,1),%eax <-- trapping instruction
  2e:	3c 08                	cmp    $0x8,%al
  30:	0f 92 c0             	setb   %al
  33:	e9 10 40 db 08       	jmp    0x8db4048
  38:	cc                   	int3
  39:	66                   	data16
  3a:	66                   	data16
  3b:	66                   	data16
  3c:	66                   	data16
  3d:	66                   	data16
  3e:	66                   	data16
  3f:	2e                   	cs