syzbot


KCSAN: data-race in bcmp / stack_map_get_build_id_offset

Status: moderation: reported on 2025/09/22 10:49
Subsystems: bpf
[Documentation on labels]
Reported-by: syzbot+0462708d433602258c29@syzkaller.appspotmail.com
First crash: 129d, last: 15d

Sample crash report:
==================================================================
BUG: KCSAN: data-race in bcmp / stack_map_get_build_id_offset

read to 0xffff88811b1db4e0 of 8 bytes by task 19188 on cpu 0:
 memcmp lib/string.c:683 [inline]
 bcmp+0x23/0x90 lib/string.c:715
 memcmp include/linux/fortify-string.h:727 [inline]
 __bpf_get_stackid+0x648/0x7d0 kernel/bpf/stackmap.c:292
 ____bpf_get_stackid kernel/bpf/stackmap.c:344 [inline]
 bpf_get_stackid+0xf3/0x130 kernel/bpf/stackmap.c:323
 ____bpf_get_stackid_raw_tp kernel/trace/bpf_trace.c:1628 [inline]
 bpf_get_stackid_raw_tp+0xf6/0x120 kernel/trace/bpf_trace.c:1617
 bpf_prog_ff69ba342f4eb966+0x2a/0x32
 bpf_dispatcher_nop_func include/linux/bpf.h:1378 [inline]
 __bpf_prog_run include/linux/filter.h:723 [inline]
 bpf_prog_run include/linux/filter.h:730 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:2075 [inline]
 bpf_trace_run4+0x117/0x1e0 kernel/trace/bpf_trace.c:2118
 __do_trace_mm_page_alloc include/trace/events/kmem.h:180 [inline]
 trace_mm_page_alloc include/trace/events/kmem.h:180 [inline]
 __alloc_frozen_pages_noprof+0x336/0x360 mm/page_alloc.c:5232
 __alloc_pages_noprof+0x9/0x20 mm/page_alloc.c:5244
 __alloc_pages_node_noprof include/linux/gfp.h:285 [inline]
 alloc_pages_node_noprof include/linux/gfp.h:312 [inline]
 bpf_ringbuf_area_alloc kernel/bpf/ringbuf.c:127 [inline]
 bpf_ringbuf_alloc+0x1ef/0x400 kernel/bpf/ringbuf.c:175
 ringbuf_map_alloc+0x1ca/0x230 kernel/bpf/ringbuf.c:218
 map_create+0x862/0xda0 kernel/bpf/syscall.c:1514
 __sys_bpf+0x54e/0x7c0 kernel/bpf/syscall.c:6146
 __do_sys_bpf kernel/bpf/syscall.c:6274 [inline]
 __se_sys_bpf kernel/bpf/syscall.c:6272 [inline]
 __x64_sys_bpf+0x41/0x50 kernel/bpf/syscall.c:6272
 x64_sys_call+0x28e1/0x3000 arch/x86/include/generated/asm/syscalls_64.h:322
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xca/0x2b0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

write to 0xffff88811b1db4e4 of 20 bytes by task 19180 on cpu 1:
 stack_map_get_build_id_offset+0x260/0x530 kernel/bpf/stackmap.c:200
 __bpf_get_stackid+0x60b/0x7d0 kernel/bpf/stackmap.c:289
 ____bpf_get_stackid kernel/bpf/stackmap.c:344 [inline]
 bpf_get_stackid+0xf3/0x130 kernel/bpf/stackmap.c:323
 ____bpf_get_stackid_raw_tp kernel/trace/bpf_trace.c:1628 [inline]
 bpf_get_stackid_raw_tp+0xf6/0x120 kernel/trace/bpf_trace.c:1617
 bpf_prog_ff69ba342f4eb966+0x2a/0x32
 bpf_dispatcher_nop_func include/linux/bpf.h:1378 [inline]
 __bpf_prog_run include/linux/filter.h:723 [inline]
 bpf_prog_run include/linux/filter.h:730 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:2075 [inline]
 bpf_trace_run4+0x117/0x1e0 kernel/trace/bpf_trace.c:2118
 __do_trace_mm_page_alloc include/trace/events/kmem.h:180 [inline]
 trace_mm_page_alloc include/trace/events/kmem.h:180 [inline]
 __alloc_frozen_pages_noprof+0x336/0x360 mm/page_alloc.c:5232
 alloc_pages_mpol+0xb3/0x260 mm/mempolicy.c:2486
 folio_alloc_mpol_noprof+0x39/0x80 mm/mempolicy.c:2505
 shmem_alloc_folio mm/shmem.c:1890 [inline]
 shmem_alloc_and_add_folio mm/shmem.c:1932 [inline]
 shmem_get_folio_gfp+0x3cf/0xd50 mm/shmem.c:2556
 shmem_get_folio mm/shmem.c:2662 [inline]
 shmem_write_begin+0xfc/0x1f0 mm/shmem.c:3315
 generic_perform_write+0x184/0x490 mm/filemap.c:4314
 shmem_file_write_iter+0xc5/0xf0 mm/shmem.c:3490
 new_sync_write fs/read_write.c:593 [inline]
 vfs_write+0x52a/0x960 fs/read_write.c:686
 ksys_write+0xda/0x1a0 fs/read_write.c:738
 __do_sys_write fs/read_write.c:749 [inline]
 __se_sys_write fs/read_write.c:746 [inline]
 __x64_sys_write+0x40/0x50 fs/read_write.c:746
 x64_sys_call+0x2847/0x3000 arch/x86/include/generated/asm/syscalls_64.h:2
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xca/0x2b0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 19180 Comm: syz.6.15865 Tainted: G        W           syzkaller #0 PREEMPT(voluntary) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
==================================================================

Crashes (7):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/01/14 13:55 upstream c537e12daeec d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bcmp / stack_map_get_build_id_offset
2026/01/11 21:34 upstream 755bc1335e3b d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bcmp / stack_map_get_build_id_offset
2025/11/24 04:54 upstream d0e88704d96c 4fb8ef37 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bcmp / stack_map_get_build_id_offset
2025/11/19 04:43 upstream 5bebe8de1926 ef766cd7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bcmp / stack_map_get_build_id_offset
2025/11/15 09:59 upstream 7a0892d2836e f7988ea4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bcmp / stack_map_get_build_id_offset
2025/09/29 11:52 upstream e5f0a698b34e 86341da6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bcmp / stack_map_get_build_id_offset
2025/09/22 10:49 upstream 07e27ad16399 0ac7291c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in bcmp / stack_map_get_build_id_offset
* Struck through repros no longer work on HEAD.