syzbot


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

Status: auto-closed as invalid on 2021/11/05 05:01
Subsystems: fs mm
[Documentation on labels]
First crash: 934d, last: 930d
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 977d 977d 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 1105d 1228d 0/26 auto-closed as invalid on 2021/05/14 11:29
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (4) mm fs 5 1307d 1374d 0/26 auto-closed as invalid on 2020/10/24 01:56
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (3) fs mm 1 1441d 1441d 0/26 auto-closed as invalid on 2020/06/18 13:43
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark ext4 3 1632d 1638d 0/26 closed as invalid on 2019/11/19 13:24
upstream KCSAN: data-race in ext4_writepages / xas_clear_mark (2) ext4 1 1583d 1583d 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 0xffff888105fbbb6c of 4 bytes by task 17336 on cpu 1:
 xa_mark_clear lib/xarray.c:75 [inline]
 xas_clear_mark+0x16c/0x180 lib/xarray.c:921
 __test_set_page_writeback+0x43a/0x570 mm/page-writeback.c:2852
 ext4_bio_write_page+0xee/0xa40
 mpage_submit_page fs/ext4/inode.c:2106 [inline]
 mpage_process_page_bufs+0x437/0x560 fs/ext4/inode.c:2220
 mpage_prepare_extent_to_map+0x4f6/0x650 fs/ext4/inode.c:2632
 ext4_writepages+0x706/0x1d70 fs/ext4/inode.c:2760
 do_writepages+0x26b/0x3c0 mm/page-writeback.c:2364
 filemap_fdatawrite_wbc mm/filemap.c:400 [inline]
 __filemap_fdatawrite_range mm/filemap.c:433 [inline]
 file_write_and_wait_range+0x1ae/0x240 mm/filemap.c:810
 ext4_sync_file+0x105/0x670 fs/ext4/fsync.c:151
 vfs_fsync_range+0x107/0x120 fs/sync.c:200
 generic_write_sync include/linux/fs.h:2955 [inline]
 ext4_buffered_write_iter+0x3af/0x400 fs/ext4/file.c:277
 ext4_file_write_iter+0x2e7/0x11f0
 call_write_iter include/linux/fs.h:2163 [inline]
 do_iter_readv_writev+0x2de/0x380 fs/read_write.c:729
 do_iter_write+0x192/0x5c0 fs/read_write.c:855
 vfs_iter_write+0x4c/0x70 fs/read_write.c:896
 iter_file_splice_write+0x43a/0x790 fs/splice.c:689
 do_splice_from fs/splice.c:767 [inline]
 direct_splice_actor+0x80/0xa0 fs/splice.c:936
 splice_direct_to_actor+0x345/0x650 fs/splice.c:891
 do_splice_direct+0x106/0x190 fs/splice.c:979
 do_sendfile+0x63e/0xbb0 fs/read_write.c:1249
 __do_sys_sendfile64 fs/read_write.c:1314 [inline]
 __se_sys_sendfile64 fs/read_write.c:1300 [inline]
 __x64_sys_sendfile64+0x102/0x140 fs/read_write.c:1300
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x44/0xa0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x44/0xae

read to 0xffff888105fbbb6c of 4 bytes by task 17329 on cpu 0:
 xa_marked include/linux/xarray.h:418 [inline]
 mapping_tagged include/linux/fs.h:496 [inline]
 ext4_writepages+0x15e/0x1d70 fs/ext4/inode.c:2674
 do_writepages+0x26b/0x3c0 mm/page-writeback.c:2364
 filemap_fdatawrite_wbc mm/filemap.c:400 [inline]
 __filemap_fdatawrite_range mm/filemap.c:433 [inline]
 filemap_write_and_wait_range+0x238/0x3c0 mm/filemap.c:704
 __iomap_dio_rw+0x4ca/0x1010 fs/iomap/direct-io.c:540
 iomap_dio_rw+0x30/0x70 fs/iomap/direct-io.c:649
 ext4_dio_write_iter fs/ext4/file.c:568 [inline]
 ext4_file_write_iter+0xa59/0x11f0 fs/ext4/file.c:678
 call_write_iter include/linux/fs.h:2163 [inline]
 do_iter_readv_writev+0x2de/0x380 fs/read_write.c:729
 do_iter_write+0x192/0x5c0 fs/read_write.c:855
 vfs_iter_write+0x4c/0x70 fs/read_write.c:896
 iter_file_splice_write+0x43a/0x790 fs/splice.c:689
 do_splice_from fs/splice.c:767 [inline]
 direct_splice_actor+0x80/0xa0 fs/splice.c:936
 splice_direct_to_actor+0x345/0x650 fs/splice.c:891
 do_splice_direct+0x106/0x190 fs/splice.c:979
 do_sendfile+0x63e/0xbb0 fs/read_write.c:1249
 __do_sys_sendfile64 fs/read_write.c:1314 [inline]
 __se_sys_sendfile64 fs/read_write.c:1300 [inline]
 __x64_sys_sendfile64+0x102/0x140 fs/read_write.c:1300
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x44/0xa0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x44/0xae

value changed: 0x0e000021 -> 0x04000021

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 17329 Comm: syz-executor.3 Not tainted 5.15.0-rc3-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2021/10/01 04:53 upstream 4de593fb965f 1d849ab4 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in ext4_writepages / xas_clear_mark
2021/09/27 13:08 upstream 5816b3e6577e 78494d16 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in ext4_writepages / xas_clear_mark
* Struck through repros no longer work on HEAD.