syzbot
divide error in comedi_inc_scan_progress (3)
Status:
upstream: reported on 2026/10/17 01:38
Reported-by: syzbot+f3711878ef3970d89d40@syzkaller.appspotmail.com
First crash: 3d18h, last: 7h40m
Sample crash report:
divide error: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 11860 Comm: syz.6.2532 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/07/2026
RIP: 0010:comedi_inc_scan_progress+0x1a5/0x420 drivers/comedi/drivers.c:563
Code: 0c 29 84 c9 0f 85 ad 01 00 00 03 43 34 4c 8d a3 88 00 00 00 4c 89 e1 48 c1 e9 03 42 0f b6 0c 29 84 c9 0f 85 b3 01 00 00 31 d2 <41> f7 34 24 41 89 17 eb 05 e8 7d 61 f1 f9 4c 8d 63 3c 4d 89 e7 49
RSP: 0018:ffffc90000007c90 EFLAGS: 00010046
RAX: 0000000000000001 RBX: ffff888029f99400 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000002 R08: ffffc90003d81001 R09: 1ffff920007b0200
R10: dffffc0000000000 R11: fffff520007b0201 R12: ffff888029f99488
R13: dffffc0000000000 R14: 0000000000000000 R15: ffff888029f99434
FS: 00007f86a65a96c0(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b2ec21ff8 CR3: 0000000054921000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
comedi_buf_write_samples+0x37b/0x5f0 drivers/comedi/comedi_buf.c:647
das16m1_handler+0x239/0x4d0 drivers/comedi/drivers/das16m1.c:414
das16m1_interrupt+0xa7/0x170 drivers/comedi/drivers/das16m1.c:471
__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:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline]
RIP: 0010:_raw_spin_unlock_irqrestore+0xbc/0x120 kernel/locking/spinlock.c:194
Code: c7 44 24 20 00 00 00 00 9c 8f 44 24 20 f7 44 24 20 00 02 00 00 41 c6 04 07 f8 75 4b f7 c3 00 02 00 00 74 01 fb bf 01 00 00 00 <e8> 5f ce 86 f7 65 8b 05 e0 e4 36 76 85 c0 74 3c 48 c7 04 24 0e 36
RSP: 0018:ffffc9000308fbc0 EFLAGS: 00000206
RAX: dffffc0000000004 RBX: 0000000000000a06 RCX: b84c15ceb5cff100
RDX: dffffc0000000000 RSI: ffffffff8a2b2b60 RDI: 0000000000000001
RBP: ffffc9000308fc50 R08: ffffffff91015117 R09: 1ffffffff2202a22
R10: dffffc0000000000 R11: fffffbfff2202a23 R12: dffffc0000000000
R13: ffffffff97443128 R14: ffffffff97443128 R15: 1ffff92000611f78
spin_unlock_irqrestore include/linux/spinlock.h:419 [inline]
autoconfig drivers/tty/serial/8250/8250_port.c:1336 [inline]
serial8250_config_port+0x19e2/0x3640 drivers/tty/serial/8250/8250_port.c:3208
univ8250_config_port+0x393/0x940 drivers/tty/serial/8250/8250_core.c:446
uart_do_autoconfig drivers/tty/serial/serial_core.c:1164 [inline]
uart_ioctl+0x689/0x800 drivers/tty/serial/serial_core.c:1428
tty_ioctl+0x848/0xc30 drivers/tty/tty_io.c:2810
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:874 [inline]
__se_sys_ioctl+0xfa/0x170 fs/ioctl.c:860
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f86a8352559
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 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:00007f86a65a9028 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007f86a85d8fa0 RCX: 00007f86a8352559
RDX: 0000000000000000 RSI: 0000000000005453 RDI: 0000000000000003
RBP: 00007f86a83e9b20 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f86a85d9038 R14: 00007f86a85d8fa0 R15: 00007fff59ea2c08
</TASK>
Modules linked in:
---[ end trace ab71ba742d0b3f21 ]---
RIP: 0010:comedi_inc_scan_progress+0x1a5/0x420 drivers/comedi/drivers.c:563
Code: 0c 29 84 c9 0f 85 ad 01 00 00 03 43 34 4c 8d a3 88 00 00 00 4c 89 e1 48 c1 e9 03 42 0f b6 0c 29 84 c9 0f 85 b3 01 00 00 31 d2 <41> f7 34 24 41 89 17 eb 05 e8 7d 61 f1 f9 4c 8d 63 3c 4d 89 e7 49
RSP: 0018:ffffc90000007c90 EFLAGS: 00010046
RAX: 0000000000000001 RBX: ffff888029f99400 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000002 R08: ffffc90003d81001 R09: 1ffff920007b0200
R10: dffffc0000000000 R11: fffff520007b0201 R12: ffff888029f99488
R13: dffffc0000000000 R14: 0000000000000000 R15: ffff888029f99434
FS: 00007f86a65a96c0(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b2ec21ff8 CR3: 0000000054921000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: 0c 29 or $0x29,%al
2: 84 c9 test %cl,%cl
4: 0f 85 ad 01 00 00 jne 0x1b7
a: 03 43 34 add 0x34(%rbx),%eax
d: 4c 8d a3 88 00 00 00 lea 0x88(%rbx),%r12
14: 4c 89 e1 mov %r12,%rcx
17: 48 c1 e9 03 shr $0x3,%rcx
1b: 42 0f b6 0c 29 movzbl (%rcx,%r13,1),%ecx
20: 84 c9 test %cl,%cl
22: 0f 85 b3 01 00 00 jne 0x1db
28: 31 d2 xor %edx,%edx
* 2a: 41 f7 34 24 divl (%r12) <-- trapping instruction
2e: 41 89 17 mov %edx,(%r15)
31: eb 05 jmp 0x38
33: e8 7d 61 f1 f9 call 0xf9f161b5
38: 4c 8d 63 3c lea 0x3c(%rbx),%r12
3c: 4d 89 e7 mov %r12,%r15
3f: 49 rex.WB
* Struck through repros no longer work on HEAD.