------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in drivers/input/tablet/aiptek.c:741:31 index 25756 is out of range for type 'const int[34]' CPU: 1 UID: 0 PID: 350 Comm: udevd Not tainted syzkaller #0 f6ed0fb9bb938319f6518c785cf37c2d863a58c7 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 Call Trace: __dump_stack+0x21/0x30 lib/dump_stack.c:94 dump_stack_lvl+0x140/0x1c0 lib/dump_stack.c:120 dump_stack+0x19/0x20 lib/dump_stack.c:129 ubsan_epilogue+0xe/0x40 lib/ubsan.c:231 __ubsan_handle_out_of_bounds+0xe8/0xf0 lib/ubsan.c:429 aiptek_irq+0x208d/0x2a00 drivers/input/tablet/aiptek.c:741 __usb_hcd_giveback_urb+0x371/0x530 drivers/usb/core/hcd.c:1646 usb_hcd_giveback_urb+0x12b/0x400 drivers/usb/core/hcd.c:1730 dummy_timer+0xa3f/0x4900 drivers/usb/gadget/udc/dummy_hcd.c:2003 __run_hrtimer kernel/time/hrtimer.c:1758 [inline] __hrtimer_run_queues+0x3ae/0x8e0 kernel/time/hrtimer.c:1822 hrtimer_run_softirq+0x159/0x560 kernel/time/hrtimer.c:1839 handle_softirqs+0x1aa/0x620 kernel/softirq.c:621 __do_softirq kernel/softirq.c:659 [inline] invoke_softirq kernel/softirq.c:476 [inline] __irq_exit_rcu+0x47/0xb0 kernel/softirq.c:708 irq_exit_rcu+0xd/0x30 kernel/softirq.c:720 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0x82/0x90 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1f/0x30 arch/x86/include/asm/idtentry.h:702 RIP: 0010:its_return_thunk+0x0/0x10 arch/x86/lib/retpoline.S:401 Code: cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc 90 90 90 90 90 90 90 90 90 90 90 90 90 90 e9 7b d7 61 fb cc RSP: 0018:ffffc9000d1b7960 EFLAGS: 00000293 RAX: ffffffff81e68d7b RBX: ffff88810a3718ac RCX: ffff888132ea2600 RDX: 0000000000000000 RSI: 0000000000004ec1 RDI: 0000000000000000 RBP: ffffc9000d1b79f0 R08: ffff88810a3718af R09: 1ffff1102146e315 R10: dffffc0000000000 R11: ffffed102146e316 R12: 0000000000000001 R13: 0000000000000008 R14: 0000000000004ec9 R15: 0000000000004ec1 reset_page_owner include/linux/page_owner.h:28 [inline] free_pages_prepare mm/page_alloc.c:1391 [inline] free_unref_page+0xb99/0xf50 mm/page_alloc.c:2877 __free_pages+0x6b/0x3b0 mm/page_alloc.c:5403 __free_slab+0xb2/0x110 mm/slub.c:2758 free_slab+0x18/0xe0 mm/slub.c:2781 discard_slab mm/slub.c:2787 [inline] __put_partials+0x115/0x150 mm/slub.c:3256 put_cpu_partial+0x91/0xc0 mm/slub.c:3331 __slab_free+0x1cf/0x2a0 mm/slub.c:4584 do_slab_free mm/slub.c:4666 [inline] ___cache_free+0xc9/0xe0 mm/slub.c:4781 qlink_free mm/kasan/quarantine.c:163 [inline] qlist_free_all+0xb5/0x130 mm/kasan/quarantine.c:179 kasan_quarantine_reduce+0x14f/0x180 mm/kasan/quarantine.c:286 __kasan_slab_alloc+0x28/0x90 mm/kasan/common.c:331 kasan_slab_alloc include/linux/kasan.h:251 [inline] slab_post_alloc_hook mm/slub.c:4202 [inline] slab_alloc_node mm/slub.c:4251 [inline] kmem_cache_alloc_noprof+0x1bf/0x410 mm/slub.c:4260 getname_flags+0xcc/0x6b0 fs/namei.c:139 do_readlinkat+0xcd/0x520 fs/stat.c:536 __do_sys_readlink fs/stat.c:574 [inline] __se_sys_readlink fs/stat.c:571 [inline] __x64_sys_readlink+0x83/0xa0 fs/stat.c:571 x64_sys_call+0x155b/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:90 do_syscall_x64 arch/x86/entry/common.c:47 [inline] do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7fbb00d153a7 Code: 00 00 90 48 83 ec 10 48 63 ff 45 31 c9 45 31 c0 6a 00 31 c9 e8 8a 20 f9 ff 48 83 c4 18 c3 0f 1f 44 00 00 b8 59 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 01 c3 48 8b 15 21 ba 0d 00 f7 d8 64 89 02 48 RSP: 002b:00007ffcdd603938 EFLAGS: 00000246 ORIG_RAX: 0000000000000059 RAX: ffffffffffffffda RBX: 00007ffcdd603e10 RCX: 00007fbb00d153a7 RDX: 0000000000000400 RSI: 00007ffcdd603940 RDI: 00007ffcdd603e10 RBP: 00007ffcdd603940 R08: 000056086c75c620 R09: 0000000000000020 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000400 R13: 00007ffcdd604645 R14: 0000560840894ca4 R15: 0000560840894bcc ---[ end trace ]--- ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in drivers/input/tablet/aiptek.c:763:30 index 25757 is out of range for type 'const int[34]' CPU: 1 UID: 0 PID: 350 Comm: udevd Not tainted syzkaller #0 f6ed0fb9bb938319f6518c785cf37c2d863a58c7 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 Call Trace: __dump_stack+0x21/0x30 lib/dump_stack.c:94 dump_stack_lvl+0x140/0x1c0 lib/dump_stack.c:120 dump_stack+0x19/0x20 lib/dump_stack.c:129 ubsan_epilogue+0xe/0x40 lib/ubsan.c:231 __ubsan_handle_out_of_bounds+0xe8/0xf0 lib/ubsan.c:429 aiptek_irq+0x1f3c/0x2a00 drivers/input/tablet/aiptek.c:763 __usb_hcd_giveback_urb+0x371/0x530 drivers/usb/core/hcd.c:1646 usb_hcd_giveback_urb+0x12b/0x400 drivers/usb/core/hcd.c:1730 dummy_timer+0xa3f/0x4900 drivers/usb/gadget/udc/dummy_hcd.c:2003 __run_hrtimer kernel/time/hrtimer.c:1758 [inline] __hrtimer_run_queues+0x3ae/0x8e0 kernel/time/hrtimer.c:1822 hrtimer_run_softirq+0x159/0x560 kernel/time/hrtimer.c:1839 handle_softirqs+0x1aa/0x620 kernel/softirq.c:621 __do_softirq kernel/softirq.c:659 [inline] invoke_softirq kernel/softirq.c:476 [inline] __irq_exit_rcu+0x47/0xb0 kernel/softirq.c:708 irq_exit_rcu+0xd/0x30 kernel/softirq.c:720 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0x82/0x90 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1f/0x30 arch/x86/include/asm/idtentry.h:702 RIP: 0010:its_return_thunk+0x0/0x10 arch/x86/lib/retpoline.S:401 Code: cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc 90 90 90 90 90 90 90 90 90 90 90 90 90 90 e9 7b d7 61 fb cc RSP: 0018:ffffc9000d1b7960 EFLAGS: 00000293 RAX: ffffffff81e68d7b RBX: ffff88810a3718ac RCX: ffff888132ea2600 RDX: 0000000000000000 RSI: 0000000000004ec1 RDI: 0000000000000000 RBP: ffffc9000d1b79f0 R08: ffff88810a3718af R09: 1ffff1102146e315 R10: dffffc0000000000 R11: ffffed102146e316 R12: 0000000000000001 R13: 0000000000000008 R14: 0000000000004ec9 R15: 0000000000004ec1 reset_page_owner include/linux/page_owner.h:28 [inline] free_pages_prepare mm/page_alloc.c:1391 [inline] free_unref_page+0xb99/0xf50 mm/page_alloc.c:2877 __free_pages+0x6b/0x3b0 mm/page_alloc.c:5403 __free_slab+0xb2/0x110 mm/slub.c:2758 free_slab+0x18/0xe0 mm/slub.c:2781 discard_slab mm/slub.c:2787 [inline] __put_partials+0x115/0x150 mm/slub.c:3256 put_cpu_partial+0x91/0xc0 mm/slub.c:3331 __slab_free+0x1cf/0x2a0 mm/slub.c:4584 do_slab_free mm/slub.c:4666 [inline] ___cache_free+0xc9/0xe0 mm/slub.c:4781 qlink_free mm/kasan/quarantine.c:163 [inline] qlist_free_all+0xb5/0x130 mm/kasan/quarantine.c:179 kasan_quarantine_reduce+0x14f/0x180 mm/kasan/quarantine.c:286 __kasan_slab_alloc+0x28/0x90 mm/kasan/common.c:331 kasan_slab_alloc include/linux/kasan.h:251 [inline] slab_post_alloc_hook mm/slub.c:4202 [inline] slab_alloc_node mm/slub.c:4251 [inline] kmem_cache_alloc_noprof+0x1bf/0x410 mm/slub.c:4260 getname_flags+0xcc/0x6b0 fs/namei.c:139 do_readlinkat+0xcd/0x520 fs/stat.c:536 __do_sys_readlink fs/stat.c:574 [inline] __se_sys_readlink fs/stat.c:571 [inline] __x64_sys_readlink+0x83/0xa0 fs/stat.c:571 x64_sys_call+0x155b/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:90 do_syscall_x64 arch/x86/entry/common.c:47 [inline] do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7fbb00d153a7 Code: 00 00 90 48 83 ec 10 48 63 ff 45 31 c9 45 31 c0 6a 00 31 c9 e8 8a 20 f9 ff 48 83 c4 18 c3 0f 1f 44 00 00 b8 59 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 01 c3 48 8b 15 21 ba 0d 00 f7 d8 64 89 02 48 RSP: 002b:00007ffcdd603938 EFLAGS: 00000246 ORIG_RAX: 0000000000000059 RAX: ffffffffffffffda RBX: 00007ffcdd603e10 RCX: 00007fbb00d153a7 RDX: 0000000000000400 RSI: 00007ffcdd603940 RDI: 00007ffcdd603e10 RBP: 00007ffcdd603940 R08: 000056086c75c620 R09: 0000000000000020 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000400 R13: 00007ffcdd604645 R14: 0000560840894ca4 R15: 0000560840894bcc ---[ end trace ]--- ================================================================== BUG: KASAN: global-out-of-bounds in aiptek_irq+0x1f5a/0x2a00 drivers/input/tablet/aiptek.c:763 Read of size 4 at addr ffffffff8671efd4 by task udevd/350 CPU: 1 UID: 0 PID: 350 Comm: udevd Not tainted syzkaller #0 f6ed0fb9bb938319f6518c785cf37c2d863a58c7 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 Call Trace: __dump_stack+0x21/0x30 lib/dump_stack.c:94 dump_stack_lvl+0x140/0x1c0 lib/dump_stack.c:120 print_address_description+0x71/0x210 mm/kasan/report.c:377 print_report+0x4a/0x70 mm/kasan/report.c:481 kasan_report+0x162/0x1a0 mm/kasan/report.c:594 __asan_report_load4_noabort+0x18/0x20 mm/kasan/report_generic.c:380 aiptek_irq+0x1f5a/0x2a00 drivers/input/tablet/aiptek.c:763 __usb_hcd_giveback_urb+0x371/0x530 drivers/usb/core/hcd.c:1646 usb_hcd_giveback_urb+0x12b/0x400 drivers/usb/core/hcd.c:1730 dummy_timer+0xa3f/0x4900 drivers/usb/gadget/udc/dummy_hcd.c:2003 __run_hrtimer kernel/time/hrtimer.c:1758 [inline] __hrtimer_run_queues+0x3ae/0x8e0 kernel/time/hrtimer.c:1822 hrtimer_run_softirq+0x159/0x560 kernel/time/hrtimer.c:1839 handle_softirqs+0x1aa/0x620 kernel/softirq.c:621 __do_softirq kernel/softirq.c:659 [inline] invoke_softirq kernel/softirq.c:476 [inline] __irq_exit_rcu+0x47/0xb0 kernel/softirq.c:708 irq_exit_rcu+0xd/0x30 kernel/softirq.c:720 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0x82/0x90 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1f/0x30 arch/x86/include/asm/idtentry.h:702 RIP: 0010:its_return_thunk+0x0/0x10 arch/x86/lib/retpoline.S:401 Code: cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc 90 90 90 90 90 90 90 90 90 90 90 90 90 90 e9 7b d7 61 fb cc RSP: 0018:ffffc9000d1b7960 EFLAGS: 00000293 RAX: ffffffff81e68d7b RBX: ffff88810a3718ac RCX: ffff888132ea2600 RDX: 0000000000000000 RSI: 0000000000004ec1 RDI: 0000000000000000 RBP: ffffc9000d1b79f0 R08: ffff88810a3718af R09: 1ffff1102146e315 R10: dffffc0000000000 R11: ffffed102146e316 R12: 0000000000000001 R13: 0000000000000008 R14: 0000000000004ec9 R15: 0000000000004ec1 reset_page_owner include/linux/page_owner.h:28 [inline] free_pages_prepare mm/page_alloc.c:1391 [inline] free_unref_page+0xb99/0xf50 mm/page_alloc.c:2877 __free_pages+0x6b/0x3b0 mm/page_alloc.c:5403 __free_slab+0xb2/0x110 mm/slub.c:2758 free_slab+0x18/0xe0 mm/slub.c:2781 discard_slab mm/slub.c:2787 [inline] __put_partials+0x115/0x150 mm/slub.c:3256 put_cpu_partial+0x91/0xc0 mm/slub.c:3331 __slab_free+0x1cf/0x2a0 mm/slub.c:4584 do_slab_free mm/slub.c:4666 [inline] ___cache_free+0xc9/0xe0 mm/slub.c:4781 qlink_free mm/kasan/quarantine.c:163 [inline] qlist_free_all+0xb5/0x130 mm/kasan/quarantine.c:179 kasan_quarantine_reduce+0x14f/0x180 mm/kasan/quarantine.c:286 __kasan_slab_alloc+0x28/0x90 mm/kasan/common.c:331 kasan_slab_alloc include/linux/kasan.h:251 [inline] slab_post_alloc_hook mm/slub.c:4202 [inline] slab_alloc_node mm/slub.c:4251 [inline] kmem_cache_alloc_noprof+0x1bf/0x410 mm/slub.c:4260 getname_flags+0xcc/0x6b0 fs/namei.c:139 do_readlinkat+0xcd/0x520 fs/stat.c:536 __do_sys_readlink fs/stat.c:574 [inline] __se_sys_readlink fs/stat.c:571 [inline] __x64_sys_readlink+0x83/0xa0 fs/stat.c:571 x64_sys_call+0x155b/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:90 do_syscall_x64 arch/x86/entry/common.c:47 [inline] do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7fbb00d153a7 Code: 00 00 90 48 83 ec 10 48 63 ff 45 31 c9 45 31 c0 6a 00 31 c9 e8 8a 20 f9 ff 48 83 c4 18 c3 0f 1f 44 00 00 b8 59 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 01 c3 48 8b 15 21 ba 0d 00 f7 d8 64 89 02 48 RSP: 002b:00007ffcdd603938 EFLAGS: 00000246 ORIG_RAX: 0000000000000059 RAX: ffffffffffffffda RBX: 00007ffcdd603e10 RCX: 00007fbb00d153a7 RDX: 0000000000000400 RSI: 00007ffcdd603940 RDI: 00007ffcdd603e10 RBP: 00007ffcdd603940 R08: 000056086c75c620 R09: 0000000000000020 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000400 R13: 00007ffcdd604645 R14: 0000560840894ca4 R15: 0000560840894bcc The buggy address belongs to the variable: .str.189+0x14/0x40 The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x671e flags: 0x4000(reserved|zone=0) raw: 0000000000004000 ffffea000019c788 ffffea000019c788 0000000000000000 raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner info is not present (never set?) Memory state around the buggy address: ffffffff8671ee80: 00 00 01 f9 f9 f9 f9 f9 00 00 01 f9 f9 f9 f9 f9 ffffffff8671ef00: 00 00 06 f9 f9 f9 f9 f9 00 00 04 f9 f9 f9 f9 f9 >ffffffff8671ef80: 00 00 04 f9 f9 f9 f9 f9 00 00 06 f9 f9 f9 f9 f9 ^ ffffffff8671f000: 00 00 04 f9 f9 f9 f9 f9 00 00 04 f9 f9 f9 f9 f9 ffffffff8671f080: 00 00 04 f9 f9 f9 f9 f9 00 00 04 f9 f9 f9 f9 f9 ================================================================== aiptek 1-1:0.0: aiptek_irq - usb_submit_urb failed with result -19 ---------------- Code disassembly (best guess): 0: cc int3 1: cc int3 2: cc int3 3: cc int3 4: cc int3 5: cc int3 6: cc int3 7: cc int3 8: cc int3 9: cc int3 a: cc int3 b: cc int3 c: cc int3 d: cc int3 e: cc int3 f: cc int3 10: cc int3 11: cc int3 12: cc int3 13: cc int3 14: cc int3 15: cc int3 16: cc int3 17: cc int3 18: cc int3 19: cc int3 1a: cc int3 1b: cc int3 1c: cc int3 1d: cc int3 1e: cc int3 1f: cc int3 20: cc int3 21: cc int3 22: cc int3 23: cc int3 24: cc int3 25: cc int3 26: cc int3 27: cc int3 28: cc int3 29: cc int3 * 2a: c3 ret <-- trapping instruction 2b: cc int3 2c: 90 nop 2d: 90 nop 2e: 90 nop 2f: 90 nop 30: 90 nop 31: 90 nop 32: 90 nop 33: 90 nop 34: 90 nop 35: 90 nop 36: 90 nop 37: 90 nop 38: 90 nop 39: 90 nop 3a: e9 7b d7 61 fb jmp 0xfb61d7ba 3f: cc int3