================================================================================
UBSAN: array-index-out-of-bounds in drivers/input/tablet/aiptek.c:741:31
index 4099 is out of range for type 'const int[34]'
CPU: 1 PID: 8813 Comm: syz.0.757 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/09/2026
Call Trace:
dump_stack_lvl+0x18c/0x250 lib/dump_stack.c:106
ubsan_epilogue+0xa/0x30 lib/ubsan.c:217
__ubsan_handle_out_of_bounds+0xe3/0xf0 lib/ubsan.c:348
aiptek_irq+0x1eb8/0x2920 drivers/input/tablet/aiptek.c:741
__usb_hcd_giveback_urb+0x35d/0x520 drivers/usb/core/hcd.c:1648
dummy_timer+0xa40/0x3420 drivers/usb/gadget/udc/dummy_hcd.c:2003
__run_hrtimer kernel/time/hrtimer.c:1754 [inline]
__hrtimer_run_queues+0x525/0xc10 kernel/time/hrtimer.c:1818
hrtimer_run_softirq+0x177/0x290 kernel/time/hrtimer.c:1835
handle_softirqs+0x27d/0x820 kernel/softirq.c:578
__do_softirq kernel/softirq.c:612 [inline]
invoke_softirq kernel/softirq.c:452 [inline]
__irq_exit_rcu+0xd3/0x190 kernel/softirq.c:661
irq_exit_rcu+0x9/0x20 kernel/softirq.c:673
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1088 [inline]
sysvec_apic_timer_interrupt+0xa4/0xc0 arch/x86/kernel/apic/apic.c:1088
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:lock_acquire+0x208/0x420 kernel/locking/lockdep.c:5758
Code: f7 84 24 80 00 00 00 00 02 00 00 43 c6 44 3c 04 f8 0f 85 f0 00 00 00 41 f7 c6 00 02 00 00 74 01 fb 48 c7 44 24 60 0e 36 e0 45 <4b> c7 04 3c 00 00 00 00 43 c7 44 3c 08 00 00 00 00 65 48 8b 04 25
RSP: 0018:ffffc9000fff7300 EFLAGS: 00000206
RAX: 0000000000000001 RBX: 0000000000000000 RCX: 346020ee0fcce100
RDX: 0000000000000000 RSI: ffffffff8acadce0 RDI: ffffffff8b1c7be0
RBP: ffffc9000fff7410 R08: dffffc0000000000 R09: 1ffffffff22378a0
R10: dffffc0000000000 R11: fffffbfff22378a1 R12: 1ffff92001ffee6c
R13: ffffffff8d131e60 R14: 0000000000000246 R15: dffffc0000000000
rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
rcu_read_lock_sched include/linux/rcupdate.h:878 [inline]
pfn_valid+0xe9/0x420 include/linux/mmzone.h:2011
page_table_check_clear+0x1e/0x6a0 mm/page_table_check.c:70
ptep_get_and_clear_full arch/x86/include/asm/jump_label.h:-1 [inline]
zap_pte_range mm/memory.c:1429 [inline]
zap_pmd_range mm/memory.c:1571 [inline]
zap_pud_range mm/memory.c:1600 [inline]
zap_p4d_range mm/memory.c:1621 [inline]
unmap_page_range+0x1c35/0x32f0 mm/memory.c:1642
unmap_vmas+0x286/0x3f0 mm/memory.c:1732
exit_mmap+0x238/0xb90 mm/mmap.c:3302
__mmput+0x118/0x3a0 kernel/fork.c:1357
exit_mm+0x23f/0x340 kernel/exit.c:570
do_exit+0x909/0x2530 kernel/exit.c:871
do_group_exit+0x22d/0x2f0 kernel/exit.c:1026
get_signal+0x12a6/0x1390 kernel/signal.c:2903
arch_do_signal_or_restart+0xc2/0x7b0 arch/x86/kernel/signal.c:310
exit_to_user_mode_loop+0x70/0x110 kernel/entry/common.c:174
exit_to_user_mode_prepare+0xee/0x180 kernel/entry/common.c:210
__syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
syscall_exit_to_user_mode+0x1a/0x50 kernel/entry/common.c:302
do_syscall_64+0x61/0xb0 arch/x86/entry/common.c:82
entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f04b2b9ce59
Code: Unable to access opcode bytes at 0x7f04b2b9ce2f.
RSP: 002b:00007f04b3974028 EFLAGS: 00000246 ORIG_RAX: 0000000000000102
RAX: 0000000000000000 RBX: 00007f04b2e15fa0 RCX: 00007f04b2b9ce59
RDX: 000000000000010b RSI: 00002000000000c0 RDI: ffffffffffffff9c
RBP: 00007f04b2c32e6f R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f04b2e16038 R14: 00007f04b2e15fa0 R15: 00007ffea5d9b078
================================================================================
----------------
Code disassembly (best guess):
0: f7 84 24 80 00 00 00 testl $0x200,0x80(%rsp)
7: 00 02 00 00
b: 43 c6 44 3c 04 f8 movb $0xf8,0x4(%r12,%r15,1)
11: 0f 85 f0 00 00 00 jne 0x107
17: 41 f7 c6 00 02 00 00 test $0x200,%r14d
1e: 74 01 je 0x21
20: fb sti
21: 48 c7 44 24 60 0e 36 movq $0x45e0360e,0x60(%rsp)
28: e0 45
* 2a: 4b c7 04 3c 00 00 00 movq $0x0,(%r12,%r15,1) <-- trapping instruction
31: 00
32: 43 c7 44 3c 08 00 00 movl $0x0,0x8(%r12,%r15,1)
39: 00 00
3b: 65 gs
3c: 48 rex.W
3d: 8b .byte 0x8b
3e: 04 25 add $0x25,%al