Oops: divide error: 0000 [#1] SMP KASAN NOPTI CPU: 0 UID: 0 PID: 9 Comm: kworker/0:0 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025 Workqueue: rcu_gp process_srcu RIP: 0010:comedi_buf_munge drivers/comedi/comedi_buf.c:347 [inline] RIP: 0010:comedi_buf_write_free+0x3c8/0x7e0 drivers/comedi/comedi_buf.c:391 Code: 41 03 45 00 48 8b 4c 24 78 42 0f b6 0c 21 84 c9 4c 8b bc 24 90 00 00 00 44 8b 74 24 54 0f 85 02 01 00 00 31 d2 48 8b 4c 24 30 31 41 89 55 00 48 8b 44 24 70 42 0f b6 04 20 84 c0 0f 85 09 01 RSP: 0018:ffffc90000007bd8 EFLAGS: 00010046 RAX: 0000000000000001 RBX: dffffc0000000000 RCX: ffff888074ce3680 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff888075aa3000 RBP: 0000000000000002 R08: 0000000000000000 R09: 1ffff1100eb54600 R10: dffffc0000000000 R11: ffffffff88ed5560 R12: dffffc0000000000 R13: ffff888074ce3638 R14: 0000000000000000 R15: ffff888074ce3600 FS: 0000000000000000(0000) GS:ffff888125c1b000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f024dcf5000 CR3: 000000007ae06000 CR4: 0000000000350ef0 Call Trace: comedi_buf_write_samples+0x369/0x5a0 drivers/comedi/comedi_buf.c:602 das16m1_handler+0x213/0x4b0 drivers/comedi/drivers/das16m1.c:413 das16m1_interrupt+0xaf/0x180 drivers/comedi/drivers/das16m1.c:470 __handle_irq_event_percpu+0x28c/0x980 kernel/irq/handle.c:158 handle_irq_event_percpu kernel/irq/handle.c:193 [inline] handle_irq_event+0x8b/0x1e0 kernel/irq/handle.c:210 handle_edge_irq+0x23b/0xa10 kernel/irq/chip.c:855 generic_handle_irq_desc include/linux/irqdesc.h:173 [inline] handle_irq arch/x86/kernel/irq.c:254 [inline] call_irq_handler arch/x86/kernel/irq.c:-1 [inline] __common_interrupt+0x141/0x1f0 arch/x86/kernel/irq.c:325 common_interrupt+0xb6/0xe0 arch/x86/kernel/irq.c:318 asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693 RIP: 0010:__raw_spin_unlock_irq include/linux/spinlock_api_smp.h:160 [inline] RIP: 0010:_raw_spin_unlock_irq+0x29/0x50 kernel/locking/spinlock.c:202 Code: 90 f3 0f 1e fa 53 48 89 fb 48 83 c7 18 48 8b 74 24 08 e8 ea 5c 21 f6 48 89 df e8 42 f4 21 f6 e8 0d 46 4b f6 fb bf 01 00 00 00 a2 ee 13 f6 65 8b 05 6b 41 24 07 85 c0 74 07 5b e9 3c 32 94 f5 RSP: 0018:ffffc900000e7a70 EFLAGS: 00000282 RAX: f821fafb85146200 RBX: ffff8880b8639700 RCX: f821fafb85146200 RDX: 0000000000000000 RSI: ffffffff8be33660 RDI: 0000000000000001 RBP: ffffc900000e7c70 R08: ffffffff8fa38337 R09: 1ffffffff1f47066 R10: dffffc0000000000 R11: fffffbfff1f47067 R12: ffff8880b8639700 R13: ffff888140ef5ad0 R14: dffffc0000000000 R15: 0000000000800000 process_one_work kernel/workqueue.c:3205 [inline] process_scheduled_works+0x8ce/0x17b0 kernel/workqueue.c:3319 worker_thread+0x8a0/0xda0 kernel/workqueue.c:3400 kthread+0x711/0x8a0 kernel/kthread.c:463 ret_from_fork+0x3fc/0x770 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:comedi_buf_munge drivers/comedi/comedi_buf.c:347 [inline] RIP: 0010:comedi_buf_write_free+0x3c8/0x7e0 drivers/comedi/comedi_buf.c:391 Code: 41 03 45 00 48 8b 4c 24 78 42 0f b6 0c 21 84 c9 4c 8b bc 24 90 00 00 00 44 8b 74 24 54 0f 85 02 01 00 00 31 d2 48 8b 4c 24 30 31 41 89 55 00 48 8b 44 24 70 42 0f b6 04 20 84 c0 0f 85 09 01 RSP: 0018:ffffc90000007bd8 EFLAGS: 00010046 RAX: 0000000000000001 RBX: dffffc0000000000 RCX: ffff888074ce3680 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff888075aa3000 RBP: 0000000000000002 R08: 0000000000000000 R09: 1ffff1100eb54600 R10: dffffc0000000000 R11: ffffffff88ed5560 R12: dffffc0000000000 R13: ffff888074ce3638 R14: 0000000000000000 R15: ffff888074ce3600 FS: 0000000000000000(0000) GS:ffff888125c1b000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f024dcf5000 CR3: 000000007ae06000 CR4: 0000000000350ef0 ---------------- Code disassembly (best guess): 0: 41 03 45 00 add 0x0(%r13),%eax 4: 48 8b 4c 24 78 mov 0x78(%rsp),%rcx 9: 42 0f b6 0c 21 movzbl (%rcx,%r12,1),%ecx e: 84 c9 test %cl,%cl 10: 4c 8b bc 24 90 00 00 mov 0x90(%rsp),%r15 17: 00 18: 44 8b 74 24 54 mov 0x54(%rsp),%r14d 1d: 0f 85 02 01 00 00 jne 0x125 23: 31 d2 xor %edx,%edx 25: 48 8b 4c 24 30 mov 0x30(%rsp),%rcx * 2a: f7 31 divl (%rcx) <-- trapping instruction 2c: 41 89 55 00 mov %edx,0x0(%r13) 30: 48 8b 44 24 70 mov 0x70(%rsp),%rax 35: 42 0f b6 04 20 movzbl (%rax,%r12,1),%eax 3a: 84 c0 test %al,%al 3c: 0f .byte 0xf 3d: 85 09 test %ecx,(%rcx) 3f: 01 .byte 0x1