syzbot


KCSAN: data-race in __mark_inode_dirty / move_expired_inodes (5)

Status: moderation: reported on 2025/02/18 23:41
Subsystems: ext4
[Documentation on labels]
Reported-by: syzbot+0c54a553d9e164272ab3@syzkaller.appspotmail.com
First crash: 191d, last: 10d
Similar bugs (4)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __mark_inode_dirty / move_expired_inodes (4) ext4 6 3 264d 276d 0/29 auto-obsoleted due to no activity on 2025/02/02 07:47
upstream KCSAN: data-race in __mark_inode_dirty / move_expired_inodes ext4 6 75 1472d 1725d 0/29 auto-closed as invalid on 2021/09/21 21:54
upstream KCSAN: data-race in __mark_inode_dirty / move_expired_inodes (3) ext4 6 1 314d 314d 0/29 auto-obsoleted due to no activity on 2024/11/22 12:08
upstream KCSAN: data-race in __mark_inode_dirty / move_expired_inodes (2) ext4 6 195 355d 630d 0/29 auto-obsoleted due to no activity on 2024/10/12 23:36

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __mark_inode_dirty / move_expired_inodes

read-write to 0xffff88810596e8b8 of 4 bytes by task 57 on cpu 1:
 move_expired_inodes+0x17a/0x400 fs/fs-writeback.c:1457
 queue_io+0xd9/0x2c0 fs/fs-writeback.c:1509
 wb_writeback+0x226/0x5c0 fs/fs-writeback.c:2152
 wb_check_start_all fs/fs-writeback.c:2284 [inline]
 wb_do_writeback fs/fs-writeback.c:2310 [inline]
 wb_workfn+0x4c9/0x910 fs/fs-writeback.c:2343
 process_one_work kernel/workqueue.c:3236 [inline]
 process_scheduled_works+0x4cb/0x9d0 kernel/workqueue.c:3319
 worker_thread+0x582/0x770 kernel/workqueue.c:3400
 kthread+0x489/0x510 kernel/kthread.c:463
 ret_from_fork+0xda/0x150 arch/x86/kernel/process.c:148
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

read to 0xffff88810596e8b8 of 4 bytes by task 3286 on cpu 0:
 __mark_inode_dirty+0x18e/0x760 fs/fs-writeback.c:2549
 mark_buffer_dirty+0x133/0x210 fs/buffer.c:1209
 block_commit_write fs/buffer.c:2218 [inline]
 block_page_mkwrite+0x287/0x3d0 fs/buffer.c:2643
 ext4_page_mkwrite+0x859/0xb90 fs/ext4/inode.c:6725
 do_page_mkwrite mm/memory.c:3361 [inline]
 wp_page_shared mm/memory.c:3762 [inline]
 do_wp_page+0xdd8/0x24e0 mm/memory.c:3981
 handle_pte_fault mm/memory.c:6068 [inline]
 __handle_mm_fault mm/memory.c:6195 [inline]
 handle_mm_fault+0x77d/0x2c20 mm/memory.c:6364
 do_user_addr_fault+0x636/0x1090 arch/x86/mm/fault.c:1336
 handle_page_fault arch/x86/mm/fault.c:1476 [inline]
 exc_page_fault+0x62/0xa0 arch/x86/mm/fault.c:1532
 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:623

value changed: 0x00000028 -> 0x0001002a

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 3286 Comm: syz-executor Not tainted 6.17.0-rc2-syzkaller #0 PREEMPT(voluntary) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
==================================================================

Crashes (20):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/08/18 11:45 upstream c17b750b3ad9 1804e95e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/08/15 11:30 upstream 24ea63ea3877 1804e95e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/08/14 20:52 upstream 0cc53520e68b 5d8c2ac2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/08/13 20:56 upstream dfc0f6373094 22ec1469 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/08/10 11:40 upstream 2b38afce25c4 32a0e5ed .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/08/05 13:54 upstream 7e161a991ea7 37880f40 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/06/23 11:49 upstream 86731a2a651e d6cdfb8a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/06/19 18:52 upstream 24770983ccfe ed3e87f7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/05/30 10:34 upstream f66bc387efbe 3d2f584d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/05/26 16:08 upstream 0ff41df1cb26 874a1386 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/05/25 07:56 upstream d0c22de9995b ed351ea7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/05/21 23:04 upstream 4a95bc121ccd dc5d3808 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/05/13 20:52 upstream 405e6c37c89e 7344edeb .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/05/13 07:55 upstream e9565e23cd89 f6671af7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/05/05 13:39 upstream 92a09c47464d 6ca47dd8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/03/19 09:26 upstream 81e4f8d68c66 8d0a2921 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/03/19 02:48 upstream 76b6905c11fd 22a6c2b1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/03/14 19:55 upstream 695caca9345a e2826670 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/02/21 21:29 upstream 8a61cb6e150e d34966d1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
2025/02/18 23:40 upstream 6537cfb395f3 9a14138f .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __mark_inode_dirty / move_expired_inodes
* Struck through repros no longer work on HEAD.