syzbot


KCSAN: data-race in xas_find_marked / xas_init_marks (5)

Status: moderation: reported on 2025/03/20 03:45
Subsystems: ext4
[Documentation on labels]
Reported-by: syzbot+f8fb17c006cf6a2bbbb1@syzkaller.appspotmail.com
First crash: 5d18h, last: 5d18h
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in xas_find_marked / xas_init_marks (3) ext4 1 214d 214d 0/28 auto-obsoleted due to no activity on 2024/09/27 13:38
upstream KCSAN: data-race in xas_find_marked / xas_init_marks (2) ext4 820 246d 1393d 0/28 auto-obsoleted due to no activity on 2024/08/19 12:59
upstream KCSAN: data-race in xas_find_marked / xas_init_marks (4) exfat ext4 5 137d 162d 0/28 auto-obsoleted due to no activity on 2025/01/03 11:34
upstream KCSAN: data-race in xas_find_marked / xas_init_marks ext4 11 1615d 1706d 0/28 auto-closed as invalid on 2020/11/26 04:55

Sample crash report:
==================================================================
BUG: KCSAN: data-race in xas_find_marked / xas_init_marks

read-write to 0xffff8881066db230 of 8 bytes by task 5500 on cpu 0:
 instrument_read_write include/linux/instrumented.h:55 [inline]
 __instrument_read_write_bitop include/asm-generic/bitops/instrumented-non-atomic.h:84 [inline]
 ___test_and_clear_bit include/asm-generic/bitops/instrumented-non-atomic.h:114 [inline]
 node_clear_mark lib/xarray.c:102 [inline]
 xas_clear_mark lib/xarray.c:921 [inline]
 xas_init_marks+0x17e/0x320 lib/xarray.c:954
 xas_store+0x228/0xc90 lib/xarray.c:816
 page_cache_delete_batch mm/filemap.c:312 [inline]
 delete_from_page_cache_batch+0x31c/0x700 mm/filemap.c:334
 truncate_inode_pages_range+0x1c5/0x6b0 mm/truncate.c:327
 truncate_inode_pages mm/truncate.c:407 [inline]
 truncate_pagecache+0x53/0x70 mm/truncate.c:716
 ext4_setattr+0xa01/0xf60 fs/ext4/inode.c:5536
 notify_change+0x85c/0x8e0 fs/attr.c:552
 do_truncate fs/open.c:65 [inline]
 do_ftruncate+0x332/0x440 fs/open.c:192
 do_sys_ftruncate fs/open.c:207 [inline]
 __do_sys_ftruncate fs/open.c:212 [inline]
 __se_sys_ftruncate fs/open.c:210 [inline]
 __x64_sys_ftruncate+0x67/0xc0 fs/open.c:210
 x64_sys_call+0x9d9/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:78
 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 0xffff8881066db230 of 8 bytes by task 5497 on cpu 1:
 xas_find_chunk include/linux/xarray.h:1733 [inline]
 xas_find_marked+0x217/0x650 lib/xarray.c:1377
 find_get_entry+0x54/0x390 mm/filemap.c:2027
 filemap_get_folios_tag+0x136/0x210 mm/filemap.c:2294
 mpage_prepare_extent_to_map+0x329/0xb80 fs/ext4/inode.c:2448
 ext4_do_writepages+0x6ea/0x2130 fs/ext4/inode.c:2688
 ext4_writepages+0x159/0x2e0 fs/ext4/inode.c:2824
 do_writepages+0x1d8/0x480 mm/page-writeback.c:2687
 filemap_fdatawrite_wbc mm/filemap.c:388 [inline]
 __filemap_fdatawrite_range mm/filemap.c:421 [inline]
 file_write_and_wait_range+0x168/0x2f0 mm/filemap.c:796
 generic_buffers_fsync_noflush+0x46/0x120 fs/buffer.c:600
 ext4_fsync_nojournal fs/ext4/fsync.c:88 [inline]
 ext4_sync_file+0x1ff/0x6c0 fs/ext4/fsync.c:151
 vfs_fsync_range fs/sync.c:187 [inline]
 vfs_fsync fs/sync.c:201 [inline]
 do_fsync fs/sync.c:212 [inline]
 __do_sys_fdatasync fs/sync.c:222 [inline]
 __se_sys_fdatasync fs/sync.c:220 [inline]
 __x64_sys_fdatasync+0x7e/0xd0 fs/sync.c:220
 x64_sys_call+0x15e1/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:76
 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: 0xfffffff000000000 -> 0xffffe00000000000

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 5497 Comm: syz.4.717 Tainted: G        W          6.14.0-rc7-syzkaller-00074-ga7f2e10ecd8f #0
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/03/20 03:45 upstream a7f2e10ecd8f e20d7b13 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in xas_find_marked / xas_init_marks
* Struck through repros no longer work on HEAD.