KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek

Status: upstream: reported on 2026/08/09 05:29
Subsystems: trace
Labels: prio:low race:harmful
[Documentation on labels]
Reported-by: syzbot+b57601b220ccc4fa1551@syzkaller.appspotmail.com
First crash: 3d23h, last: 1d22h
✨ AI Jobs (2)
ID Workflow Result Correct Bug Created Started Finished Revision
e3fa6599 assessment-security DenialOfService: ❌ Exploitable: ❌ FilesystemTrigger: ❌ NetworkTrigger: ❌ PeripheralTrigger: ❌ RemoteTrigger: ❌ Unprivileged: ❌ UserNamespace: ❌ VMGuestTrigger: ❌ VMHostTrigger: ❌ KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek 2026/08/09 04:55 2026/08/09 04:55 2026/08/09 05:13 5d63f80b
e0dd956f assessment-kcsan Benign: ❌ KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek 2026/08/09 04:45 2026/08/09 04:45 2026/08/09 05:29 5d63f80b
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [trace?] KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek 0 (1) 2026/08/09 05:29

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek

write to 0xffff88812028c000 of 8 bytes by task 5665 on cpu 0:
 __rb_reserve_next+0x5f1/0x6c0 kernel/trace/ring_buffer.c:4851
 rb_reserve_next_event kernel/trace/ring_buffer.c:4925 [inline]
 ring_buffer_lock_reserve+0x68c/0x830 kernel/trace/ring_buffer.c:4984
 __trace_buffer_lock_reserve kernel/trace/trace.h:1676 [inline]
 trace_event_buffer_lock_reserve+0x148/0x300 kernel/trace/trace.c:1924
 trace_event_buffer_reserve+0x120/0x180 kernel/trace/trace_events.c:688
 do_trace_event_raw_event_kmem_cache_alloc include/trace/events/kmem.h:12 [inline]
 trace_event_raw_event_kmem_cache_alloc+0xb5/0x190 include/trace/events/kmem.h:12
 __do_trace_kmem_cache_alloc include/trace/events/kmem.h:12 [inline]
 trace_kmem_cache_alloc include/trace/events/kmem.h:12 [inline]
 kmem_cache_alloc_node_noprof+0x365/0x3d0 mm/slub.c:4991
 __alloc_skb+0x2db/0x6f0 net/core/skbuff.c:704
 alloc_skb include/linux/skbuff.h:1384 [inline]
 nlmsg_new include/net/netlink.h:1055 [inline]
 audit_buffer_alloc kernel/audit.c:1846 [inline]
 audit_log_start+0x3aa/0x730 kernel/audit.c:1965
 common_lsm_audit+0x65/0x230 security/lsm_audit.c:442
 slow_avc_audit+0x14c/0x190 security/selinux/avc.c:779
 audit_inode_permission+0x119/0x160 security/selinux/hooks.c:3149
 selinux_inode_permission+0x66e/0x740 security/selinux/hooks.c:3291
 security_inode_permission+0x69/0xa0 security/security.c:1842
 inode_permission+0x1da/0x3b0 fs/namei.c:661
 may_o_create+0x136/0x1c0 fs/namei.c:4331
 lookup_open fs/namei.c:4464 [inline]
 open_last_lookups fs/namei.c:4608 [inline]
 path_openat+0xaab/0x2000 fs/namei.c:4860
 do_file_open+0x16c/0x290 fs/namei.c:4892
 do_sys_openat2+0xa0/0x130 fs/open.c:1368
 do_sys_open fs/open.c:1374 [inline]
 __do_sys_openat fs/open.c:1390 [inline]
 __se_sys_openat fs/open.c:1385 [inline]
 __x64_sys_openat+0xf2/0x120 fs/open.c:1385
 x64_sys_call+0x1e39/0x3020 arch/x86/include/generated/asm/syscalls_64.h:258
 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

read to 0xffff88812028c000 of 8 bytes by task 4841 on cpu 1:
 ring_buffer_iter_empty kernel/trace/ring_buffer.c:5647 [inline]
 rb_iter_peek kernel/trace/ring_buffer.c:6143 [inline]
 ring_buffer_iter_peek+0x265/0xb10 kernel/trace/ring_buffer.c:6305
 peek_next_entry kernel/trace/trace.c:2349 [inline]
 __find_next_entry+0x1a9/0x420 kernel/trace/trace.c:2398
 trace_find_next_entry_inc kernel/trace/trace.c:2672 [inline]
 s_next+0x10e/0x370 kernel/trace/trace.c:2711
 traverse+0x1c1/0x3b0 fs/seq_file.c:121
 seq_read_iter+0x7dc/0x8f0 fs/seq_file.c:196
 do_iter_readv_writev+0x4f6/0x5a0 fs/read_write.c:-1
 vfs_readv+0x1e8/0x6d0 fs/read_write.c:1019
 do_preadv fs/read_write.c:1133 [inline]
 __do_sys_preadv2 fs/read_write.c:1192 [inline]
 __se_sys_preadv2+0xfc/0x1c0 fs/read_write.c:1183
 __x64_sys_preadv2+0x67/0x80 fs/read_write.c:1183
 x64_sys_call+0x2b3b/0x3020 arch/x86/include/generated/asm/syscalls_64.h:328
 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: 0x0000001bcf669c7a -> 0x0000001be880eaa0

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

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/09 19:10 upstream 06cf61899d64 5d63f80b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek
2026/08/07 18:17 upstream f9a2394a2348 e4ef95d6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek
* Struck through repros no longer work on HEAD.