syzbot


KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range

Status: moderation: reported on 2022/01/06 20:11
Labels: fs mm (incorrect?)
Reported-by: syzbot+06d291120ff02d083cb8@syzkaller.appspotmail.com
First crash: 583d, last: 1d12h

Sample crash report:
==================================================================
BUG: KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range

read-write to 0xffff88810a220868 of 8 bytes by task 27742 on cpu 1:
 __filemap_add_folio+0x385/0x730 mm/filemap.c:904
 filemap_add_folio+0x6f/0x150 mm/filemap.c:939
 page_cache_ra_unbounded+0x15e/0x2e0 mm/readahead.c:251
 do_page_cache_ra mm/readahead.c:300 [inline]
 page_cache_ra_order mm/readahead.c:560 [inline]
 ondemand_readahead+0x550/0x6c0 mm/readahead.c:682
 page_cache_async_ra+0x9d/0xb0 mm/readahead.c:731
 do_async_mmap_readahead mm/filemap.c:3215 [inline]
 filemap_fault+0x38a/0xb70 mm/filemap.c:3269
 __do_fault mm/memory.c:4176 [inline]
 do_read_fault mm/memory.c:4530 [inline]
 do_fault mm/memory.c:4659 [inline]
 do_pte_missing mm/memory.c:3647 [inline]
 handle_pte_fault mm/memory.c:4947 [inline]
 __handle_mm_fault mm/memory.c:5089 [inline]
 handle_mm_fault+0x12f4/0x2c60 mm/memory.c:5243
 faultin_page mm/gup.c:925 [inline]
 __get_user_pages+0x363/0xc30 mm/gup.c:1147
 populate_vma_page_range mm/gup.c:1543 [inline]
 __mm_populate+0x23d/0x370 mm/gup.c:1652
 mm_populate include/linux/mm.h:3153 [inline]
 vm_mmap_pgoff+0x1a3/0x240 mm/util.c:548
 ksys_mmap_pgoff+0x2ac/0x320 mm/mmap.c:1440
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd

read to 0xffff88810a220868 of 8 bytes by task 27739 on cpu 0:
 mapping_needs_writeback mm/filemap.c:628 [inline]
 filemap_write_and_wait_range+0x54/0x220 mm/filemap.c:677
 __iomap_dio_rw+0x5dc/0x1100 fs/iomap/direct-io.c:569
 iomap_dio_rw+0x40/0x90 fs/iomap/direct-io.c:688
 ext4_dio_read_iter fs/ext4/file.c:94 [inline]
 ext4_file_read_iter+0x210/0x290 fs/ext4/file.c:145
 call_read_iter include/linux/fs.h:1862 [inline]
 generic_file_splice_read+0xe3/0x290 fs/splice.c:419
 do_splice_to fs/splice.c:902 [inline]
 splice_direct_to_actor+0x25a/0x5f0 fs/splice.c:973
 do_splice_direct+0x104/0x180 fs/splice.c:1082
 do_sendfile+0x3b8/0x950 fs/read_write.c:1254
 __do_sys_sendfile64 fs/read_write.c:1322 [inline]
 __se_sys_sendfile64 fs/read_write.c:1308 [inline]
 __x64_sys_sendfile64+0x110/0x150 fs/read_write.c:1308
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd

value changed: 0x00000000000006e8 -> 0x00000000000006ed

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 27739 Comm: syz-executor.3 Not tainted 6.4.0-rc5-syzkaller-00016-ga4d7d7011219 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/25/2023
==================================================================

Crashes (452):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets Manager Title
2023/06/07 03:57 upstream a4d7d7011219 a4ae4f42 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/06/04 21:56 upstream 9561de3a55be a4ae4f42 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/06/03 23:38 upstream 51f269a6ecc7 a4ae4f42 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/06/03 11:37 upstream 4ecd704a4c51 a4ae4f42 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/30 18:24 upstream 8b817fded42d df37c7f1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/28 11:10 upstream 416839029e38 cf184559 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/27 11:19 upstream 49572d536129 cf184559 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/25 16:47 upstream 933174ae28ba 0513b3e6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/21 21:21 upstream e2065b8c1b01 4bce1a3e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/21 03:27 upstream 0dd2a6fb1e34 4bce1a3e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/19 00:26 upstream 2d1bcbc6cd70 3bb7af1d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/16 15:22 upstream f1fcbaa18b28 11c89444 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/13 23:31 upstream d4d58949a6ea 2b9ba477 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/08 22:08 upstream ba0ad6ed89fd c7a5e2a0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/08 14:03 upstream ac9a78681b92 90c93c40 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/07 04:50 upstream fc4354c6e5c2 90c93c40 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/06 16:38 upstream 2e1e1337881b 90c93c40 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/05/04 19:11 upstream 1a5304fecee5 518a39a6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/29 00:54 upstream 33afd4b76393 62df2017 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/27 16:24 upstream 6e98b09da931 6f3d6fa7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/26 11:39 upstream 0cfd8703e7da 8d843721 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/25 12:16 upstream 1a0beef98b58 65320f8e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/23 06:54 upstream 2caeeb9d4a1b 2b32bd34 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/21 15:46 upstream 2af3e53a4dc0 2b32bd34 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/20 09:52 upstream cb0856346a60 a219f34e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/18 20:00 upstream af67688dca57 d931e9f0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/17 17:10 upstream 6a8f57ae2eb0 c6ec7083 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/17 04:12 upstream 6a8f57ae2eb0 ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/16 00:21 upstream a7a55e27ad72 ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/15 14:53 upstream 7a934f4bd7d6 ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/14 19:11 upstream 95abc817ab3a ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/14 02:26 upstream 44149752e998 3cfcaa1b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/13 17:35 upstream de4664485abb 3cfcaa1b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/13 09:57 upstream de4664485abb 82d5e53e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/12 20:19 upstream 0bcc40255504 82d5e53e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/11 12:12 upstream 0d3eb744aed4 71147e29 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/09 13:46 upstream cdc9718d5e59 71147e29 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/07 06:52 upstream f2afccfefe7b 00ce4c67 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/06 01:06 upstream 99ddf2254feb 8b834965 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/04/02 03:21 upstream 00c7b5f4ddc5 f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/03/31 05:45 upstream 8bb95a1662f8 f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/03/28 22:35 upstream fcd476ea6a88 fc067f05 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2023/03/28 02:57 upstream 3a93e40326c8 47f3aaf1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2022/01/06 17:04 upstream 75acfdb6fd92 6acc789a .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
2021/11/01 23:42 upstream e66435936756 098b5d53 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in __filemap_add_folio / filemap_write_and_wait_range
* Struck through repros no longer work on HEAD.