[v5.15] divide error in comedi_inc_scan_progress

0 views
Skip to first unread message

syzbot

unread,
Nov 18, 2025, 7:37:32 PM (2 days ago) Nov 18
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: cc5ec8769306 Linux 5.15.196
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=13cd7332580000
kernel config: https://syzkaller.appspot.com/x/.config?x=e1bb6d24ef2164eb
dashboard link: https://syzkaller.appspot.com/bug?extid=8a4a01a6329eb648298a
compiler: Debian clang version 20.1.8 (++20250708063551+0c9f909b7976-1~exp1~20250708183702.136), Debian LLD 20.1.8

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/c71c660545b2/disk-cc5ec876.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/4f011826cca6/vmlinux-cc5ec876.xz
kernel image: https://storage.googleapis.com/syzbot-assets/8ccd1a2c3f8c/bzImage-cc5ec876.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+8a4a01...@syzkaller.appspotmail.com

divide error: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 4593 Comm: udevd Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/02/2025
RIP: 0010:comedi_inc_scan_progress+0x19e/0x430 drivers/comedi/drivers.c:563
Code: b6 0c 19 84 c9 0f 85 b8 01 00 00 03 45 34 4c 8d a5 88 00 00 00 4c 89 e1 48 c1 e9 03 0f b6 0c 19 84 c9 0f 85 c7 01 00 00 31 d2 <41> f7 34 24 41 89 17 45 89 ec eb 0f e8 a1 b1 07 fa 48 bb 00 00 00
RSP: 0018:ffffc90000007c68 EFLAGS: 00010046
RAX: 0000000000000001 RBX: dffffc0000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff88802b009200 R08: ffff88802b009200 R09: fffff52000a4b201
R10: fffff52000a4b201 R11: 1ffff92000a4b200 R12: ffff88802b009288
R13: 0000000000000004 R14: 0000000000000000 R15: ffff88802b009234
FS: 00007f865d461880(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fd481b14cc0 CR3: 000000001f837000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
comedi_buf_write_samples+0x371/0x5e0 drivers/comedi/comedi_buf.c:647
aio_iiro_16_cos+0x160/0x1b0 drivers/comedi/drivers/aio_iiro_16.c:70
__handle_irq_event_percpu+0x291/0x9b0 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+0x243/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:rcu_dynticks_curr_cpu_in_eqs kernel/rcu/tree.c:-1 [inline]
RIP: 0010:rcu_is_watching+0x18/0xa0 kernel/rcu/tree.c:1123
Code: 00 00 75 b8 eb b7 e8 a7 bc 45 08 0f 1f 80 00 00 00 00 41 57 41 56 53 65 ff 05 8c be 9e 7e e8 9f cc 45 08 89 c3 83 f8 08 73 5c <49> bf 00 00 00 00 00 fc ff df 4c 8d 34 dd 20 c8 bc 8b 4c 89 f0 48
RSP: 0018:ffffc900033efaa0 EFLAGS: 00000293
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 07f472488a995700
RDX: 0000000000000000 RSI: ffffffff8a59e560 RDI: ffffffff8a59e520
RBP: ffffc900033efbd0 R08: dffffc0000000000 R09: fffffbfff1ad33a6
R10: fffffbfff1ad33a6 R11: 1ffffffff1ad33a5 R12: ffff8880169cd2b0
R13: dffffc0000000000 R14: ffff8880169cd2f0 R15: 1ffff9200067df64
trace_lock_release include/trace/events/lock.h:58 [inline]
lock_release+0xba/0x870 kernel/locking/lockdep.c:5634
rcu_read_unlock include/linux/rcupdate.h:773 [inline]
aa_file_perm+0x3a3/0xe20 security/apparmor/file.c:625
common_file_perm+0x167/0x1c0 security/apparmor/lsm.c:475
security_file_permission+0x65/0xa0 security/security.c:1521
iterate_dir+0x94/0x560 fs/readdir.c:50
__do_sys_getdents64 fs/readdir.c:369 [inline]
__se_sys_getdents64+0xe5/0x260 fs/readdir.c:354
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:0x7f865d598d23
Code: 8b 05 d9 00 10 00 64 c7 00 16 00 00 00 31 c0 eb b0 66 0f 1f 44 00 00 b8 ff ff ff 7f 48 39 c2 48 0f 47 d0 b8 d9 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 05 c3 0f 1f 40 00 48 8b 15 a1 00 10 00 f7 d8
RSP: 002b:00007ffd21031348 EFLAGS: 00000293 ORIG_RAX: 00000000000000d9
RAX: ffffffffffffffda RBX: 000055c8e17be220 RCX: 00007f865d598d23
RDX: 0000000000008000 RSI: 000055c8e17be250 RDI: 0000000000000009
RBP: 000055c8e17be224 R08: 00007f865d699ac0 R09: 0000000000000000
R10: 0000000000000003 R11: 0000000000000293 R12: 000055c8e17be250
R13: fffffffffffffe68 R14: 0000000000000002 R15: 00007ffd210317a0
</TASK>
Modules linked in:
---[ end trace a445fa34e6de5172 ]---
RIP: 0010:comedi_inc_scan_progress+0x19e/0x430 drivers/comedi/drivers.c:563
Code: b6 0c 19 84 c9 0f 85 b8 01 00 00 03 45 34 4c 8d a5 88 00 00 00 4c 89 e1 48 c1 e9 03 0f b6 0c 19 84 c9 0f 85 c7 01 00 00 31 d2 <41> f7 34 24 41 89 17 45 89 ec eb 0f e8 a1 b1 07 fa 48 bb 00 00 00
RSP: 0018:ffffc90000007c68 EFLAGS: 00010046
RAX: 0000000000000001 RBX: dffffc0000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff88802b009200 R08: ffff88802b009200 R09: fffff52000a4b201
R10: fffff52000a4b201 R11: 1ffff92000a4b200 R12: ffff88802b009288
R13: 0000000000000004 R14: 0000000000000000 R15: ffff88802b009234
FS: 00007f865d461880(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fd481b14cc0 CR3: 000000001f837000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: b6 0c mov $0xc,%dh
2: 19 84 c9 0f 85 b8 01 sbb %eax,0x1b8850f(%rcx,%rcx,8)
9: 00 00 add %al,(%rax)
b: 03 45 34 add 0x34(%rbp),%eax
e: 4c 8d a5 88 00 00 00 lea 0x88(%rbp),%r12
15: 4c 89 e1 mov %r12,%rcx
18: 48 c1 e9 03 shr $0x3,%rcx
1c: 0f b6 0c 19 movzbl (%rcx,%rbx,1),%ecx
20: 84 c9 test %cl,%cl
22: 0f 85 c7 01 00 00 jne 0x1ef
28: 31 d2 xor %edx,%edx
* 2a: 41 f7 34 24 divl (%r12) <-- trapping instruction
2e: 41 89 17 mov %edx,(%r15)
31: 45 89 ec mov %r13d,%r12d
34: eb 0f jmp 0x45
36: e8 a1 b1 07 fa call 0xfa07b1dc
3b: 48 rex.W
3c: bb .byte 0xbb
3d: 00 00 add %al,(%rax)


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages