[Android 5.15] general protection fault in saitek_event

1 view
Skip to first unread message

syzbot

unread,
Nov 7, 2026, 6:48:35 AM (2 days ago) Nov 7
to syzkaller-a...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 2316d138a3c3 Merge 5.15.223 into android13-5.15-lts
git tree: android13-5.15-lts
console+strace: https://syzkaller.appspot.com/x/log.txt?x=143e80c3580000
kernel config: https://syzkaller.appspot.com/x/.config?x=98c60c31f9225e5e
dashboard link: https://syzkaller.appspot.com/bug?extid=467059e1af9e8428d6af
compiler: Debian clang version 22.1.8 (1~deb13u4), Debian LLD 22.1.8
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=177909ea580000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=14f0c409580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/24d194ffc446/disk-2316d138.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/ed78d0797a3f/vmlinux-2316d138.xz
kernel image: https://storage.googleapis.com/syzbot-assets/71675bd16c9b/bzImage-2316d138.xz

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

general protection fault, probably for non-canonical address 0xdffffc0000000003: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f]
CPU: 0 PID: 0 Comm: swapper/0 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/15/2026
RIP: 0010:saitek_event+0x51/0x2c0 drivers/hid/hid-saitek.c:154
Code: e5 fd 49 83 c6 60 4c 89 f0 48 c1 e8 03 42 80 3c 20 00 74 08 4c 89 f7 e8 8d 79 25 fe 4d 8b 36 49 83 c6 18 4c 89 f0 48 c1 e8 03 <42> 80 3c 20 00 74 08 4c 89 f7 e8 70 79 25 fe 49 8b 06 48 89 45 d0
RSP: 0018:ffffc90000007710 EFLAGS: 00010006
RAX: 0000000000000003 RBX: ffff888106dd1a70 RCX: ffffffff8661c380
RDX: 0000000000000100 RSI: ffff888106dd1a00 RDI: ffff88811f584000
RBP: ffffc90000007740 R08: 0000000000000000 R09: 0000000000000004
R10: dffffc0000000000 R11: fffff52000000e88 R12: dffffc0000000000
R13: 000000000000008d R14: 0000000000000018 R15: ffff88811f584000
FS: 0000000000000000(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f3e7ab3fd58 CR3: 0000000122173000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
hid_process_event+0x3ea/0x5a0 drivers/hid/hid-core.c:1538
hid_input_field drivers/hid/hid-core.c:1592 [inline]
__hid_report_raw_event+0xf06/0x18d0 drivers/hid/hid-core.c:1847
hid_input_report+0x44c/0x500 drivers/hid/hid-core.c:1922
hid_ctrl+0x235/0x510 drivers/hid/usbhid/hid-core.c:483
__usb_hcd_giveback_urb+0x32f/0x4f0 drivers/usb/core/hcd.c:1674
usb_hcd_giveback_urb+0x11d/0x3f0 drivers/usb/core/hcd.c:1751
dummy_timer+0xa3a/0x32d0 drivers/usb/gadget/udc/dummy_hcd.c:2012
call_timer_fn+0x38/0x290 kernel/time/timer.c:1459
expire_timers kernel/time/timer.c:1504 [inline]
__run_timers+0x637/0x9a0 kernel/time/timer.c:1775
run_timer_softirq+0x6a/0xf0 kernel/time/timer.c:1788
handle_softirqs+0x250/0x560 kernel/softirq.c:583
__do_softirq kernel/softirq.c:621 [inline]
invoke_softirq kernel/softirq.c:443 [inline]
__irq_exit_rcu+0x52/0xf0 kernel/softirq.c:670
irq_exit_rcu+0x9/0x10 kernel/softirq.c:682
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1108 [inline]
sysvec_apic_timer_interrupt+0xa9/0xc0 arch/x86/kernel/apic/apic.c:1108
</IRQ>
<TASK>
asm_sysvec_apic_timer_interrupt+0x1b/0x20 arch/x86/include/asm/idtentry.h:676
RIP: 0010:default_idle+0xf/0x20 arch/x86/kernel/process.c:730
Code: 8c 4b ff ff ff 4c 89 f7 e8 3e f4 f3 fc e9 3e ff ff ff 00 00 cc cc 00 00 cc cc 00 55 48 89 e5 66 90 0f 00 2d 83 e0 4f 00 fb f4 <5d> c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 55 48 89 e5 41
RSP: 0018:ffffffff86607d78 EFLAGS: 00000242
RAX: 000000000000358c RBX: ffffffff8661c380 RCX: 000000000000358c
RDX: 0000000000000001 RSI: ffffffff85639420 RDI: ffffffff856393e0
RBP: ffffffff86607d78 R08: ffff8881f7038c33 R09: 1ffff1103ee07186
R10: dffffc0000000000 R11: ffffed103ee07187 R12: 0000000000000000
R13: 1ffffffff0cc3870 R14: dffffc0000000000 R15: dffffc0000000000
arch_cpu_idle+0xa/0x10 arch/x86/kernel/process.c:721
default_idle_call+0x71/0x1d0 kernel/sched/idle.c:112
cpuidle_idle_call kernel/sched/idle.c:202 [inline]
do_idle+0x217/0x620 kernel/sched/idle.c:326
cpu_startup_entry+0x18/0x20 kernel/sched/idle.c:424
rest_init+0x10a/0x130 init/main.c:717
arch_call_rest_init+0xe/0x10 init/main.c:869
start_kernel+0x46d/0x4e0 init/main.c:1117
x86_64_start_reservations+0x2a/0x30 arch/x86/kernel/head64.c:527
x86_64_start_kernel+0x5b/0x60 arch/x86/kernel/head64.c:508
secondary_startup_64_no_verify+0xb1/0xbb
</TASK>
Modules linked in:
---[ end trace 3cb9c2308809c40c ]---
RIP: 0010:saitek_event+0x51/0x2c0 drivers/hid/hid-saitek.c:154
Code: e5 fd 49 83 c6 60 4c 89 f0 48 c1 e8 03 42 80 3c 20 00 74 08 4c 89 f7 e8 8d 79 25 fe 4d 8b 36 49 83 c6 18 4c 89 f0 48 c1 e8 03 <42> 80 3c 20 00 74 08 4c 89 f7 e8 70 79 25 fe 49 8b 06 48 89 45 d0
RSP: 0018:ffffc90000007710 EFLAGS: 00010006
RAX: 0000000000000003 RBX: ffff888106dd1a70 RCX: ffffffff8661c380
RDX: 0000000000000100 RSI: ffff888106dd1a00 RDI: ffff88811f584000
RBP: ffffc90000007740 R08: 0000000000000000 R09: 0000000000000004
R10: dffffc0000000000 R11: fffff52000000e88 R12: dffffc0000000000
R13: 000000000000008d R14: 0000000000000018 R15: ffff88811f584000
FS: 0000000000000000(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f3e7ab3fd58 CR3: 0000000122173000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: e5 fd in $0xfd,%eax
2: 49 83 c6 60 add $0x60,%r14
6: 4c 89 f0 mov %r14,%rax
9: 48 c1 e8 03 shr $0x3,%rax
d: 42 80 3c 20 00 cmpb $0x0,(%rax,%r12,1)
12: 74 08 je 0x1c
14: 4c 89 f7 mov %r14,%rdi
17: e8 8d 79 25 fe call 0xfe2579a9
1c: 4d 8b 36 mov (%r14),%r14
1f: 49 83 c6 18 add $0x18,%r14
23: 4c 89 f0 mov %r14,%rax
26: 48 c1 e8 03 shr $0x3,%rax
* 2a: 42 80 3c 20 00 cmpb $0x0,(%rax,%r12,1) <-- trapping instruction
2f: 74 08 je 0x39
31: 4c 89 f7 mov %r14,%rdi
34: e8 70 79 25 fe call 0xfe2579a9
39: 49 8b 06 mov (%r14),%rax
3c: 48 89 45 d0 mov %rax,-0x30(%rbp)


---
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 syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

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