syzbot


upstream test error: KCSAN: data-race in __xa_clear_mark / xas_find_marked

Status: moderation: reported on 2024/06/23 10:31
Subsystems: fs mm
[Documentation on labels]
Reported-by: syzbot+ff72155e2a37eceb7ec3@syzkaller.appspotmail.com
First crash: 19d, last: 19d

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

read-write to 0xffff8881057ec908 of 8 bytes by task 11 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:915 [inline]
 __xa_clear_mark+0xf8/0x1f0 lib/xarray.c:1957
 __folio_end_writeback+0x18f/0x4a0 mm/page-writeback.c:3036
 folio_end_writeback+0x74/0x1f0 mm/filemap.c:1632
 ext4_finish_bio+0x476/0x8e0 fs/ext4/page-io.c:144
 ext4_release_io_end+0x8c/0x1f0 fs/ext4/page-io.c:159
 ext4_end_io_end fs/ext4/page-io.c:193 [inline]
 ext4_do_flush_completed_IO fs/ext4/page-io.c:258 [inline]
 ext4_end_io_rsv_work+0x2d3/0x370 fs/ext4/page-io.c:272
 process_one_work kernel/workqueue.c:3231 [inline]
 process_scheduled_works+0x483/0x9a0 kernel/workqueue.c:3312
 worker_thread+0x526/0x730 kernel/workqueue.c:3393
 kthread+0x1d1/0x210 kernel/kthread.c:389
 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244

read to 0xffff8881057ec908 of 8 bytes by task 3188 on cpu 1:
 xas_find_chunk include/linux/xarray.h:1733 [inline]
 xas_find_marked+0x216/0x660 lib/xarray.c:1370
 find_get_entry+0x5d/0x290 mm/filemap.c:1992
 filemap_get_folios_tag+0x136/0x210 mm/filemap.c:2242
 __filemap_fdatawait_range mm/filemap.c:523 [inline]
 filemap_fdatawait_keep_errors+0x6a/0x180 mm/filemap.c:627
 wait_sb_inodes fs/fs-writeback.c:2673 [inline]
 sync_inodes_sb+0x3bb/0x460 fs/fs-writeback.c:2795
 sync_inodes_one_sb+0x3d/0x50 fs/sync.c:77
 iterate_supers+0xa3/0x140 fs/super.c:923
 ksys_sync+0x5d/0xe0 fs/sync.c:102
 __do_sys_sync+0xe/0x20 fs/sync.c:113
 x64_sys_call+0xb99/0x2d70 arch/x86/include/generated/asm/syscalls_64.h:163
 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: 0xffffffffffff0000 -> 0xffffffff00000000

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 3188 Comm: syz-executor.4 Not tainted 6.10.0-rc4-syzkaller-00301-g5f583a3162ff #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/06/23 10:30 upstream 5f583a3162ff edc5149a .config console log report [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce upstream test error: KCSAN: data-race in __xa_clear_mark / xas_find_marked
* Struck through repros no longer work on HEAD.