Oops: divide error: 0000 [#1] SMP KASAN NOPTI CPU: 0 UID: 0 PID: 546 Comm: syz.2.7254 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/02/2025 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: ffff88802a8ece80 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff88809f543000 RBP: 0000000000000002 R08: 0000000000000000 R09: 1ffff11013ea8600 R10: dffffc0000000000 R11: ffffffff88bbd370 R12: dffffc0000000000 R13: ffff88802a8ece38 R14: 0000000000000000 R15: ffff88802a8ece00 FS: 0000000000000000(0000) GS:ffff888125d0c000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000110c40badb CR3: 000000004270c000 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+0x295/0xab0 kernel/irq/handle.c:203 handle_irq_event_percpu kernel/irq/handle.c:240 [inline] handle_irq_event+0x8b/0x1e0 kernel/irq/handle.c:257 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:688 RIP: 0010:get_current arch/x86/include/asm/current.h:25 [inline] RIP: 0010:__sanitizer_cov_trace_pc+0x8/0x70 kernel/kcov.c:216 Code: 8b 3d 24 72 e0 0b 48 89 de 5b e9 d3 81 5a 00 cc cc cc 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 48 8b 04 24 <65> 48 8b 0c 25 08 40 91 92 65 8b 15 28 fc d0 10 81 e2 00 01 ff 00 RSP: 0018:ffffc9000bd5f478 EFLAGS: 00000202 RAX: ffffffff81b4d4cb RBX: 1ffff110170e7ffd RCX: ffff8880305b1e40 RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000000 RBP: ffffc9000bd5f600 R08: ffffffff8f9e1177 R09: 1ffffffff1f3c22e R10: dffffc0000000000 R11: fffffbfff1f3c22f R12: ffff8880b873ffe8 R13: dffffc0000000000 R14: ffff8880b863b240 R15: 0000000000000001 csd_lock_wait kernel/smp.c:342 [inline] smp_call_function_many_cond+0xd4b/0x12d0 kernel/smp.c:877 on_each_cpu_cond_mask+0x3f/0x80 kernel/smp.c:1043 __flush_tlb_multi arch/x86/include/asm/paravirt.h:91 [inline] flush_tlb_multi arch/x86/mm/tlb.c:1361 [inline] flush_tlb_mm_range+0x6b1/0x12d0 arch/x86/mm/tlb.c:1451 tlb_flush arch/x86/include/asm/tlb.h:23 [inline] tlb_flush_mmu_tlbonly include/asm-generic/tlb.h:490 [inline] tlb_flush_mmu+0x1a7/0x680 mm/mmu_gather.c:403 tlb_finish_mmu+0xc3/0x1d0 mm/mmu_gather.c:497 exit_mmap+0x444/0xb40 mm/mmap.c:1293 __mmput+0x118/0x430 kernel/fork.c:1133 exit_mm+0x1da/0x2c0 kernel/exit.c:582 do_exit+0x648/0x2300 kernel/exit.c:954 do_group_exit+0x21c/0x2d0 kernel/exit.c:1107 get_signal+0x1285/0x1340 kernel/signal.c:3034 arch_do_signal_or_restart+0xa0/0x790 arch/x86/kernel/signal.c:337 exit_to_user_mode_loop+0x72/0x130 kernel/entry/common.c:40 exit_to_user_mode_prepare include/linux/irq-entry-common.h:225 [inline] syscall_exit_to_user_mode_work include/linux/entry-common.h:175 [inline] syscall_exit_to_user_mode include/linux/entry-common.h:210 [inline] do_syscall_64+0x2bd/0xfa0 arch/x86/entry/syscall_64.c:100 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7ff87e98eec9 Code: Unable to access opcode bytes at 0x7ff87e98ee9f. RSP: 002b:00007ff87cbee0e8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca RAX: fffffffffffffe00 RBX: 00007ff87ebe5fa8 RCX: 00007ff87e98eec9 RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007ff87ebe5fa8 RBP: 00007ff87ebe5fa0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007ff87ebe6038 R14: 00007ffc9aeaa100 R15: 00007ffc9aeaa1e8 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: ffff88802a8ece80 RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff88809f543000 RBP: 0000000000000002 R08: 0000000000000000 R09: 1ffff11013ea8600 R10: dffffc0000000000 R11: ffffffff88bbd370 R12: dffffc0000000000 R13: ffff88802a8ece38 R14: 0000000000000000 R15: ffff88802a8ece00 FS: 0000000000000000(0000) GS:ffff888125d0c000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000110c40badb CR3: 000000004270c000 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