syzbot
divide error in qnx6_mmi_fill_super
Status:
upstream: reported C repro on 2024/11/01 19:35
Subsystems:
fs
Labels:
prio:high
[Documentation on labels]
Reported-by: syzbot+6a0633f11d3fb88860bf@syzkaller.appspotmail.com
First crash: 735d, last: 1d08h
Fix bisection:
the issue occurs on the latest tested release
(bisect log)
▶
▼
✨ AI Patch Versions (1)
▶
▼
Last patch testing requests (10)
Sample crash report:
Oops: divide error: 0000 [#1] SMP KASAN PTI
CPU: 1 UID: 0 PID: 5604 Comm: syz-executor414 Not tainted syzkaller #0 PREEMPT_{RT,(full)}
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
RIP: 0010:qnx6_mmi_fill_super+0x228/0x870 fs/qnx6/super_mmi.c:68
Code: 89 e0 48 c1 e8 03 42 0f b6 04 28 84 c0 4d 89 ef 0f 85 93 05 00 00 85 db 41 8b 04 24 89 c6 0f ce 0f 44 f0 b8 00 10 00 00 31 d2 <f7> f6 41 89 c4 4c 89 f7 e8 bb ed 5c 01 89 c3 31 ff 89 c6 e8 10 7f
RSP: 0018:ffffc90004c5fa78 EFLAGS: 00010246
RAX: 0000000000001000 RBX: 0000000000000000 RCX: ffff888027148000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
R10: dffffc0000000000 R11: ffffed1008d0b225 R12: ffff88801242b028
R13: dffffc0000000000 R14: ffff888035b14000 R15: dffffc0000000000
FS: 00005555609fd400(0000) GS:ffff888124ab9000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000001000 CR3: 000000003d24c000 CR4: 00000000003526f0
Call Trace:
<TASK>
qnx6_fill_super+0x174/0x1380 fs/qnx6/inode.c:318
get_tree_bdev_flags+0x430/0x4f0 fs/super.c:1872
vfs_get_tree+0x92/0x2a0 fs/super.c:1932
fc_mount fs/namespace.c:1282 [inline]
do_new_mount_fc fs/namespace.c:3898 [inline]
do_new_mount+0x325/0xb00 fs/namespace.c:3974
do_mount fs/namespace.c:4338 [inline]
__do_sys_mount fs/namespace.c:4556 [inline]
__se_sys_mount+0x31d/0x420 fs/namespace.c:4533
do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
do_syscall_64+0x166/0x520 arch/x86/entry/syscall_64.c:84
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f271ea27509
Code: c0 79 93 eb d5 48 8d 7c 1d 00 eb 99 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 d8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffc40ee8868 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f271ea27509
RDX: 0000200000000100 RSI: 0000200000000080 RDI: 0000200000000040
RBP: 0000000000000001 R08: 00002000000000c0 R09: 0000000000000006
R10: 0000000000008000 R11: 0000000000000246 R12: 00007ffc40ee89d8
R13: 431bde82d7b634db R14: 00007f271eabac40 R15: 0000000000000002
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:qnx6_mmi_fill_super+0x228/0x870 fs/qnx6/super_mmi.c:68
Code: 89 e0 48 c1 e8 03 42 0f b6 04 28 84 c0 4d 89 ef 0f 85 93 05 00 00 85 db 41 8b 04 24 89 c6 0f ce 0f 44 f0 b8 00 10 00 00 31 d2 <f7> f6 41 89 c4 4c 89 f7 e8 bb ed 5c 01 89 c3 31 ff 89 c6 e8 10 7f
RSP: 0018:ffffc90004c5fa78 EFLAGS: 00010246
RAX: 0000000000001000 RBX: 0000000000000000 RCX: ffff888027148000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
R10: dffffc0000000000 R11: ffffed1008d0b225 R12: ffff88801242b028
R13: dffffc0000000000 R14: ffff888035b14000 R15: dffffc0000000000
FS: 00005555609fd400(0000) GS:ffff8881249b9000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005563c0c0c000 CR3: 000000003d24c000 CR4: 00000000003526f0
----------------
Code disassembly (best guess):
0: 89 e0 mov %esp,%eax
2: 48 c1 e8 03 shr $0x3,%rax
6: 42 0f b6 04 28 movzbl (%rax,%r13,1),%eax
b: 84 c0 test %al,%al
d: 4d 89 ef mov %r13,%r15
10: 0f 85 93 05 00 00 jne 0x5a9
16: 85 db test %ebx,%ebx
18: 41 8b 04 24 mov (%r12),%eax
1c: 89 c6 mov %eax,%esi
1e: 0f ce bswap %esi
20: 0f 44 f0 cmove %eax,%esi
23: b8 00 10 00 00 mov $0x1000,%eax
28: 31 d2 xor %edx,%edx
* 2a: f7 f6 div %esi <-- trapping instruction
2c: 41 89 c4 mov %eax,%r12d
2f: 4c 89 f7 mov %r14,%rdi
32: e8 bb ed 5c 01 call 0x15cedf2
37: 89 c3 mov %eax,%ebx
39: 31 ff xor %edi,%edi
3b: 89 c6 mov %eax,%esi
3d: e8 .byte 0xe8
3e: 10 .byte 0x10
3f: 7f .byte 0x7f
* Struck through repros no longer work on HEAD.