Hello,
syzbot found the following issue on:
HEAD commit: 24d479d26b25 Linux 6.19-rc6
git tree: upstream
console output:
https://syzkaller.appspot.com/x/log.txt?x=16fd8bfc580000
kernel config:
https://syzkaller.appspot.com/x/.config?x=676c6f0212d0c041
dashboard link:
https://syzkaller.appspot.com/bug?extid=e20816020f13e209776b
compiler: Debian clang version 21.1.8 (++20251221033036+2078da43e25a-1~exp1~20251221153213.50), Debian LLD 21.1.8
CC: [
hiro...@mail.parknet.co.jp linki...@kernel.org linux-...@vger.kernel.org linux-...@vger.kernel.org sj155...@samsung.com]
Unfortunately, I don't have any reproducer for this issue yet.
Downloadable assets:
disk image:
https://storage.googleapis.com/syzbot-assets/e47d2b960e97/disk-24d479d2.raw.xz
vmlinux:
https://storage.googleapis.com/syzbot-assets/75c59e1fc76a/vmlinux-24d479d2.xz
kernel image:
https://storage.googleapis.com/syzbot-assets/e42579adf478/bzImage-24d479d2.xz
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by:
syzbot+e20816...@syzkaller.appspotmail.com
==================================================================
BUG: KCSAN: data-race in copy_folio_from_iter_atomic / fat12_ent_put
write to 0xffff88811c4fa403 of 1 bytes by task 10487 on cpu 0:
fat12_ent_put+0x74/0x170 fs/fat/fatent.c:168
fat_alloc_clusters+0x57b/0xc50 fs/fat/fatent.c:503
fat_add_cluster fs/fat/inode.c:108 [inline]
__fat_get_block fs/fat/inode.c:155 [inline]
fat_get_block+0x258/0x5e0 fs/fat/inode.c:190
__block_write_begin_int+0x400/0xf90 fs/buffer.c:2145
block_write_begin fs/buffer.c:2256 [inline]
cont_write_begin+0x5fe/0x970 fs/buffer.c:2594
fat_write_begin+0x4f/0xe0 fs/fat/inode.c:230
generic_perform_write+0x183/0x490 mm/filemap.c:4314
__generic_file_write_iter+0x9e/0x120 mm/filemap.c:4431
generic_file_write_iter+0x8d/0x310 mm/filemap.c:4457
new_sync_write fs/read_write.c:593 [inline]
vfs_write+0x5a6/0x9f0 fs/read_write.c:686
ksys_write+0xdc/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+0xc0/0x2a0 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f
read to 0xffff88811c4fa400 of 1024 bytes by task 3422 on cpu 1:
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+0x75f/0x1170 lib/iov_iter.c:491
generic_perform_write+0x2c1/0x490 mm/filemap.c:4332
shmem_file_write_iter+0xc5/0xf0 mm/shmem.c:3490
lo_rw_aio+0x67d/0x730 drivers/block/loop.c:-1
do_req_filebacked drivers/block/loop.c:-1 [inline]
loop_handle_cmd drivers/block/loop.c:1947 [inline]
loop_process_work+0x56c/0xac0 drivers/block/loop.c:1982
loop_workfn+0x31/0x40 drivers/block/loop.c:2006
process_one_work kernel/workqueue.c:3257 [inline]
process_scheduled_works+0x4cd/0x9d0 kernel/workqueue.c:3340
worker_thread+0x581/0x770 kernel/workqueue.c:3421
kthread+0x488/0x510 kernel/kthread.c:463
ret_from_fork+0x148/0x280 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:246
Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 3422 Comm: kworker/u8:9 Not tainted syzkaller #0 PREEMPT(voluntary)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: loop5 loop_workfn
==================================================================
---
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
syzk...@googlegroups.com.
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