syzbot


KCSAN: data-race in perf_event_set_state / perf_event_update_time (4)

Status: moderation: reported on 2025/02/01 05:20
Subsystems: perf
[Documentation on labels]
Reported-by: syzbot+0dbb08866dfc54243101@syzkaller.appspotmail.com
First crash: 4d01h, last: 6h56m
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in perf_event_set_state / perf_event_update_time perf 2 576d 584d 0/28 auto-obsoleted due to no activity on 2023/08/13 16:32
upstream KCSAN: data-race in perf_event_set_state / perf_event_update_time (2) perf 1 378d 378d 0/28 auto-obsoleted due to no activity on 2024/02/27 20:45
upstream KCSAN: data-race in perf_event_set_state / perf_event_update_time (3) perf 2 228d 239d 0/28 auto-obsoleted due to no activity on 2024/07/26 11:54

Sample crash report:
==================================================================
BUG: KCSAN: data-race in perf_event_set_state / perf_event_update_time

read to 0xffff888118a18dd8 of 8 bytes by task 21367 on cpu 1:
 __perf_update_times kernel/events/core.c:660 [inline]
 perf_event_update_time+0x113/0x1b0 kernel/events/core.c:675
 perf_mmap+0xac1/0xef0 kernel/events/core.c:6789
 call_mmap include/linux/fs.h:2233 [inline]
 mmap_file mm/internal.h:124 [inline]
 __mmap_new_file_vma mm/vma.c:2292 [inline]
 __mmap_new_vma mm/vma.c:2356 [inline]
 __mmap_region mm/vma.c:2457 [inline]
 mmap_region+0xc47/0x1620 mm/vma.c:2535
 do_mmap+0x98a/0xc30 mm/mmap.c:561
 vm_mmap_pgoff+0x16d/0x2d0 mm/util.c:575
 ksys_mmap_pgoff+0x286/0x330 mm/mmap.c:607
 x64_sys_call+0x1940/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:10
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

write to 0xffff888118a18dd8 of 8 bytes by task 21370 on cpu 0:
 perf_event_update_time kernel/events/core.c:677 [inline]
 perf_event_set_state+0x1b2/0x3f0 kernel/events/core.c:694
 event_sched_out+0x2c8/0x4a0 kernel/events/core.c:2335
 group_sched_out kernel/events/core.c:2359 [inline]
 __pmu_ctx_sched_out+0x3aa/0x4e0 kernel/events/core.c:3339
 ctx_sched_out+0x267/0x2c0 kernel/events/core.c:3420
 task_ctx_sched_out kernel/events/core.c:2739 [inline]
 perf_event_context_sched_out kernel/events/core.c:3664 [inline]
 __perf_event_task_sched_out+0x438/0x1010 kernel/events/core.c:3763
 perf_event_task_sched_out include/linux/perf_event.h:1561 [inline]
 prepare_task_switch kernel/sched/core.c:5181 [inline]
 context_switch kernel/sched/core.c:5324 [inline]
 __schedule+0x957/0x990 kernel/sched/core.c:6764
 __schedule_loop kernel/sched/core.c:6841 [inline]
 schedule+0x55/0xc0 kernel/sched/core.c:6856
 futex_wait_queue kernel/futex/waitwake.c:369 [inline]
 __futex_wait+0x141/0x290 kernel/futex/waitwake.c:668
 futex_wait+0x99/0x1c0 kernel/futex/waitwake.c:696
 do_futex+0x276/0x370 kernel/futex/syscalls.c:102
 __do_sys_futex kernel/futex/syscalls.c:179 [inline]
 __se_sys_futex+0x25d/0x3a0 kernel/futex/syscalls.c:160
 __x64_sys_futex+0x78/0x90 kernel/futex/syscalls.c:160
 x64_sys_call+0x2d6a/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:203
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x0000000000014798 -> 0x0000000000017657

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 21370 Comm: syz.6.4578 Not tainted 6.14.0-rc1-syzkaller-00026-gd009de7d5428 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/02/04 23:46 upstream d009de7d5428 5896748e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in perf_event_set_state / perf_event_update_time
2025/02/01 05:19 upstream 69b8923f5003 aa47157c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in perf_event_set_state / perf_event_update_time
* Struck through repros no longer work on HEAD.