================================================================== BUG: KCSAN: data-race in mark_buffer_dirty_inode / sync_mapping_buffers write to 0xffff8881097956d8 of 8 bytes by task 4104 on cpu 1: __remove_assoc_queue fs/buffer.c:523 [inline] fsync_buffers_list fs/buffer.c:727 [inline] sync_mapping_buffers+0x165/0x7d0 fs/buffer.c:590 fat_file_fsync+0xad/0x100 fs/fat/file.c:195 vfs_fsync_range+0x10b/0x120 fs/sync.c:188 generic_write_sync include/linux/fs.h:2469 [inline] generic_file_write_iter+0x191/0x1c0 mm/filemap.c:4087 do_iter_write+0x4ae/0x770 fs/read_write.c:860 vfs_iter_write+0x50/0x70 fs/read_write.c:901 iter_file_splice_write+0x456/0x7d0 fs/splice.c:795 do_splice_from fs/splice.c:873 [inline] direct_splice_actor+0x84/0xa0 fs/splice.c:1039 splice_direct_to_actor+0x2ee/0x5f0 fs/splice.c:994 do_splice_direct+0x104/0x180 fs/splice.c:1082 do_sendfile+0x3b8/0x950 fs/read_write.c:1254 __do_sys_sendfile64 fs/read_write.c:1322 [inline] __se_sys_sendfile64 fs/read_write.c:1308 [inline] __x64_sys_sendfile64+0x110/0x150 fs/read_write.c:1308 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd read to 0xffff8881097956d8 of 8 bytes by task 4096 on cpu 0: mark_buffer_dirty_inode+0x96/0x1c0 fs/buffer.c:623 fat16_ent_put+0x4f/0x60 fs/fat/fatent.c:184 fat_ent_write+0x62/0xe0 fs/fat/fatent.c:417 fat_chain_add+0x15f/0x400 fs/fat/misc.c:136 fat_add_cluster fs/fat/inode.c:113 [inline] __fat_get_block fs/fat/inode.c:155 [inline] fat_get_block+0x467/0x5e0 fs/fat/inode.c:190 __block_write_begin_int+0x3b0/0xf50 fs/buffer.c:2064 __block_write_begin fs/buffer.c:2114 [inline] block_write_begin+0x7c/0x180 fs/buffer.c:2175 cont_write_begin+0x4c0/0x6f0 fs/buffer.c:2534 fat_write_begin+0x61/0xf0 fs/fat/inode.c:230 generic_perform_write+0x1c3/0x3d0 mm/filemap.c:3923 __generic_file_write_iter+0xe6/0x290 mm/filemap.c:4051 generic_file_write_iter+0x7d/0x1c0 mm/filemap.c:4083 do_iter_write+0x4ae/0x770 fs/read_write.c:860 vfs_iter_write+0x50/0x70 fs/read_write.c:901 iter_file_splice_write+0x456/0x7d0 fs/splice.c:795 do_splice_from fs/splice.c:873 [inline] direct_splice_actor+0x84/0xa0 fs/splice.c:1039 splice_direct_to_actor+0x2ee/0x5f0 fs/splice.c:994 do_splice_direct+0x104/0x180 fs/splice.c:1082 do_sendfile+0x3b8/0x950 fs/read_write.c:1254 __do_sys_sendfile64 fs/read_write.c:1322 [inline] __se_sys_sendfile64 fs/read_write.c:1308 [inline] __x64_sys_sendfile64+0x110/0x150 fs/read_write.c:1308 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd value changed: 0xffff88810970a210 -> 0x0000000000000000 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 4096 Comm: syz-executor.4 Not tainted 6.4.0-rc3-syzkaller-00291-g4e893b5aa4ac #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/25/2023 ================================================================== syz-executor.4 (4096) used greatest stack depth: 10248 bytes left