[syzbot] [trace?] KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek

syzbot <[email protected]>
Newsgroups org.kernel.vger.linux-trace-kernel,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Hello,

syzbot found the following issue on:

HEAD commit:    f9a2394a2348 Merge tag 'mm-hotfixes-stable-2026-08-06-18-4..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=14ba2132580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=84b3039e8461eef5
dashboard link: https://syzkaller.appspot.com/bug?extid=b57601b220ccc4fa1551
compiler:       Debian clang version 22.1.8 (++20260613092233+e80beda6e255-1~exp1~20260613092250.77), Debian LLD 22.1.8

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/82bd4b0b2828/disk-f9a2394a.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/ab3cb0b1997d/vmlinux-f9a2394a.xz
kernel image: https://storage.googleapis.com/syzbot-assets/b0a8ddb2683a/bzImage-f9a2394a.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: [email protected]

==================================================================
BUG: KCSAN: data-race in __rb_reserve_next / ring_buffer_iter_peek

write to 0xffff8881331f4000 of 8 bytes by task 12741 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_free include/trace/events/kmem.h:117 [inline]
 trace_event_raw_event_kmem_cache_free+0xa4/0x140 include/trace/events/kmem.h:117
 __do_trace_kmem_cache_free include/trace/events/kmem.h:117 [inline]
 trace_kmem_cache_free include/trace/events/kmem.h:117 [inline]
 kmem_cache_free+0x31d/0x380 mm/slub.c:6503
 anon_vma_chain_free mm/rmap.c:147 [inline]
 unlink_anon_vmas+0x1b8/0x360 mm/rmap.c:514
 free_pgtables+0x50e/0x630 mm/memory.c:414
 exit_mmap+0x367/0x5e0 mm/mmap.c:1312
 __mmput+0x28/0x1c0 kernel/fork.c:1187
 mmput+0x40/0x50 kernel/fork.c:1210
 exec_mm_put_old fs/exec.c:916 [inline]
 setup_new_exec+0x20a/0x230 fs/exec.c:1353
 load_elf_binary+0x77a/0x1a30 fs/binfmt_elf.c:1024
 search_binary_handler fs/exec.c:1694 [inline]
 exec_binprm fs/exec.c:1726 [inline]
 bprm_execve+0x45c/0x9b0 fs/exec.c:1778
 do_execveat_common+0x7a4/0x8a0 fs/exec.c:1876
 __do_sys_execve fs/exec.c:1949 [inline]
 __se_sys_execve fs/exec.c:1943 [inline]
 __x64_sys_execve+0x5f/0x80 fs/exec.c:1943
 x64_sys_call+0x2752/0x3020 arch/x86/include/generated/asm/syscalls_64.h:60
 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 0xffff8881331f4000 of 8 bytes by task 11658 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: 0x000001502ab37190 -> 0x000001505958442b

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


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at [email protected].

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.