syzbot


KCSAN: data-race in filemap_flush / xas_clear_mark

Status: auto-closed as invalid on 2021/12/28 09:01
Subsystems: fs mm
[Documentation on labels]
First crash: 1351d, last: 1351d

Sample crash report:
==================================================================
BUG: KCSAN: data-race in filemap_flush / xas_clear_mark

write to 0xffff88810136fc04 of 4 bytes by task 2748 on cpu 0:
 xa_mark_clear lib/xarray.c:75 [inline]
 xas_clear_mark+0x15a/0x170 lib/xarray.c:921
 __folio_start_writeback+0x30e/0x490 mm/page-writeback.c:2886
 set_page_writeback+0x39/0x50 mm/folio-compat.c:77
 __block_write_full_page+0x5cf/0xa10 fs/buffer.c:1804
 block_write_full_page+0x1f0/0x210
 blkdev_writepage+0x20/0x30 block/fops.c:391
 __writepage+0x38/0xd0 mm/page-writeback.c:2320
 write_cache_pages+0x454/0x7f0 mm/page-writeback.c:2255
 generic_writepages+0x7c/0xc0 mm/page-writeback.c:2346
 blkdev_writepages+0x19/0x20 block/fops.c:428
 do_writepages+0x1cb/0x330 mm/page-writeback.c:2364
 __writeback_single_inode+0x80/0x4d0 fs/fs-writeback.c:1616
 writeback_sb_inodes+0x677/0xdf0 fs/fs-writeback.c:1881
 __writeback_inodes_wb+0xb0/0x2b0 fs/fs-writeback.c:1951
 wb_writeback+0x280/0x650 fs/fs-writeback.c:2056
 wb_check_background_flush fs/fs-writeback.c:2122 [inline]
 wb_do_writeback+0x51d/0x560 fs/fs-writeback.c:2210
 wb_workfn+0xc8/0x440 fs/fs-writeback.c:2238
 process_one_work+0x3fc/0x980 kernel/workqueue.c:2298
 worker_thread+0x616/0xa70 kernel/workqueue.c:2445
 kthread+0x2c7/0x2e0 kernel/kthread.c:327
 ret_from_fork+0x1f/0x30

read to 0xffff88810136fc04 of 4 bytes by task 25302 on cpu 1:
 xa_marked include/linux/xarray.h:418 [inline]
 mapping_tagged include/linux/fs.h:493 [inline]
 filemap_fdatawrite_wbc mm/filemap.c:403 [inline]
 __filemap_fdatawrite_range mm/filemap.c:440 [inline]
 __filemap_fdatawrite mm/filemap.c:446 [inline]
 filemap_flush+0xa2/0x100 mm/filemap.c:473
 sync_blockdev_nowait+0x32/0x40 block/bdev.c:192
 sync_filesystem+0xc9/0x150 fs/sync.c:57
 generic_shutdown_super+0x40/0x250 fs/super.c:448
 kill_block_super+0x4a/0x90 fs/super.c:1397
 deactivate_locked_super+0x6a/0xb0 fs/super.c:335
 deactivate_super+0x85/0x90 fs/super.c:366
 cleanup_mnt+0x267/0x2d0 fs/namespace.c:1137
 __cleanup_mnt+0x15/0x20 fs/namespace.c:1144
 task_work_run+0x8e/0x110 kernel/task_work.c:164
 tracehook_notify_resume include/linux/tracehook.h:189 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:175 [inline]
 exit_to_user_mode_prepare+0x160/0x190 kernel/entry/common.c:207
 __syscall_exit_to_user_mode_work kernel/entry/common.c:289 [inline]
 syscall_exit_to_user_mode+0x20/0x40 kernel/entry/common.c:300
 do_syscall_64+0x50/0xd0 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x44/0xae

value changed: 0x06000021 -> 0x00000021

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

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2021/11/23 08:58 upstream 136057256686 545ab074 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in filemap_flush / xas_clear_mark
* Struck through repros no longer work on HEAD.