================================================================== BUG: KCSAN: data-race in do_select / pollwake write to 0xffffc900034c79d0 of 4 bytes by interrupt on cpu 1: __pollwake fs/select.c:195 [inline] pollwake+0xc1/0x110 fs/select.c:215 __wake_up_common kernel/sched/wait.c:89 [inline] __wake_up_common_lock kernel/sched/wait.c:106 [inline] __wake_up+0x65/0xb0 kernel/sched/wait.c:127 bpf_ringbuf_notify+0x22/0x30 kernel/bpf/ringbuf.c:155 irq_work_single kernel/irq_work.c:221 [inline] irq_work_run_list kernel/irq_work.c:252 [inline] irq_work_run+0xe1/0x2d0 kernel/irq_work.c:261 __sysvec_irq_work+0x23/0x1a0 arch/x86/kernel/irq_work.c:22 instr_sysvec_irq_work arch/x86/kernel/irq_work.c:17 [inline] sysvec_irq_work+0x66/0x80 arch/x86/kernel/irq_work.c:17 asm_sysvec_irq_work+0x1a/0x20 arch/x86/include/asm/idtentry.h:738 native_apic_mem_write arch/x86/include/asm/apic.h:101 [inline] __default_send_IPI_shortcut arch/x86/kernel/apic/ipi.c:167 [inline] default_send_IPI_self+0x38/0x80 arch/x86/kernel/apic/ipi.c:248 __apic_send_IPI_self arch/x86/include/asm/apic.h:455 [inline] arch_irq_work_raise+0x48/0x50 arch/x86/kernel/irq_work.c:31 irq_work_raise kernel/irq_work.c:84 [inline] __irq_work_queue_local+0x82/0x1d0 kernel/irq_work.c:112 irq_work_queue+0x85/0x120 kernel/irq_work.c:124 bpf_ringbuf_commit kernel/bpf/ringbuf.c:-1 [inline] ____bpf_ringbuf_discard kernel/bpf/ringbuf.c:525 [inline] bpf_ringbuf_discard+0xcd/0xf0 kernel/bpf/ringbuf.c:523 bpf_prog_fe0ed97373b08409+0x47/0x4b bpf_dispatcher_nop_func include/linux/bpf.h:1316 [inline] __bpf_prog_run include/linux/filter.h:718 [inline] bpf_prog_run include/linux/filter.h:725 [inline] __bpf_trace_run kernel/trace/bpf_trace.c:2363 [inline] bpf_trace_run3+0x10e/0x1d0 kernel/trace/bpf_trace.c:2405 __do_trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] trace_kmem_cache_free include/trace/events/kmem.h:114 [inline] kmem_cache_free+0x243/0x2e0 mm/slub.c:4757 __d_free fs/dcache.c:336 [inline] dentry_free fs/dcache.c:431 [inline] __dentry_kill+0x3d0/0x4c0 fs/dcache.c:679 dput+0x5c/0xd0 fs/dcache.c:902 __fput+0x428/0x640 fs/file_table.c:473 ____fput+0x1c/0x30 fs/file_table.c:493 task_work_run+0x13c/0x1b0 kernel/task_work.c:227 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline] exit_to_user_mode_loop kernel/entry/common.c:114 [inline] exit_to_user_mode_prepare include/linux/entry-common.h:329 [inline] __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline] syscall_exit_to_user_mode+0xa8/0x120 kernel/entry/common.c:218 do_syscall_64+0xd6/0x1a0 arch/x86/entry/syscall_64.c:100 entry_SYSCALL_64_after_hwframe+0x77/0x7f read to 0xffffc900034c79d0 of 4 bytes by task 12647 on cpu 0: poll_schedule_timeout fs/select.c:240 [inline] do_select+0xeba/0xfc0 fs/select.c:603 core_sys_select+0x4c3/0x6d0 fs/select.c:677 do_pselect fs/select.c:759 [inline] __do_sys_pselect6 fs/select.c:802 [inline] __se_sys_pselect6+0x212/0x270 fs/select.c:793 __x64_sys_pselect6+0x78/0x90 fs/select.c:793 x64_sys_call+0x1c26/0x2e10 arch/x86/include/generated/asm/syscalls_64.h:271 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xc9/0x1a0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f value changed: 0x00000000 -> 0x00000001 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 12647 Comm: syz.7.3512 Tainted: G W 6.15.0-rc3-syzkaller-00032-ga79be02bba5c #0 PREEMPT(voluntary) Tainted: [W]=WARN Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 ==================================================================