================================================================== BUG: KASAN: slab-use-after-free in instrument_atomic_read include/linux/instrumented.h:68 [inline] BUG: KASAN: slab-use-after-free in _test_bit include/asm-generic/bitops/instrumented-non-atomic.h:141 [inline] BUG: KASAN: slab-use-after-free in work_is_static_object+0x1a/0x50 kernel/workqueue.c:615 Read of size 8 at addr ffff888103796960 by task kworker/0:2/1071 CPU: 0 UID: 0 PID: 1071 Comm: kworker/0:2 Not tainted 6.14.0-rc1-syzkaller-g2014c95afece #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 Workqueue: events dvb_usb_read_remote_control Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 [inline] print_report+0xc3/0x620 mm/kasan/report.c:489 kasan_report+0xd9/0x110 mm/kasan/report.c:602 check_region_inline mm/kasan/generic.c:183 [inline] kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189 instrument_atomic_read include/linux/instrumented.h:68 [inline] _test_bit include/asm-generic/bitops/instrumented-non-atomic.h:141 [inline] work_is_static_object+0x1a/0x50 kernel/workqueue.c:615 lookup_object_or_alloc.part.0+0x416/0x590 lib/debugobjects.c:679 lookup_object_or_alloc lib/debugobjects.c:665 [inline] debug_object_activate+0x31a/0x4a0 lib/debugobjects.c:820 debug_work_activate kernel/workqueue.c:664 [inline] insert_work+0x2e/0x230 kernel/workqueue.c:2180 __queue_work+0x97e/0x1080 kernel/workqueue.c:2339 call_timer_fn+0x1a0/0x610 kernel/time/timer.c:1789 expire_timers kernel/time/timer.c:1835 [inline] __run_timers+0x56a/0x930 kernel/time/timer.c:2414 __run_timer_base kernel/time/timer.c:2426 [inline] __run_timer_base kernel/time/timer.c:2418 [inline] run_timer_base+0x114/0x190 kernel/time/timer.c:2435 run_timer_softirq+0x1a/0x40 kernel/time/timer.c:2445 handle_softirqs+0x206/0x8d0 kernel/softirq.c:561 __do_softirq kernel/softirq.c:595 [inline] invoke_softirq kernel/softirq.c:435 [inline] __irq_exit_rcu+0xfa/0x160 kernel/softirq.c:662 irq_exit_rcu+0x9/0x30 kernel/softirq.c:678 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0x90/0xb0 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 RIP: 0010:console_trylock_spinning kernel/printk/printk.c:2061 [inline] RIP: 0010:vprintk_emit+0x621/0x6f0 kernel/printk/printk.c:2431 Code: 85 ed 0f 85 81 00 00 00 e8 fc dd 1f 00 9c 41 5c 41 81 e4 00 02 00 00 31 ff 4c 89 e6 e8 18 d9 1f 00 4d 85 e4 0f 85 8d 00 00 00 da dd 1f 00 45 31 c9 41 b8 01 00 00 00 31 c9 48 8d 05 00 00 00 RSP: 0018:ffffc90001fafac8 EFLAGS: 00000293 RAX: 0000000000000000 RBX: 000000000000003e RCX: ffffffff815b510e RDX: ffff88810f7f8000 RSI: ffffffff815b5118 RDI: 0000000000000007 RBP: 1ffff920003f5f5b R08: 0000000000000007 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000002 R12: 0000000000000000 R13: 0000000000000200 R14: ffff88811c7aba80 R15: ffffc90001fafb90 _printk+0xc8/0x100 kernel/printk/printk.c:2457 dvb_usb_read_remote_control+0x174/0x1c0 drivers/media/usb/dvb-usb/dvb-usb-remote.c:263 process_one_work+0x9c5/0x1ba0 kernel/workqueue.c:3236 process_scheduled_works kernel/workqueue.c:3317 [inline] worker_thread+0x6c8/0xf00 kernel/workqueue.c:3398 kthread+0x3af/0x750 kernel/kthread.c:464 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 Allocated by task 18716: kasan_save_stack+0x33/0x60 mm/kasan/common.c:47 kasan_save_track+0x14/0x30 mm/kasan/common.c:68 poison_kmalloc_redzone mm/kasan/common.c:377 [inline] __kasan_kmalloc+0x8f/0xa0 mm/kasan/common.c:394 kasan_kmalloc include/linux/kasan.h:260 [inline] __do_kmalloc_node mm/slub.c:4294 [inline] __kmalloc_node_track_caller_noprof+0x20b/0x4c0 mm/slub.c:4313 alloc_dr drivers/base/devres.c:119 [inline] devm_kmalloc+0xa5/0x260 drivers/base/devres.c:843 devm_kzalloc include/linux/device.h:328 [inline] corsair_void_probe+0x57/0xd70 drivers/hid/hid-corsair-void.c:637 __hid_device_probe drivers/hid/hid-core.c:2713 [inline] hid_device_probe+0x349/0x700 drivers/hid/hid-core.c:2750 call_driver_probe drivers/base/dd.c:579 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:658 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:800 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:830 __device_attach_driver+0x1df/0x310 drivers/base/dd.c:958 bus_for_each_drv+0x157/0x1e0 drivers/base/bus.c:462 __device_attach+0x1e8/0x4b0 drivers/base/dd.c:1030 bus_probe_device+0x17f/0x1c0 drivers/base/bus.c:537 device_add+0x114b/0x1a70 drivers/base/core.c:3665 hid_add_device+0x374/0xa60 drivers/hid/hid-core.c:2896 usbhid_probe+0xd32/0x1400 drivers/hid/usbhid/hid-core.c:1431 usb_probe_interface+0x300/0x9c0 drivers/usb/core/driver.c:396 call_driver_probe drivers/base/dd.c:579 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:658 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:800 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:830 __device_attach_driver+0x1df/0x310 drivers/base/dd.c:958 bus_for_each_drv+0x157/0x1e0 drivers/base/bus.c:462 __device_attach+0x1e8/0x4b0 drivers/base/dd.c:1030 bus_probe_device+0x17f/0x1c0 drivers/base/bus.c:537 device_add+0x114b/0x1a70 drivers/base/core.c:3665 usb_set_configuration+0x10cb/0x1c50 drivers/usb/core/message.c:2210 usb_generic_driver_probe+0xb1/0x110 drivers/usb/core/generic.c:250 usb_probe_device+0xec/0x3e0 drivers/usb/core/driver.c:291 call_driver_probe drivers/base/dd.c:579 [inline] really_probe+0x23e/0xa90 drivers/base/dd.c:658 __driver_probe_device+0x1de/0x440 drivers/base/dd.c:800 driver_probe_device+0x4c/0x1b0 drivers/base/dd.c:830 __device_attach_driver+0x1df/0x310 drivers/base/dd.c:958 bus_for_each_drv+0x157/0x1e0 drivers/base/bus.c:462 __device_attach+0x1e8/0x4b0 drivers/base/dd.c:1030 bus_probe_device+0x17f/0x1c0 drivers/base/bus.c:537 device_add+0x114b/0x1a70 drivers/base/core.c:3665 usb_new_device+0xd09/0x1a20 drivers/usb/core/hub.c:2652 hub_port_connect drivers/usb/core/hub.c:5523 [inline] hub_port_connect_change drivers/usb/core/hub.c:5663 [inline] port_event drivers/usb/core/hub.c:5823 [inline] hub_event+0x2e58/0x4f40 drivers/usb/core/hub.c:5905 process_one_work+0x9c5/0x1ba0 kernel/workqueue.c:3236 process_scheduled_works kernel/workqueue.c:3317 [inline] worker_thread+0x6c8/0xf00 kernel/workqueue.c:3398 kthread+0x3af/0x750 kernel/kthread.c:464 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 Freed by task 36: kasan_save_stack+0x33/0x60 mm/kasan/common.c:47 kasan_save_track+0x14/0x30 mm/kasan/common.c:68 kasan_save_free_info+0x3b/0x60 mm/kasan/generic.c:576 poison_slab_object mm/kasan/common.c:247 [inline] __kasan_slab_free+0x37/0x50 mm/kasan/common.c:264 kasan_slab_free include/linux/kasan.h:233 [inline] slab_free_hook mm/slub.c:2353 [inline] slab_free mm/slub.c:4609 [inline] kfree+0x294/0x480 mm/slub.c:4757 release_nodes+0x11e/0x240 drivers/base/devres.c:506 devres_release_group+0x1be/0x2a0 drivers/base/devres.c:689 hid_device_remove+0x107/0x260 drivers/hid/hid-core.c:2774 device_remove+0xc8/0x170 drivers/base/dd.c:567 __device_release_driver drivers/base/dd.c:1273 [inline] device_release_driver_internal+0x44a/0x610 drivers/base/dd.c:1296 bus_remove_device+0x22f/0x420 drivers/base/bus.c:579 device_del+0x396/0x9f0 drivers/base/core.c:3854 hid_remove_device drivers/hid/hid-core.c:2953 [inline] hid_destroy_device+0x19c/0x240 drivers/hid/hid-core.c:2975 usbhid_disconnect+0xa0/0xe0 drivers/hid/usbhid/hid-core.c:1458 usb_unbind_interface+0x1e2/0x960 drivers/usb/core/driver.c:458 device_remove drivers/base/dd.c:569 [inline] device_remove+0x122/0x170 drivers/base/dd.c:561 __device_release_driver drivers/base/dd.c:1273 [inline] device_release_driver_internal+0x44a/0x610 drivers/base/dd.c:1296 bus_remove_device+0x22f/0x420 drivers/base/bus.c:579 device_del+0x396/0x9f0 drivers/base/core.c:3854 usb_disable_device+0x36c/0x7f0 drivers/usb/core/message.c:1418 usb_disconnect+0x2e1/0x920 drivers/usb/core/hub.c:2305 hub_port_connect drivers/usb/core/hub.c:5363 [inline] hub_port_connect_change drivers/usb/core/hub.c:5663 [inline] port_event drivers/usb/core/hub.c:5823 [inline] hub_event+0x1bed/0x4f40 drivers/usb/core/hub.c:5905 process_one_work+0x9c5/0x1ba0 kernel/workqueue.c:3236 process_scheduled_works kernel/workqueue.c:3317 [inline] worker_thread+0x6c8/0xf00 kernel/workqueue.c:3398 kthread+0x3af/0x750 kernel/kthread.c:464 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 Last potentially related work creation: kasan_save_stack+0x33/0x60 mm/kasan/common.c:47 kasan_record_aux_stack+0x9b/0xb0 mm/kasan/generic.c:548 insert_work+0x36/0x230 kernel/workqueue.c:2183 __queue_work+0x97e/0x1080 kernel/workqueue.c:2339 call_timer_fn+0x1a0/0x610 kernel/time/timer.c:1789 expire_timers kernel/time/timer.c:1835 [inline] __run_timers+0x56a/0x930 kernel/time/timer.c:2414 __run_timer_base kernel/time/timer.c:2426 [inline] __run_timer_base kernel/time/timer.c:2418 [inline] run_timer_base+0x114/0x190 kernel/time/timer.c:2435 run_timer_softirq+0x1a/0x40 kernel/time/timer.c:2445 handle_softirqs+0x206/0x8d0 kernel/softirq.c:561 __do_softirq kernel/softirq.c:595 [inline] invoke_softirq kernel/softirq.c:435 [inline] __irq_exit_rcu+0xfa/0x160 kernel/softirq.c:662 irq_exit_rcu+0x9/0x30 kernel/softirq.c:678 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0x90/0xb0 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 The buggy address belongs to the object at ffff888103796800 which belongs to the cache kmalloc-1k of size 1024 The buggy address is located 352 bytes inside of freed 1024-byte region [ffff888103796800, ffff888103796c00) The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x103790 head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 anon flags: 0x200000000000040(head|node=0|zone=2) page_type: f5(slab) raw: 0200000000000040 ffff888100041dc0 0000000000000000 dead000000000001 raw: 0000000000000000 0000000080100010 00000000f5000000 0000000000000000 head: 0200000000000040 ffff888100041dc0 0000000000000000 dead000000000001 head: 0000000000000000 0000000080100010 00000000f5000000 0000000000000000 head: 0200000000000003 ffffea00040de401 ffffffffffffffff 0000000000000000 head: 0000000000000008 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 3, migratetype Unmovable, gfp_mask 0x252800(GFP_NOWAIT|__GFP_NORETRY|__GFP_COMP|__GFP_THISNODE), pid 1, tgid 1 (swapper/0), ts 7003665748, free_ts 0 set_page_owner include/linux/page_owner.h:32 [inline] post_alloc_hook+0x181/0x1b0 mm/page_alloc.c:1551 prep_new_page mm/page_alloc.c:1559 [inline] get_page_from_freelist+0xe76/0x2b90 mm/page_alloc.c:3477 __alloc_frozen_pages_noprof+0x21c/0x2290 mm/page_alloc.c:4739 alloc_slab_page mm/slub.c:2425 [inline] allocate_slab mm/slub.c:2587 [inline] new_slab+0x94/0x330 mm/slub.c:2640 ___slab_alloc+0xc41/0x1670 mm/slub.c:3826 __slab_alloc.constprop.0+0x56/0xb0 mm/slub.c:3916 __slab_alloc_node mm/slub.c:3991 [inline] slab_alloc_node mm/slub.c:4152 [inline] __kmalloc_cache_node_noprof+0x21b/0x3f0 mm/slub.c:4333 kmalloc_node_noprof include/linux/slab.h:924 [inline] alloc_desc+0x5e/0x930 kernel/irq/irqdesc.c:474 alloc_descs kernel/irq/irqdesc.c:561 [inline] __irq_alloc_descs+0x373/0x5f0 kernel/irq/irqdesc.c:885 irq_domain_alloc_descs.part.0+0xb4/0xc0 kernel/irq/irqdomain.c:1231 irq_domain_alloc_descs kernel/irq/irqdomain.c:1647 [inline] irq_domain_alloc_irqs_locked+0x51f/0xa60 kernel/irq/irqdomain.c:1613 __irq_domain_alloc_irqs+0x87/0x120 kernel/irq/irqdomain.c:1685 __msi_domain_alloc_irqs+0x5e9/0xf50 kernel/irq/msi.c:1266 __msi_domain_alloc_locked+0x396/0x4b0 kernel/irq/msi.c:1323 msi_domain_alloc_locked kernel/irq/msi.c:1328 [inline] msi_domain_alloc_irqs_all_locked+0xf9/0x190 kernel/irq/msi.c:1407 pci_msi_setup_msi_irqs+0xaf/0xe0 drivers/pci/msi/irqdomain.c:17 page_owner free stack trace missing Memory state around the buggy address: ffff888103796800: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff888103796880: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff888103796900: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff888103796980: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff888103796a00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ================================================================== ---------------- Code disassembly (best guess): 0: 85 ed test %ebp,%ebp 2: 0f 85 81 00 00 00 jne 0x89 8: e8 fc dd 1f 00 call 0x1fde09 d: 9c pushf e: 41 5c pop %r12 10: 41 81 e4 00 02 00 00 and $0x200,%r12d 17: 31 ff xor %edi,%edi 19: 4c 89 e6 mov %r12,%rsi 1c: e8 18 d9 1f 00 call 0x1fd939 21: 4d 85 e4 test %r12,%r12 24: 0f 85 8d 00 00 00 jne 0xb7 * 2a: e8 da dd 1f 00 call 0x1fde09 <-- trapping instruction 2f: 45 31 c9 xor %r9d,%r9d 32: 41 b8 01 00 00 00 mov $0x1,%r8d 38: 31 c9 xor %ecx,%ecx 3a: 48 rex.W 3b: 8d .byte 0x8d 3c: 05 .byte 0x5 3d: 00 00 add %al,(%rax)