syzbot
general protection fault in btrfs_encoded_read_endio (2)
Status:
upstream: reported on 2026/11/01 07:57
Reported-by: syzbot+b48fc6d2672c1f1f8b9e@syzkaller.appspotmail.com
First crash: 8d07h, last: 8d07h
Sample crash report:
general protection fault, probably for non-canonical address 0xdffffc0000003fff: 0000 [#1] PREEMPT SMP KASAN
KASAN: probably user-memory-access in range [0x000000000001fff8-0x000000000001ffff]
CPU: 0 PID: 2937 Comm: kworker/u4:9 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/07/2026
Workqueue: btrfs-endio btrfs_end_bio_work
RIP: 0010:__wake_up_common+0x227/0x4d0 kernel/sched/wait.c:100
Code: 07 00 00 00 00 49 83 c5 40 4c 39 ed 0f 84 f2 01 00 00 45 31 f6 eb 09 4c 39 ed 0f 84 e4 01 00 00 49 89 ef 48 89 e8 48 c1 e8 03 <80> 3c 10 00 74 12 4c 89 ff e8 3b a2 7a 00 48 ba 00 00 00 00 00 fc
RSP: 0018:ffffc9000bda78a0 EFLAGS: 00010007
RAX: 0000000000003fff RBX: 0000000000000001 RCX: 20e4a74db42b0b00
RDX: dffffc0000000000 RSI: ffffffff8aeae2c0 RDI: ffffffff8b3c5260
RBP: 000000000001ffff R08: 0000000000000000 R09: ffffc9000bda7940
R10: dffffc0000000000 R11: fffff520017b4efc R12: ffffc90004d478a0
R13: ffffc90004d478e0 R14: 0000000000000000 R15: 000000000001ffff
FS: 0000000000000000(0000) GS:ffff8880b8c00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f25a3a3b250 CR3: 000000005f6a6000 CR4: 00000000003506f0
Call Trace:
<TASK>
__wake_up_common_lock kernel/sched/wait.c:138 [inline]
__wake_up+0x125/0x1a0 kernel/sched/wait.c:160
btrfs_encoded_read_endio+0xd1/0x130 fs/btrfs/inode.c:10245
btrfs_check_read_bio+0xf63/0x1610 fs/btrfs/bio.c:320
process_one_work kernel/workqueue.c:2657 [inline]
process_scheduled_works+0xa60/0x1600 kernel/workqueue.c:2734
worker_thread+0xa5e/0xfe0 kernel/workqueue.c:2815
kthread+0x2fa/0x390 kernel/kthread.c:388
ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:152
ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:293
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:__wake_up_common+0x227/0x4d0 kernel/sched/wait.c:100
Code: 07 00 00 00 00 49 83 c5 40 4c 39 ed 0f 84 f2 01 00 00 45 31 f6 eb 09 4c 39 ed 0f 84 e4 01 00 00 49 89 ef 48 89 e8 48 c1 e8 03 <80> 3c 10 00 74 12 4c 89 ff e8 3b a2 7a 00 48 ba 00 00 00 00 00 fc
RSP: 0018:ffffc9000bda78a0 EFLAGS: 00010007
RAX: 0000000000003fff RBX: 0000000000000001 RCX: 20e4a74db42b0b00
RDX: dffffc0000000000 RSI: ffffffff8aeae2c0 RDI: ffffffff8b3c5260
RBP: 000000000001ffff R08: 0000000000000000 R09: ffffc9000bda7940
R10: dffffc0000000000 R11: fffff520017b4efc R12: ffffc90004d478a0
R13: ffffc90004d478e0 R14: 0000000000000000 R15: 000000000001ffff
FS: 0000000000000000(0000) GS:ffff8880b8c00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f25a3a3b250 CR3: 000000005f6a6000 CR4: 00000000003506f0
----------------
Code disassembly (best guess), 1 bytes skipped:
0: 00 00 add %al,(%rax)
2: 00 00 add %al,(%rax)
4: 49 83 c5 40 add $0x40,%r13
8: 4c 39 ed cmp %r13,%rbp
b: 0f 84 f2 01 00 00 je 0x203
11: 45 31 f6 xor %r14d,%r14d
14: eb 09 jmp 0x1f
16: 4c 39 ed cmp %r13,%rbp
19: 0f 84 e4 01 00 00 je 0x203
1f: 49 89 ef mov %rbp,%r15
22: 48 89 e8 mov %rbp,%rax
25: 48 c1 e8 03 shr $0x3,%rax
* 29: 80 3c 10 00 cmpb $0x0,(%rax,%rdx,1) <-- trapping instruction
2d: 74 12 je 0x41
2f: 4c 89 ff mov %r15,%rdi
32: e8 3b a2 7a 00 call 0x7aa272
37: 48 rex.W
38: ba 00 00 00 00 mov $0x0,%edx
3d: 00 fc add %bh,%ah
* Struck through repros no longer work on HEAD.