================================================================== BUG: KASAN: use-after-free in mcp2221_raw_event+0x10b0/0x12a0 drivers/hid/hid-mcp2221.c:964 Read of size 1 at addr ffff888041f43fff by task ktimers/1/30 CPU: 1 UID: 0 PID: 30 Comm: ktimers/1 Not tainted syzkaller #0 PREEMPT_{RT,(full)} Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/25/2026 Call Trace: dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120 print_address_description+0x55/0x1e0 mm/kasan/report.c:378 print_report+0x58/0x70 mm/kasan/report.c:482 kasan_report+0x117/0x150 mm/kasan/report.c:595 mcp2221_raw_event+0x10b0/0x12a0 drivers/hid/hid-mcp2221.c:964 __hid_input_report+0x421/0x580 drivers/hid/hid-core.c:2168 hid_irq_in+0x492/0x710 drivers/hid/usbhid/hid-core.c:287 __usb_hcd_giveback_urb+0x3b8/0x5f0 drivers/usb/core/hcd.c:1657 dummy_timer+0xab9/0x4b30 drivers/usb/gadget/udc/dummy_hcd.c:2005 __run_hrtimer kernel/time/hrtimer.c:2065 [inline] __hrtimer_run_queues+0x3eb/0xaf0 kernel/time/hrtimer.c:2122 hrtimer_run_softirq+0x18f/0x260 kernel/time/hrtimer.c:2139 handle_softirqs+0x1d9/0x6c0 kernel/softirq.c:626 __do_softirq kernel/softirq.c:660 [inline] run_ktimerd+0x69/0x100 kernel/softirq.c:1155 smpboot_thread_fn+0x57c/0xa80 kernel/smpboot.c:160 kthread+0x388/0x470 kernel/kthread.c:436 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x3fae pfn:0x41f43 flags: 0x80000000000000(node=0|zone=1) raw: 0080000000000000 dead000000000100 dead000000000122 0000000000000000 raw: 0000000000003fae 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as freed page last allocated via order 0, migratetype Unmovable, gfp_mask 0xcc0(GFP_KERNEL), pid 2, tgid 2 (kthreadd), ts 156814144331 set_page_owner include/linux/page_owner.h:33 [inline] post_alloc_hook+0x1f9/0x250 mm/page_alloc.c:1871 prep_new_page mm/page_alloc.c:1879 [inline] get_page_from_freelist+0x264c/0x26c0 mm/page_alloc.c:3955 __alloc_frozen_pages_noprof+0x222/0x5b0 mm/page_alloc.c:5394 __alloc_pages_noprof+0x10/0x100 mm/page_alloc.c:5429 alloc_pages_bulk_noprof+0x681/0x890 mm/page_alloc.c:5253 ___alloc_pages_bulk mm/kasan/shadow.c:345 [inline] __kasan_populate_vmalloc_do mm/kasan/shadow.c:370 [inline] __kasan_populate_vmalloc+0xb7/0x1c0 mm/kasan/shadow.c:424 kasan_populate_vmalloc include/linux/kasan.h:580 [inline] alloc_vmap_area+0xd1a/0x1420 mm/vmalloc.c:2176 __get_vm_area_node+0x1f2/0x300 mm/vmalloc.c:3279 __vmalloc_node_range_noprof+0x34e/0x1560 mm/vmalloc.c:4211 __vmalloc_node_noprof+0xc2/0x100 mm/vmalloc.c:4312 alloc_thread_stack_node kernel/fork.c:359 [inline] dup_task_struct+0x2a0/0x8e0 kernel/fork.c:929 copy_process+0x820/0x43f0 kernel/fork.c:2132 kernel_clone+0x2d7/0x940 kernel/fork.c:2765 kernel_thread+0x13f/0x1b0 kernel/fork.c:2826 create_kthread kernel/kthread.c:459 [inline] kthreadd+0x4ec/0x6e0 kernel/kthread.c:817 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158 page last free pid 5323 tgid 5323 ts 181367151880 stack trace: reset_page_owner include/linux/page_owner.h:26 [inline] __free_pages_prepare mm/page_alloc.c:1418 [inline] __free_frozen_pages+0x1185/0x1270 mm/page_alloc.c:2962 kasan_depopulate_vmalloc_pte+0x6d/0x90 mm/kasan/shadow.c:484 apply_to_pte_range mm/memory.c:3415 [inline] apply_to_pmd_range mm/memory.c:3459 [inline] apply_to_pud_range mm/memory.c:3495 [inline] apply_to_p4d_range mm/memory.c:3531 [inline] __apply_to_page_range+0xbd8/0x1420 mm/memory.c:3567 __kasan_release_vmalloc+0xa2/0xd0 mm/kasan/shadow.c:602 kasan_release_vmalloc include/linux/kasan.h:593 [inline] kasan_release_vmalloc_node mm/vmalloc.c:2337 [inline] purge_vmap_node+0x220/0x960 mm/vmalloc.c:2359 __purge_vmap_area_lazy+0x783/0xb40 mm/vmalloc.c:2449 drain_vmap_area_work+0x27/0x40 mm/vmalloc.c:2483 process_one_work+0xaaf/0x1480 kernel/workqueue.c:3379 process_scheduled_works kernel/workqueue.c:3462 [inline] worker_thread+0xb05/0x10d0 kernel/workqueue.c:3543 kthread+0x388/0x470 kernel/kthread.c:436 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 Memory state around the buggy address: ffff888041f43e80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff888041f43f00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >ffff888041f43f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ^ ffff888041f44000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff888041f44080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ==================================================================