KCSAN: data-race in copy_folio_from_iter_atomic / fat_add_entries

Status: upstream: reported on 2026/08/16 06:46
Subsystems: exfat
Labels: race:harmful prio:low
[Documentation on labels]
Reported-by: syzbot+f72da8b30ddc89cc2371@syzkaller.appspotmail.com
First crash: 2d13h, last: 2d13h
✨ AI Jobs (2)
ID Workflow Result Correct Bug Created Started Finished Revision
489ed317 assessment-security DenialOfService: ❌ Exploitable: ❌ FilesystemTrigger: ❌ NetworkTrigger: ❌ PeripheralTrigger: ❌ RemoteTrigger: ❌ Unprivileged: ✅ UserNamespace: ❌ VMGuestTrigger: ❌ VMHostTrigger: ❌ KCSAN: data-race in copy_folio_from_iter_atomic / fat_add_entries 2026/08/18 01:02 2026/08/18 01:02 2026/08/18 01:34 1e72964b
cf7ec641 assessment-kcsan Benign: ❌ KCSAN: data-race in copy_folio_from_iter_atomic / fat_add_entries 2026/08/16 06:07 2026/08/16 06:07 2026/08/16 06:45 746171ee
Discussions (2)
Title Replies (including bot) Last reply
[PATCH] fat: fix data race in fat_add_entries() over unlocked buffer write 2 (2) 2026/08/16 12:22
[syzbot] [exfat?] KCSAN: data-race in copy_folio_from_iter_atomic / fat_add_entries 0 (1) 2026/08/16 06:46

Sample crash report:
==================================================================
BUG: KCSAN: data-race in copy_folio_from_iter_atomic / fat_add_entries

write to 0xffff8881090508c0 of 32 bytes by task 4733 on cpu 1:
 fat_add_entries+0x7d8/0x11c0 fs/fat/dir.c:1409
 msdos_add_entry+0x1a2/0x270 fs/fat/namei_msdos.c:250
 msdos_create+0x205/0x350 fs/fat/namei_msdos.c:289
 lookup_open fs/namei.c:4508 [inline]
 open_last_lookups fs/namei.c:4608 [inline]
 path_openat+0xcfb/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 0xffff888109050800 of 2048 bytes by task 40 on cpu 0:
 memcpy_from_iter lib/iov_iter.c:85 [inline]
 iterate_bvec include/linux/iov_iter.h:123 [inline]
 iterate_and_advance2 include/linux/iov_iter.h:306 [inline]
 iterate_and_advance include/linux/iov_iter.h:330 [inline]
 __copy_from_iter lib/iov_iter.c:261 [inline]
 copy_folio_from_iter_atomic+0x728/0x10a0 lib/iov_iter.c:491
 generic_perform_write+0x2c4/0x490 mm/filemap.c:4382
 shmem_file_write_iter+0xc5/0xf0 mm/shmem.c:3424
 lo_rw_aio+0x6a9/0x760 drivers/block/loop.c:-1
 do_req_filebacked drivers/block/loop.c:-1 [inline]
 loop_handle_cmd drivers/block/loop.c:1917 [inline]
 loop_process_work+0x567/0xac0 drivers/block/loop.c:1952
 loop_workfn+0x31/0x40 drivers/block/loop.c:1976
 process_one_work kernel/workqueue.c:3322 [inline]
 process_scheduled_works+0x4d4/0x9a0 kernel/workqueue.c:3405
 worker_thread+0x569/0x750 kernel/workqueue.c:3486
 kthread+0x221/0x270 kernel/kthread.c:436
 ret_from_fork+0x146/0x330 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 40 Comm: kworker/u8:2 Not tainted syzkaller #0 PREEMPT(lazy) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Workqueue: loop4 loop_workfn
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/16 06:07 upstream 3eb40771c00a 746171ee .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in copy_folio_from_iter_atomic / fat_add_entries
* Struck through repros no longer work on HEAD.