syzbot


KCSAN: data-race in file_update_time_flags / inode_update_timestamps

Status: moderation: reported on 2025/12/14 15:43
Subsystems: ext4
[Documentation on labels]
Reported-by: syzbot+1362842535f601e5a890@syzkaller.appspotmail.com
First crash: 30d, last: 10d

Sample crash report:
==================================================================
BUG: KCSAN: data-race in file_update_time_flags / inode_update_timestamps

write to 0xffff888100405884 of 4 bytes by task 15577 on cpu 1:
 inode_set_mtime_to_ts include/linux/fs.h:1658 [inline]
 inode_update_timestamps+0x147/0x270 fs/inode.c:2113
 generic_update_time fs/inode.c:2148 [inline]
 inode_update_time fs/inode.c:2168 [inline]
 file_update_time_flags+0x26c/0x310 fs/inode.c:2395
 file_update_time+0x17/0x20 fs/inode.c:2416
 fault_dirty_shared_page+0xd9/0x390 mm/memory.c:3570
 do_shared_fault mm/memory.c:5847 [inline]
 do_fault mm/memory.c:5893 [inline]
 do_pte_missing mm/memory.c:4401 [inline]
 handle_pte_fault mm/memory.c:6273 [inline]
 __handle_mm_fault mm/memory.c:6411 [inline]
 handle_mm_fault+0x1690/0x2c60 mm/memory.c:6580
 faultin_page mm/gup.c:1126 [inline]
 __get_user_pages+0x1024/0x1ed0 mm/gup.c:1428
 __get_user_pages_locked mm/gup.c:1692 [inline]
 __gup_longterm_locked+0x8ef/0xe60 mm/gup.c:2476
 pin_user_pages_remote+0x7e/0xb0 mm/gup.c:3363
 process_vm_rw_single_vec mm/process_vm_access.c:106 [inline]
 process_vm_rw_core mm/process_vm_access.c:216 [inline]
 process_vm_rw+0x484/0x960 mm/process_vm_access.c:284
 __do_sys_process_vm_writev mm/process_vm_access.c:304 [inline]
 __se_sys_process_vm_writev mm/process_vm_access.c:299 [inline]
 __x64_sys_process_vm_writev+0x78/0x90 mm/process_vm_access.c:299
 x64_sys_call+0x27ef/0x3000 arch/x86/include/generated/asm/syscalls_64.h:312
 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

read to 0xffff888100405884 of 4 bytes by task 15589 on cpu 0:
 inode_get_mtime_nsec include/linux/fs.h:1644 [inline]
 inode_get_mtime include/linux/fs.h:1650 [inline]
 file_update_time_flags+0xad/0x310 fs/inode.c:2378
 file_update_time+0x17/0x20 fs/inode.c:2416
 fault_dirty_shared_page+0xd9/0x390 mm/memory.c:3570
 do_shared_fault mm/memory.c:5847 [inline]
 do_fault mm/memory.c:5893 [inline]
 do_pte_missing mm/memory.c:4401 [inline]
 handle_pte_fault mm/memory.c:6273 [inline]
 __handle_mm_fault mm/memory.c:6411 [inline]
 handle_mm_fault+0x1690/0x2c60 mm/memory.c:6580
 faultin_page mm/gup.c:1126 [inline]
 __get_user_pages+0x1024/0x1ed0 mm/gup.c:1428
 __get_user_pages_locked mm/gup.c:1692 [inline]
 faultin_page_range+0x107/0x4e0 mm/gup.c:1912
 madvise_populate mm/madvise.c:976 [inline]
 madvise_do_behavior+0x1a0/0xa20 mm/madvise.c:1935
 do_madvise+0x10e/0x190 mm/madvise.c:2030
 __do_sys_madvise mm/madvise.c:2039 [inline]
 __se_sys_madvise mm/madvise.c:2037 [inline]
 __x64_sys_madvise+0x64/0x80 mm/madvise.c:2037
 x64_sys_call+0x1c6b/0x3000 arch/x86/include/generated/asm/syscalls_64.h:29
 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

value changed: 0x17292c2c -> 0x17c1c2ac

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 15589 Comm: syz.4.9709 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 (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/01/03 07:23 upstream 9b0436804460 d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in file_update_time_flags / inode_update_timestamps
2025/12/14 15:42 upstream 8f0b4cce4481 d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in file_update_time_flags / inode_update_timestamps
* Struck through repros no longer work on HEAD.