syzbot


KCSAN: data-race in xas_create / xas_find_marked (7)

Status: moderation: reported on 2024/11/01 12:36
Subsystems: fs mm
[Documentation on labels]
Reported-by: syzbot+39258811f6f9c7d5970c@syzkaller.appspotmail.com
First crash: 5d13h, last: 5d13h
Similar bugs (6)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in xas_create / xas_find_marked (4) fs mm 2 732d 736d 0/28 auto-obsoleted due to no activity on 2022/12/10 21:02
upstream KCSAN: data-race in xas_create / xas_find_marked (6) mm fs 3 277d 312d 0/28 auto-obsoleted due to no activity on 2024/03/09 19:07
upstream KCSAN: data-race in xas_create / xas_find_marked (2) fs mm 1 1108d 1108d 0/28 auto-closed as invalid on 2021/11/29 22:24
upstream KCSAN: data-race in xas_create / xas_find_marked (3) fs mm 1 906d 906d 0/28 auto-closed as invalid on 2022/06/19 06:15
upstream KCSAN: data-race in xas_create / xas_find_marked (5) fs mm 3 389d 425d 0/28 auto-obsoleted due to no activity on 2023/11/18 23:30
upstream KCSAN: data-race in xas_create / xas_find_marked fs mm 1 1196d 1196d 0/28 auto-closed as invalid on 2021/09/03 00:06

Sample crash report:
loop8: detected capacity change from 0 to 2048
==================================================================
BUG: KCSAN: data-race in xas_create / xas_find_marked

write to 0xffff8881066af489 of 1 bytes by task 3511 on cpu 1:
 xas_expand lib/xarray.c:613 [inline]
 xas_create+0x666/0xbd0 lib/xarray.c:654
 xas_store+0x6f/0xc90 lib/xarray.c:788
 __filemap_add_folio+0x3cc/0x6f0 mm/filemap.c:916
 filemap_add_folio+0x9c/0x1b0 mm/filemap.c:972
 page_cache_ra_unbounded+0x175/0x310 mm/readahead.c:268
 do_page_cache_ra mm/readahead.c:320 [inline]
 force_page_cache_ra mm/readahead.c:349 [inline]
 page_cache_sync_ra+0x252/0x670 mm/readahead.c:562
 page_cache_sync_readahead include/linux/pagemap.h:1394 [inline]
 filemap_get_pages+0x2c1/0x10e0 mm/filemap.c:2547
 filemap_read+0x216/0x680 mm/filemap.c:2645
 blkdev_read_iter+0x20e/0x2c0 block/fops.c:765
 new_sync_read fs/read_write.c:488 [inline]
 vfs_read+0x5dc/0x700 fs/read_write.c:569
 ksys_read+0xeb/0x1b0 fs/read_write.c:712
 __do_sys_read fs/read_write.c:722 [inline]
 __se_sys_read fs/read_write.c:720 [inline]
 __x64_sys_read+0x42/0x50 fs/read_write.c:720
 x64_sys_call+0x27d3/0x2d60 arch/x86/include/generated/asm/syscalls_64.h:1
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff8881066af489 of 1 bytes by task 29428 on cpu 0:
 xas_find_marked+0x412/0x660 lib/xarray.c:1354
 find_get_entry+0x54/0x390 mm/filemap.c:1994
 filemap_get_folios_tag+0x9e/0x210 mm/filemap.c:2261
 __filemap_fdatawait_range mm/filemap.c:524 [inline]
 filemap_write_and_wait_range+0x138/0x2c0 mm/filemap.c:694
 filemap_write_and_wait include/linux/pagemap.h:68 [inline]
 sync_blockdev block/bdev.c:219 [inline]
 set_blocksize+0x1d0/0x270 block/bdev.c:171
 sb_set_blocksize+0x2c/0xb0 block/bdev.c:182
 ext4_load_super fs/ext4/super.c:5061 [inline]
 __ext4_fill_super fs/ext4/super.c:5213 [inline]
 ext4_fill_super+0xdca/0x3a10 fs/ext4/super.c:5686
 get_tree_bdev+0x256/0x2e0 fs/super.c:1635
 ext4_get_tree+0x1c/0x30 fs/ext4/super.c:5718
 vfs_get_tree+0x56/0x1e0 fs/super.c:1800
 do_new_mount+0x227/0x690 fs/namespace.c:3507
 path_mount+0x49b/0xb30 fs/namespace.c:3834
 do_mount fs/namespace.c:3847 [inline]
 __do_sys_mount fs/namespace.c:4057 [inline]
 __se_sys_mount+0x27c/0x2d0 fs/namespace.c:4034
 __x64_sys_mount+0x67/0x80 fs/namespace.c:4034
 x64_sys_call+0x203e/0x2d60 arch/x86/include/generated/asm/syscalls_64.h:166
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x05 -> 0x00

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 29428 Comm: syz.8.4329 Not tainted 6.12.0-rc5-syzkaller-00176-g5635f189425e #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
==================================================================
EXT4-fs (loop8): mounted filesystem 00000000-0000-0000-0000-000000000000 r/w without journal. Quota mode: none.

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/11/01 12:35 upstream 5635f189425e 96eb609f .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in xas_create / xas_find_marked
* Struck through repros no longer work on HEAD.