syzbot


KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag

Status: auto-closed as invalid on 2021/03/28 18:54
Subsystems: ext4
[Documentation on labels]
Reported-by: syzbot+02b90571fc99c41a895f@syzkaller.appspotmail.com
First crash: 1401d, last: 1153d

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag

write to 0xffff88810e37afa8 of 8 bytes by task 11211 on cpu 0:
 instrument_write include/linux/instrumented.h:42 [inline]
 __instrument_read_write_bitop include/asm-generic/bitops/instrumented-non-atomic.h:79 [inline]
 __test_and_set_bit include/asm-generic/bitops/instrumented-non-atomic.h:95 [inline]
 node_set_mark lib/xarray.c:93 [inline]
 xas_set_mark lib/xarray.c:882 [inline]
 __xa_set_mark+0xef/0x1b0 lib/xarray.c:1898
 __set_page_dirty+0x17e/0x1d0 fs/buffer.c:609
 mark_buffer_dirty+0x126/0x230 fs/buffer.c:1137
 __block_commit_write fs/buffer.c:2084 [inline]
 block_write_end+0x13d/0x230 fs/buffer.c:2162
 generic_write_end+0x5c/0x240 fs/buffer.c:2176
 ext4_da_write_end+0x59b/0x760 fs/ext4/inode.c:3111
 generic_perform_write+0x23e/0x3a0 mm/filemap.c:3423
 ext4_buffered_write_iter+0x2e5/0x3e0 fs/ext4/file.c:270
 ext4_file_write_iter+0x47a/0x1060 fs/ext4/file.c:503
 call_write_iter include/linux/fs.h:1901 [inline]
 do_iter_readv_writev+0x2cb/0x360 fs/read_write.c:740
 do_iter_write+0x112/0x4c0 fs/read_write.c:866
 vfs_iter_write+0x4c/0x70 fs/read_write.c:907
 iter_file_splice_write+0x41a/0x770 fs/splice.c:686
 do_splice_from fs/splice.c:764 [inline]
 direct_splice_actor+0x80/0xa0 fs/splice.c:933
 splice_direct_to_actor+0x345/0x650 fs/splice.c:888
 do_splice_direct+0xf5/0x170 fs/splice.c:976
 do_sendfile+0x5e0/0xcf0 fs/read_write.c:1257
 __do_sys_sendfile64 fs/read_write.c:1318 [inline]
 __se_sys_sendfile64 fs/read_write.c:1304 [inline]
 __x64_sys_sendfile64+0xf2/0x130 fs/read_write.c:1304
 do_syscall_64+0x39/0x80 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xae

read to 0xffff88810e37afa8 of 8 bytes by task 11206 on cpu 1:
 xas_find_chunk include/linux/xarray.h:1660 [inline]
 xas_next_marked include/linux/xarray.h:1691 [inline]
 find_get_pages_range_tag+0x35c/0x600 mm/filemap.c:2107
 pagevec_lookup_range_tag+0x37/0x50 mm/swap.c:1122
 mpage_prepare_extent_to_map+0x195/0x640 fs/ext4/inode.c:2578
 ext4_writepages+0x97b/0x1e70 fs/ext4/inode.c:2799
 do_writepages+0x7b/0x150 mm/page-writeback.c:2352
 __filemap_fdatawrite_range+0x19d/0x1d0 mm/filemap.c:422
 __filemap_fdatawrite mm/filemap.c:430 [inline]
 filemap_flush+0x1f/0x30 mm/filemap.c:457
 ext4_alloc_da_blocks+0x4a/0x100 fs/ext4/inode.c:3165
 ext4_release_file+0x5b/0x1d0 fs/ext4/file.c:142
 __fput+0x24e/0x4e0 fs/file_table.c:280
 ____fput+0x11/0x20 fs/file_table.c:313
 task_work_run+0x8e/0x110 kernel/task_work.c:140
 tracehook_notify_resume include/linux/tracehook.h:189 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:174 [inline]
 exit_to_user_mode_prepare+0x17c/0x1b0 kernel/entry/common.c:201
 __syscall_exit_to_user_mode_work kernel/entry/common.c:283 [inline]
 syscall_exit_to_user_mode+0x20/0x40 kernel/entry/common.c:294
 do_syscall_64+0x45/0x80 arch/x86/entry/common.c:56
 entry_SYSCALL_64_after_hwframe+0x44/0xae

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

Crashes (49):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2021/02/21 18:53 upstream 55f62bc87347 a659b3f1 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2021/02/15 01:26 upstream f40ddce88593 98682e5e .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2021/02/14 11:43 upstream 358feceebbf6 98682e5e .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2021/02/07 08:55 upstream 825b5991a46e 2ce644fc .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2021/02/06 11:58 upstream 1e0d27fce010 0655e081 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2021/01/28 07:01 upstream 76c057c84d28 eefc07f2 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2021/01/25 08:52 upstream 6ee1d745b7c9 52e37319 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2021/01/21 14:23 upstream 9791581c049c d4f4eca5 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __xa_set_mark / find_get_pages_range_tag
2020/12/30 21:28 upstream f6e1ea196492 ecb8c012 .config console log report info ci2-upstream-kcsan-gce
2020/12/30 02:51 upstream 139711f033f6 0fa352f2 .config console log report info ci2-upstream-kcsan-gce
2020/12/29 13:44 upstream dea8dcf2a9fa 80910769 .config console log report info ci2-upstream-kcsan-gce
2020/12/29 02:10 upstream c76e02c59e13 8259d56c .config console log report info ci2-upstream-kcsan-gce
2020/12/28 14:34 upstream 5c8fe583cce5 8259d56c .config console log report info ci2-upstream-kcsan-gce
2020/12/20 21:43 upstream 6a447b0e3151 04201c06 .config console log report info ci2-upstream-kcsan-gce
2020/12/13 10:04 upstream 6bff9bb8a292 bca53db9 .config console log report info ci2-upstream-kcsan-gce
2020/12/08 20:34 upstream cd796ed33450 40cc414d .config console log report info ci2-upstream-kcsan-gce
2020/12/02 11:43 upstream 509a15421674 eff43e99 .config console log report info ci2-upstream-kcsan-gce
2020/11/30 13:24 upstream b65054597872 76831598 .config console log report info ci2-upstream-kcsan-gce
2020/11/15 03:41 upstream e28c0d7c92c8 1bf9a662 .config console log report info ci2-upstream-kcsan-gce
2020/11/06 22:21 upstream bf3e76289cd2 cba33199 .config console log report info ci2-upstream-kcsan-gce
2020/11/03 09:30 upstream b7cbaf59f62f cba33199 .config console log report info ci2-upstream-kcsan-gce
2020/10/31 11:20 upstream 5fc6b075e165 8bc4594f .config console log report info ci2-upstream-kcsan-gce
2020/10/27 11:23 upstream 4525c8781ec0 94942294 .config console log report info ci2-upstream-kcsan-gce
2020/10/24 11:55 upstream f11901ed723d a1839e81 .config console log report info ci2-upstream-kcsan-gce
2020/10/24 09:20 upstream f11901ed723d 2bb6666c .config console log report info ci2-upstream-kcsan-gce
2020/10/22 19:09 upstream 96485e446260 be6b1582 .config console log report info ci2-upstream-kcsan-gce
2020/10/22 19:07 upstream 96485e446260 be6b1582 .config console log report info ci2-upstream-kcsan-gce
2020/10/18 02:36 upstream 9d9af1007bc0 fea47c01 .config console log report info ci2-upstream-kcsan-gce
2020/10/16 09:31 upstream 9ff9b0d392ea 6e262c73 .config console log report info ci2-upstream-kcsan-gce
2020/09/27 13:00 upstream a1bffa48745a 5dd8aee8 .config console log report info ci2-upstream-kcsan-gce
2020/09/18 05:02 upstream 4cbffc461ec9 8247808b .config console log report info ci2-upstream-kcsan-gce
2020/09/15 17:55 upstream fc4f28bb3daf 9e681632 .config console log report info ci2-upstream-kcsan-gce
2020/09/11 22:40 upstream e8878ab82545 79fb24e2 .config console log report ci2-upstream-kcsan-gce
2020/09/03 19:04 upstream e28f0104343d abf9ba4f .config console log report ci2-upstream-kcsan-gce
2020/08/30 21:19 upstream dcc5c6f013d8 d5a3ae1f .config console log report ci2-upstream-kcsan-gce
2020/08/20 18:47 upstream 7eac66d0456f 70160577 .config console log report ci2-upstream-kcsan-gce
2020/08/05 09:56 upstream c0842fbc1b18 b7129355 .config console log report ci2-upstream-kcsan-gce
2020/07/14 02:28 upstream 0dc589da873b ce4c95b3 .config console log report ci2-upstream-kcsan-gce
2020/07/14 02:23 upstream 0dc589da873b ce4c95b3 .config console log report ci2-upstream-kcsan-gce
2020/07/10 21:56 upstream a581387e415b 18d18b59 .config console log report ci2-upstream-kcsan-gce
2020/07/10 21:55 upstream a581387e415b 18d18b59 .config console log report ci2-upstream-kcsan-gce
2020/07/06 19:53 upstream 5c82ec00dd00 ef278c73 .config console log report ci2-upstream-kcsan-gce
2020/07/02 10:35 upstream cd77006e01b3 f30c14bf .config console log report ci2-upstream-kcsan-gce
2020/07/01 14:39 upstream 7c30b859a947 39acb39d .config console log report ci2-upstream-kcsan-gce
2020/07/01 14:18 upstream 7c30b859a947 39acb39d .config console log report ci2-upstream-kcsan-gce
2020/06/29 22:51 upstream 7c30b859a947 917afeaa .config console log report ci2-upstream-kcsan-gce
2020/06/29 19:13 upstream 7c30b859a947 ce9ef6f2 .config console log report ci2-upstream-kcsan-gce
2020/06/29 15:14 upstream 9ebcfadb0610 ce9ef6f2 .config console log report ci2-upstream-kcsan-gce
2020/06/18 14:15 upstream 1b5044021070 3ea11d3f .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.