syzbot


KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range

Status: auto-obsoleted due to no activity on 2023/02/28 04:15
Subsystems: fs mm
[Documentation on labels]
First crash: 777d, last: 703d
Similar bugs (7)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range (8) mm 1 22d 22d 0/28 moderation: reported on 2024/11/13 01:46
upstream KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range (2) exfat mm 4 534d 549d 0/28 auto-obsoleted due to no activity on 2023/07/24 21:47
upstream KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range (6) mm 4 139d 184d 0/28 auto-obsoleted due to no activity on 2024/08/23 03:22
upstream KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range (4) mm 2 351d 359d 0/28 auto-obsoleted due to no activity on 2024/01/23 22:45
upstream KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range (3) mm 5 419d 481d 0/28 auto-obsoleted due to no activity on 2023/11/17 05:22
upstream KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range (7) exfat 1 99d 99d 0/28 auto-obsoleted due to no activity on 2024/10/02 07:50
upstream KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range (5) mm 4 268d 297d 0/28 auto-obsoleted due to no activity on 2024/04/16 09:26

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range

read-write to 0xffff8881023d76c8 of 8 bytes by task 18739 on cpu 0:
 page_cache_delete mm/filemap.c:145 [inline]
 __filemap_remove_folio+0x216/0x2f0 mm/filemap.c:223
 __remove_mapping+0x35c/0x480 mm/vmscan.c:1400
 remove_mapping+0x1f/0x90 mm/vmscan.c:1433
 mapping_evict_folio mm/truncate.c:282 [inline]
 invalidate_mapping_pagevec+0x2b7/0x3f0 mm/truncate.c:521
 invalidate_mapping_pages+0x23/0x30 mm/truncate.c:559
 invalidate_bdev+0x67/0x80 block/bdev.c:87
 loop_set_status+0x112/0x530 drivers/block/loop.c:1281
 lo_ioctl+0x83e/0x1290
 blkdev_ioctl+0x215/0x440 block/ioctl.c:616
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:870 [inline]
 __se_sys_ioctl+0xcb/0x140 fs/ioctl.c:856
 __x64_sys_ioctl+0x3f/0x50 fs/ioctl.c:856
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x2b/0x70 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd

read to 0xffff8881023d76c8 of 8 bytes by task 18705 on cpu 1:
 mapping_needs_writeback mm/filemap.c:624 [inline]
 file_write_and_wait_range+0x66/0x190 mm/filemap.c:776
 blkdev_fsync+0x35/0x80 block/fops.c:442
 vfs_fsync_range+0x107/0x120 fs/sync.c:188
 generic_write_sync include/linux/fs.h:2882 [inline]
 blkdev_write_iter+0x36f/0x3e0 block/fops.c:536
 do_iter_write+0x494/0x750 fs/read_write.c:861
 vfs_iter_write+0x4c/0x70 fs/read_write.c:902
 iter_file_splice_write+0x44a/0x7c0 fs/splice.c:686
 do_splice_from fs/splice.c:764 [inline]
 direct_splice_actor+0x80/0xa0 fs/splice.c:931
 splice_direct_to_actor+0x305/0x620 fs/splice.c:886
 do_splice_direct+0xfb/0x180 fs/splice.c:974
 do_sendfile+0x3bf/0x910 fs/read_write.c:1255
 __do_sys_sendfile64 fs/read_write.c:1323 [inline]
 __se_sys_sendfile64 fs/read_write.c:1309 [inline]
 __x64_sys_sendfile64+0x10c/0x150 fs/read_write.c:1309
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x2b/0x70 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd

value changed: 0x0000000000000f10 -> 0x0000000000000f0e

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 18705 Comm: syz-executor.1 Tainted: G        W          6.2.0-rc1-syzkaller-00095-ge4cf7c25bae5-dirty #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/26/2022
==================================================================

Crashes (7):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/01/02 04:30 upstream e4cf7c25bae5 ab32d508 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range
2022/12/11 15:22 upstream 296a7b7eb792 67be1ae7 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range
2022/12/10 11:47 upstream 3ecc37918c80 67be1ae7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range
2022/12/04 14:23 upstream c2bf05db6c78 e080de16 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range
2022/11/12 21:18 upstream 8f2975c2bb4c f42ee5d8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range
2022/10/27 14:43 upstream b229b6ca5abb 5c716ff6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range
2022/10/20 05:03 upstream aae703b02f92 b31320fc .config console log report info [disk image] [vmlinux] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_remove_folio / file_write_and_wait_range
* Struck through repros no longer work on HEAD.