KCSAN: data-race in __perf_event_overflow / perf_event_detach_bpf_prog

Status: upstream: reported on 2026/07/29 21:37
Subsystems: bpf trace
Labels: race:harmful
[Documentation on labels]
Reported-by: syzbot+651d2774bd1d8395595f@syzkaller.appspotmail.com
First crash: 15h29m, last: 15h29m
✨ AI Jobs (1)
ID Workflow Result Correct Bug Created Started Finished Revision Error
69e1b983 assessment-kcsan Benign: ❌ KCSAN: data-race in __perf_event_overflow / perf_event_detach_bpf_prog 2026/07/29 21:10 2026/07/29 21:10 2026/07/29 21:36 2377cd3d

			
		
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [bpf?] [trace?] KCSAN: data-race in __perf_event_overflow / perf_event_detach_bpf_prog 0 (1) 2026/07/29 21:37

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __perf_event_overflow / perf_event_detach_bpf_prog

read-write to 0xffff88811afaeb68 of 8 bytes by task 22274 on cpu 0:
 perf_event_detach_bpf_prog+0x115/0x180 kernel/trace/bpf_trace.c:2021
 perf_event_free_bpf_prog+0x81/0x90 kernel/events/core.c:11766
 bpf_perf_link_release+0x33/0x50 kernel/bpf/syscall.c:3997
 bpf_link_free+0x9d/0x370 kernel/bpf/syscall.c:3395
 bpf_link_put_direct kernel/bpf/syscall.c:3448 [inline]
 bpf_link_release+0x45/0x60 kernel/bpf/syscall.c:3455
 __fput+0x29e/0x630 fs/file_table.c:512
 ____fput+0x1c/0x30 fs/file_table.c:540
 task_work_run+0x130/0x1a0 kernel/task_work.c:233
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 __exit_to_user_mode_loop kernel/entry/common.c:70 [inline]
 exit_to_user_mode_loop+0x1e4/0x8c0 kernel/entry/common.c:101
 __exit_to_user_mode_prepare include/linux/irq-entry-common.h:207 [inline]
 syscall_exit_to_user_mode_prepare include/linux/irq-entry-common.h:230 [inline]
 syscall_exit_to_user_mode include/linux/entry-common.h:318 [inline]
 do_syscall_64+0x23c/0x3c0 arch/x86/entry/syscall_64.c:100
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff88811afaeb68 of 8 bytes by task 22278 on cpu 1:
 __perf_event_overflow+0x230/0x940 kernel/events/core.c:10769
 perf_swevent_overflow kernel/events/core.c:10911 [inline]
 perf_swevent_event+0x3f3/0x4d0 kernel/events/core.c:10972
 perf_tp_event+0x32f/0x1650 kernel/events/core.c:11484
 perf_trace_run_bpf_submit+0xac/0x110 kernel/events/core.c:11403
 do_perf_trace_sched_switch include/trace/events/sched.h:220 [inline]
 perf_trace_sched_switch+0x186/0x1d0 include/trace/events/sched.h:220
 __traceiter_sched_switch+0x3f/0x60 include/trace/events/sched.h:220
 __do_trace_sched_switch include/trace/events/sched.h:220 [inline]
 trace_sched_switch include/trace/events/sched.h:220 [inline]
 __schedule+0xc23/0xd10 kernel/sched/core.c:7231
 __schedule_loop kernel/sched/core.c:7311 [inline]
 schedule+0x5a/0xa0 kernel/sched/core.c:7326
 schedule_timeout+0x53/0x180 kernel/time/sleep_timeout.c:75
 unix_wait_for_peer+0x135/0x1a0 net/unix/af_unix.c:1620
 unix_dgram_sendmsg+0x8c2/0x1030 net/unix/af_unix.c:2256
 sock_sendmsg_nosec net/socket.c:775 [inline]
 __sock_sendmsg net/socket.c:790 [inline]
 ____sys_sendmsg+0x532/0x580 net/socket.c:2684
 ___sys_sendmsg+0x195/0x1e0 net/socket.c:2738
 __sys_sendmmsg+0x185/0x320 net/socket.c:2827
 __do_sys_sendmmsg net/socket.c:2854 [inline]
 __se_sys_sendmmsg net/socket.c:2851 [inline]
 __x64_sys_sendmmsg+0x57/0x70 net/socket.c:2851
 x64_sys_call+0x27aa/0x3020 arch/x86/include/generated/asm/syscalls_64.h:308
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x136/0x3c0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0xffffc90002cb9000 -> 0x0000000000000000

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 22278 Comm: syz.0.4075 Tainted: G        W           syzkaller #0 PREEMPT(lazy) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/16/2026
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/07/29 21:10 upstream fc02acf6ac0c 6ef5c1e2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __perf_event_overflow / perf_event_detach_bpf_prog
* Struck through repros no longer work on HEAD.