syzbot


KCSAN: data-race in filemap_read_folio / filemap_read_folio (4)

Status: moderation: reported on 2026/02/13 20:50
Subsystems: mm
[Documentation on labels]
Reported-by: syzbot+40530cc4256b7fa74046@syzkaller.appspotmail.com
First crash: 24d, last: 24d
✨ AI Jobs (2)
ID Workflow Result Correct Bug Created Started Finished Revision Error
074ce048-9573-4ca3-a5b3-e9e39aa25ae1 repro KCSAN: data-race in filemap_read_folio / filemap_read_folio (4) 2026/03/06 18:11 2026/03/06 18:11 2026/03/06 18:36 31e9c887f7dc24e04b3ca70d0d54fc34141844b0
21a7fbab-dc44-4f97-b8db-6cdde8b11b01 assessment-kcsan Benign: ✅  Confident: ✅  KCSAN: data-race in filemap_read_folio / filemap_read_folio (4) 2026/02/13 20:50 2026/02/23 14:04 2026/02/23 14:06 305c0ec5cd886e2d13738e28e1b2df9b0ec20fc9
Similar bugs (3)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in filemap_read_folio / filemap_read_folio (3) mm 6 1 98d 98d 0/29 auto-obsoleted due to no activity on 2026/01/26 02:19
upstream KCSAN: data-race in filemap_read_folio / filemap_read_folio (2) fs 6 1 176d 176d 0/29 auto-obsoleted due to no activity on 2025/11/09 06:44
upstream KCSAN: data-race in filemap_read_folio / filemap_read_folio selinux serial 6 2 266d 311d 0/29 auto-obsoleted due to no activity on 2025/08/11 03:51

Sample crash report:
syz.1.7451: attempt to access beyond end of device
loop1: rw=8388608, sector=2065, nr_sectors = 8 limit=128
==================================================================
BUG: KCSAN: data-race in filemap_read_folio / filemap_read_folio

read-write to 0xffff8881670352e0 of 4 bytes by task 1786 on cpu 1:
 shrink_readahead_size_eio mm/filemap.c:2438 [inline]
 filemap_read_folio+0xea/0x110 mm/filemap.c:2508
 filemap_fault+0x5c8/0xb90 mm/filemap.c:3641
 __do_fault+0xbc/0x200 mm/memory.c:5355
 do_read_fault mm/memory.c:5790 [inline]
 do_fault mm/memory.c:5924 [inline]
 do_pte_missing mm/memory.c:4469 [inline]
 handle_pte_fault mm/memory.c:6308 [inline]
 __handle_mm_fault mm/memory.c:6446 [inline]
 handle_mm_fault+0x11d7/0x3020 mm/memory.c:6615
 faultin_page mm/gup.c:1126 [inline]
 __get_user_pages+0x1023/0x1ea0 mm/gup.c:1428
 populate_vma_page_range mm/gup.c:1860 [inline]
 __mm_populate+0x242/0x390 mm/gup.c:1963
 mm_populate include/linux/mm.h:3689 [inline]
 vm_mmap_pgoff+0x23b/0x2d0 mm/util.c:586
 ksys_mmap_pgoff+0x267/0x310 mm/mmap.c:604
 x64_sys_call+0x14df/0x3020 arch/x86/include/generated/asm/syscalls_64.h:10
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x12c/0x370 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read-write to 0xffff8881670352e0 of 4 bytes by task 1814 on cpu 0:
 shrink_readahead_size_eio mm/filemap.c:2438 [inline]
 filemap_read_folio+0xea/0x110 mm/filemap.c:2508
 filemap_fault+0x5c8/0xb90 mm/filemap.c:3641
 __do_fault+0xbc/0x200 mm/memory.c:5355
 do_read_fault mm/memory.c:5790 [inline]
 do_fault mm/memory.c:5924 [inline]
 do_pte_missing mm/memory.c:4469 [inline]
 handle_pte_fault mm/memory.c:6308 [inline]
 __handle_mm_fault mm/memory.c:6446 [inline]
 handle_mm_fault+0x11d7/0x3020 mm/memory.c:6615
 do_user_addr_fault+0x3fd/0x1050 arch/x86/mm/fault.c:1385
 handle_page_fault arch/x86/mm/fault.c:1474 [inline]
 exc_page_fault+0x62/0xa0 arch/x86/mm/fault.c:1527
 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:618
 rep_movs_alternative+0x4a/0x90 arch/x86/lib/copy_user_64.S:68
 copy_user_generic arch/x86/include/asm/uaccess_64.h:126 [inline]
 raw_copy_from_user arch/x86/include/asm/uaccess_64.h:141 [inline]
 _inline_copy_from_user include/linux/uaccess.h:185 [inline]
 _copy_from_user+0x6f/0xb0 lib/usercopy.c:18
 copy_from_user include/linux/uaccess.h:223 [inline]
 copy_mount_options fs/namespace.c:4028 [inline]
 __do_sys_mount fs/namespace.c:4343 [inline]
 __se_sys_mount+0x10d/0x2e0 fs/namespace.c:4325
 __x64_sys_mount+0x67/0x80 fs/namespace.c:4325
 x64_sys_call+0x2d61/0x3020 arch/x86/include/generated/asm/syscalls_64.h:166
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x12c/0x370 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x00000020 -> 0x00000008

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 1814 Comm: syz.1.7451 Tainted: G        W           syzkaller #0 PREEMPT(full) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/24/2026
==================================================================
syz.1.7451: attempt to access beyond end of device
loop1: rw=8388608, sector=2065, nr_sectors = 8 limit=128

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/02/13 20:50 upstream cee73b1e840c 1e62d198 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in filemap_read_folio / filemap_read_folio
* Struck through repros no longer work on HEAD.