syzbot


KCSAN: data-race in ext4_writepages / xas_clear_mark (4)

Status: auto-closed as invalid on 2020/10/24 01:56
Subsystems: mm fs
[Documentation on labels]
First crash: 1381d, last: 1314d
Similar bugs (6)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (6) fs mm 1 983d 983d 0/26 auto-closed as invalid on 2021/09/19 19:45
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (5) fs mm 14 1112d 1235d 0/26 auto-closed as invalid on 2021/05/14 11:29
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (7) fs mm 2 937d 941d 0/26 auto-closed as invalid on 2021/11/05 05:01
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (3) fs mm 1 1447d 1447d 0/26 auto-closed as invalid on 2020/06/18 13:43
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark ext4 3 1639d 1645d 0/26 closed as invalid on 2019/11/19 13:24
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (2) ext4 1 1590d 1590d 0/26 auto-closed as invalid on 2020/02/26 13:18

Sample crash report:
==================================================================
BUG: KCSAN: data-race in ext4_writepages / xas_clear_mark

write to 0xffff88811e9bd32c of 4 bytes by task 21634 on cpu 0:
 xa_mark_clear lib/xarray.c:75 [inline]
 xas_clear_mark+0x15a/0x170 lib/xarray.c:918
 __test_set_page_writeback+0x3ae/0x480 mm/page-writeback.c:2808
 ext4_bio_write_page+0xed/0xda0 fs/ext4/page-io.c:453
 mpage_submit_page fs/ext4/inode.c:2081 [inline]
 mpage_process_page_bufs+0x4f5/0x600 fs/ext4/inode.c:2195
 mpage_prepare_extent_to_map+0x4ec/0x650 fs/ext4/inode.c:2607
 ext4_writepages+0x682/0x1ef0 fs/ext4/inode.c:2735
 do_writepages+0x7b/0x150 mm/page-writeback.c:2352
 __filemap_fdatawrite_range+0x19b/0x1d0 mm/filemap.c:422
 file_write_and_wait_range+0x9f/0x120 mm/filemap.c:761
 ext4_sync_file+0xfc/0x6e0 fs/ext4/fsync.c:151
 vfs_fsync_range+0x107/0x120 fs/sync.c:200
 generic_write_sync include/linux/fs.h:2747 [inline]
 ext4_buffered_write_iter+0x369/0x3b0 fs/ext4/file.c:276
 ext4_file_write_iter+0x768/0x1060 include/linux/fs.h:784
 call_write_iter include/linux/fs.h:1882 [inline]
 do_iter_readv_writev+0x32e/0x3d0 fs/read_write.c:713
 do_iter_write+0x112/0x4b0 fs/read_write.c:1018
 vfs_iter_write+0x4c/0x70 fs/read_write.c:1059
 iter_file_splice_write+0x41a/0x770 fs/splice.c:750
 do_splice_from fs/splice.c:846 [inline]
 direct_splice_actor+0x95/0x160 fs/splice.c:1016
 splice_direct_to_actor+0x365/0x660 fs/splice.c:971
 do_splice_direct+0xf2/0x170 fs/splice.c:1059
 do_sendfile+0x56a/0xba0 fs/read_write.c:1540
 __do_sys_sendfile64 fs/read_write.c:1595 [inline]
 __se_sys_sendfile64 fs/read_write.c:1587 [inline]
 __x64_sys_sendfile64+0xa9/0x130 fs/read_write.c:1587
 do_syscall_64+0x39/0x80 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

read to 0xffff88811e9bd32c of 4 bytes by task 21628 on cpu 1:
 xa_marked include/linux/xarray.h:416 [inline]
 mapping_tagged include/linux/fs.h:493 [inline]
 ext4_writepages+0x164/0x1ef0 fs/ext4/inode.c:2649
 do_writepages+0x7b/0x150 mm/page-writeback.c:2352
 __filemap_fdatawrite_range+0x19b/0x1d0 mm/filemap.c:422
 filemap_write_and_wait_range+0x8b/0x2a0 mm/filemap.c:655
 iomap_dio_rw+0x371/0x980 fs/iomap/direct-io.c:478
 ext4_dio_write_iter fs/ext4/file.c:548 [inline]
 ext4_file_write_iter+0xdd5/0x1060 fs/ext4/file.c:658
 call_write_iter include/linux/fs.h:1882 [inline]
 do_iter_readv_writev+0x32e/0x3d0 fs/read_write.c:713
 do_iter_write+0x112/0x4b0 fs/read_write.c:1018
 vfs_iter_write+0x4c/0x70 fs/read_write.c:1059
 iter_file_splice_write+0x41a/0x770 fs/splice.c:750
 do_splice_from fs/splice.c:846 [inline]
 direct_splice_actor+0x95/0x160 fs/splice.c:1016
 splice_direct_to_actor+0x365/0x660 fs/splice.c:971
 do_splice_direct+0xf2/0x170 fs/splice.c:1059
 do_sendfile+0x56a/0xba0 fs/read_write.c:1540
 __do_sys_sendfile64 fs/read_write.c:1601 [inline]
 __se_sys_sendfile64 fs/read_write.c:1587 [inline]
 __x64_sys_sendfile64+0xf2/0x130 fs/read_write.c:1587
 do_syscall_64+0x39/0x80 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 21628 Comm: syz-executor.4 Not tainted 5.9.0-rc5-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (5):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/09/19 01:51 upstream 92ab97adeefc 53ce8104 .config console log report info ci2-upstream-kcsan-gce
2020/09/04 21:59 upstream c70672d8d316 abf9ba4f .config console log report ci2-upstream-kcsan-gce
2020/08/20 22:51 upstream da2968ff879b 70160577 .config console log report ci2-upstream-kcsan-gce
2020/08/06 11:33 upstream 47ec5303d73e 4ca1c0ea .config console log report ci2-upstream-kcsan-gce
2020/07/14 03:08 upstream 0dc589da873b ce4c95b3 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.