================================================================== BUG: KCSAN: data-race in wq_worker_tick / wq_worker_tick read-write to 0xffff8881008a1eb8 of 8 bytes by interrupt on cpu 1: wq_worker_tick+0x60/0x230 kernel/workqueue.c:1474 sched_tick+0xd7/0x220 kernel/sched/core.c:5546 update_process_times+0x15f/0x190 kernel/time/timer.c:2479 tick_sched_handle kernel/time/tick-sched.c:298 [inline] tick_nohz_handler+0x276/0x3d0 kernel/time/tick-sched.c:319 __run_hrtimer kernel/time/hrtimer.c:1777 [inline] __hrtimer_run_queues+0x20f/0x5a0 kernel/time/hrtimer.c:1841 hrtimer_interrupt+0x21a/0x460 kernel/time/hrtimer.c:1903 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1045 [inline] __sysvec_apic_timer_interrupt+0x5f/0x1d0 arch/x86/kernel/apic/apic.c:1062 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1056 [inline] sysvec_apic_timer_interrupt+0x6f/0x80 arch/x86/kernel/apic/apic.c:1056 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697 __update_freelist_fast mm/slub.c:767 [inline] slab_update_freelist+0x4a/0xe0 mm/slub.c:832 __slab_free+0x104/0x2a0 mm/slub.c:5937 do_slab_free mm/slub.c:6618 [inline] slab_free mm/slub.c:6680 [inline] kfree+0x2d8/0x3c0 mm/slub.c:6878 io_alloc_cache_free+0xc0/0xe0 io_uring/alloc_cache.c:16 io_rsrc_cache_free+0x36/0x40 io_uring/rsrc.c:186 io_free_alloc_caches+0x65/0x70 io_uring/io_uring.c:281 io_ring_ctx_free+0x7a/0x3d0 io_uring/io_uring.c:2852 io_ring_exit_work+0x506/0x530 io_uring/io_uring.c:3081 process_one_work kernel/workqueue.c:3257 [inline] process_scheduled_works+0x4ce/0x9d0 kernel/workqueue.c:3340 worker_thread+0x582/0x770 kernel/workqueue.c:3421 kthread+0x489/0x510 kernel/kthread.c:463 ret_from_fork+0x149/0x290 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:246 read-write to 0xffff8881008a1eb8 of 8 bytes by interrupt on cpu 0: wq_worker_tick+0x60/0x230 kernel/workqueue.c:1474 sched_tick+0xd7/0x220 kernel/sched/core.c:5546 update_process_times+0x15f/0x190 kernel/time/timer.c:2479 tick_sched_handle kernel/time/tick-sched.c:298 [inline] tick_nohz_handler+0x276/0x3d0 kernel/time/tick-sched.c:319 __run_hrtimer kernel/time/hrtimer.c:1777 [inline] __hrtimer_run_queues+0x20f/0x5a0 kernel/time/hrtimer.c:1841 hrtimer_interrupt+0x21a/0x460 kernel/time/hrtimer.c:1903 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1045 [inline] __sysvec_apic_timer_interrupt+0x5f/0x1d0 arch/x86/kernel/apic/apic.c:1062 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1056 [inline] sysvec_apic_timer_interrupt+0x6f/0x80 arch/x86/kernel/apic/apic.c:1056 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697 unwind_done arch/x86/include/asm/unwind.h:50 [inline] unwind_get_return_address+0x7/0x40 arch/x86/kernel/unwind_orc.c:382 perf_callchain_kernel+0x180/0x350 arch/x86/events/core.c:2814 get_perf_callchain+0x2bc/0x640 kernel/events/callchain.c:244 ____bpf_get_stackid kernel/bpf/stackmap.c:337 [inline] bpf_get_stackid+0xd3/0x130 kernel/bpf/stackmap.c:323 ____bpf_get_stackid_raw_tp kernel/trace/bpf_trace.c:1628 [inline] bpf_get_stackid_raw_tp+0xf6/0x120 kernel/trace/bpf_trace.c:1617 bpf_prog_0269d7a1bf76b886+0x27/0x2f bpf_dispatcher_nop_func include/linux/bpf.h:1378 [inline] __bpf_prog_run include/linux/filter.h:723 [inline] bpf_prog_run include/linux/filter.h:730 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2075 [inline] bpf_trace_run2+0x107/0x1d0 kernel/trace/bpf_trace.c:2116 __traceiter_kfree+0x2e/0x50 include/trace/events/kmem.h:97 __do_trace_kfree include/trace/events/kmem.h:97 [inline] trace_kfree include/trace/events/kmem.h:97 [inline] kfree+0x353/0x3c0 mm/slub.c:6865 io_free_region+0xa3/0x150 io_uring/memmap.c:104 io_rings_free io_uring/io_uring.c:2760 [inline] io_ring_ctx_free+0x202/0x3d0 io_uring/io_uring.c:2867 io_ring_exit_work+0x506/0x530 io_uring/io_uring.c:3081 process_one_work kernel/workqueue.c:3257 [inline] process_scheduled_works+0x4ce/0x9d0 kernel/workqueue.c:3340 worker_thread+0x582/0x770 kernel/workqueue.c:3421 kthread+0x489/0x510 kernel/kthread.c:463 ret_from_fork+0x149/0x290 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:246 value changed: 0x0000000000541370 -> 0x0000000000543a80 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 411 Comm: kworker/u8:7 Tainted: G W syzkaller #0 PREEMPT(voluntary) Tainted: [W]=WARN Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025 Workqueue: iou_exit io_ring_exit_work ==================================================================