syzbot
general protection fault in pcl816_interrupt
Status:
upstream: reported on 2026/10/13 21:02
Reported-by: syzbot+9d0335eaaeb2ab035870@syzkaller.appspotmail.com
First crash: 7d05h, last: 7d05h
Sample crash report:
general protection fault, probably for non-canonical address 0xdffffc0000000001: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]
CPU: 0 PID: 1279 Comm: kworker/u4:4 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Workqueue: 0x0 (events_unbound)
RIP: 0010:pcl816_interrupt+0xe3/0x940 drivers/comedi/drivers/pcl816.c:247
Code: 74 24 30 4d 8b 3e 4c 89 f8 48 c1 e8 03 42 80 3c 20 00 74 08 4c 89 ff e8 6b 8b 34 fa 4d 8b 37 49 8d 7e 08 48 89 f8 48 c1 e8 03 <42> 80 3c 20 00 74 05 e8 51 8b 34 fa 49 8b 46 08 48 89 44 24 38 49
RSP: 0018:ffffc90000007ce0 EFLAGS: 00010002
RAX: 0000000000000001 RBX: ffff88802b7fa800 RCX: ffff88802358d940
RDX: 0000000000010000 RSI: ffff88802b7fa800 RDI: 0000000000000008
RBP: ffffc90000007dd0 R08: ffffffff8e6b282f R09: 1ffffffff1cd6505
R10: dffffc0000000000 R11: fffffbfff1cd6506 R12: dffffc0000000000
R13: ffff88805f234600 R14: 0000000000000000 R15: ffff88814858dd80
FS: 0000000000000000(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b32822ff8 CR3: 0000000063869000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
__handle_irq_event_percpu+0x299/0x9d0 kernel/irq/handle.c:156
handle_irq_event_percpu kernel/irq/handle.c:196 [inline]
handle_irq_event+0xa5/0x220 kernel/irq/handle.c:213
handle_edge_irq+0x242/0xb20 kernel/irq/chip.c:819
generic_handle_irq_desc include/linux/irqdesc.h:158 [inline]
handle_irq arch/x86/kernel/irq.c:233 [inline]
__common_interrupt+0xd7/0x1e0 arch/x86/kernel/irq.c:252
common_interrupt+0xb0/0xd0 arch/x86/kernel/irq.c:242
</IRQ>
<TASK>
asm_common_interrupt+0x22/0x40 arch/x86/include/asm/idtentry.h:667
RIP: 0010:finish_lock_switch+0x12f/0x290 kernel/sched/core.c:4804
Code: 83 c7 18 be ff ff ff ff e8 be bc 6d 08 85 c0 74 46 4d 85 ff 75 62 0f 1f 44 00 00 48 89 df e8 58 2d 77 08 e8 a3 f2 2a 00 fb 5b <41> 5c 41 5d 41 5e 41 5f 5d c3 48 89 df e8 2f 0e fe ff 43 80 3c 2c
RSP: 0018:ffffc90004fe7b38 EFLAGS: 00000286
RAX: b9090c8ea08fad00 RBX: ffff88807a72bb80 RCX: b9090c8ea08fad00
RDX: dffffc0000000000 RSI: ffffffff8a2b2be0 RDI: ffffffff8a7a4c00
RBP: 1ffff110171c7613 R08: ffff8880b8e3a343 R09: 1ffff110171c7468
R10: dffffc0000000000 R11: ffffed10171c7469 R12: 1ffff110171c75c1
R13: dffffc0000000000 R14: ffff8880b8e3ae08 R15: 0000000000000000
finish_task_switch+0x12f/0x650 kernel/sched/core.c:4921
context_switch kernel/sched/core.c:5052 [inline]
__schedule+0x11cb/0x4350 kernel/sched/core.c:6395
schedule+0x11b/0x1e0 kernel/sched/core.c:6478
worker_thread+0xf90/0x12a0 kernel/workqueue.c:2478
kthread+0x42e/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
</TASK>
Modules linked in:
---[ end trace f63112c7bec0d773 ]---
RIP: 0010:pcl816_interrupt+0xe3/0x940 drivers/comedi/drivers/pcl816.c:247
Code: 74 24 30 4d 8b 3e 4c 89 f8 48 c1 e8 03 42 80 3c 20 00 74 08 4c 89 ff e8 6b 8b 34 fa 4d 8b 37 49 8d 7e 08 48 89 f8 48 c1 e8 03 <42> 80 3c 20 00 74 05 e8 51 8b 34 fa 49 8b 46 08 48 89 44 24 38 49
RSP: 0018:ffffc90000007ce0 EFLAGS: 00010002
RAX: 0000000000000001 RBX: ffff88802b7fa800 RCX: ffff88802358d940
RDX: 0000000000010000 RSI: ffff88802b7fa800 RDI: 0000000000000008
RBP: ffffc90000007dd0 R08: ffffffff8e6b282f R09: 1ffffffff1cd6505
R10: dffffc0000000000 R11: fffffbfff1cd6506 R12: dffffc0000000000
R13: ffff88805f234600 R14: 0000000000000000 R15: ffff88814858dd80
FS: 0000000000000000(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b32822ff8 CR3: 0000000063869000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: 74 24 je 0x26
2: 30 4d 8b xor %cl,-0x75(%rbp)
5: 3e 4c 89 f8 ds mov %r15,%rax
9: 48 c1 e8 03 shr $0x3,%rax
d: 42 80 3c 20 00 cmpb $0x0,(%rax,%r12,1)
12: 74 08 je 0x1c
14: 4c 89 ff mov %r15,%rdi
17: e8 6b 8b 34 fa call 0xfa348b87
1c: 4d 8b 37 mov (%r15),%r14
1f: 49 8d 7e 08 lea 0x8(%r14),%rdi
23: 48 89 f8 mov %rdi,%rax
26: 48 c1 e8 03 shr $0x3,%rax
* 2a: 42 80 3c 20 00 cmpb $0x0,(%rax,%r12,1) <-- trapping instruction
2f: 74 05 je 0x36
31: e8 51 8b 34 fa call 0xfa348b87
36: 49 8b 46 08 mov 0x8(%r14),%rax
3a: 48 89 44 24 38 mov %rax,0x38(%rsp)
3f: 49 rex.WB
* Struck through repros no longer work on HEAD.