syzbot


KCSAN: data-race in sync_inodes_sb / xas_clear_mark

Status: auto-closed as invalid on 2020/04/10 23:48
Subsystems: overlayfs
[Documentation on labels]
First crash: 1601d, last: 1546d

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

read to 0xffff8881252246e4 of 4 bytes by task 27667 on cpu 0:
 mapping_tagged include/linux/fs.h:521 [inline]
 wait_sb_inodes fs/fs-writeback.c:2415 [inline]
 sync_inodes_sb+0x3d9/0x530 fs/fs-writeback.c:2558
 __sync_filesystem fs/sync.c:34 [inline]
 sync_filesystem fs/sync.c:67 [inline]
 sync_filesystem+0x138/0x1a0 fs/sync.c:48
 ovl_sync_fs+0x92/0xa0 fs/overlayfs/super.c:276
 __sync_filesystem fs/sync.c:39 [inline]
 sync_filesystem fs/sync.c:67 [inline]
 sync_filesystem+0x168/0x1a0 fs/sync.c:48
 generic_shutdown_super+0x6b/0x260 fs/super.c:448
 kill_anon_super+0x2f/0x50 fs/super.c:1106
 deactivate_locked_super+0x64/0xb0 fs/super.c:335
 deactivate_super fs/super.c:366 [inline]
 deactivate_super+0xca/0xe0 fs/super.c:362
 cleanup_mnt+0x27f/0x330 fs/namespace.c:1102
 __cleanup_mnt+0x1f/0x30 fs/namespace.c:1109
 task_work_run+0xf6/0x130 kernel/task_work.c:113
 tracehook_notify_resume include/linux/tracehook.h:188 [inline]
 exit_to_usermode_loop+0x2b4/0x2c0 arch/x86/entry/common.c:164
 prepare_exit_to_usermode arch/x86/entry/common.c:195 [inline]
 syscall_return_slowpath arch/x86/entry/common.c:278 [inline]
 do_syscall_64+0x384/0x3a0 arch/x86/entry/common.c:304
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

write to 0xffff8881252246e4 of 4 bytes by interrupt on cpu 1:
 xa_mark_clear lib/xarray.c:74 [inline]
 xas_clear_mark lib/xarray.c:917 [inline]
 xas_clear_mark+0x171/0x180 lib/xarray.c:898
 __xa_clear_mark+0xd3/0x100 lib/xarray.c:1717
 test_clear_page_writeback+0x44c/0x790 mm/page-writeback.c:2731
 end_page_writeback+0x9e/0x190 mm/filemap.c:1339
 ext4_finish_bio+0x40d/0x520 fs/ext4/page-io.c:148
 ext4_end_bio+0xd2/0x2f0 fs/ext4/page-io.c:370
 bio_endio+0x2fa/0x400 block/bio.c:1821
 req_bio_endio block/blk-core.c:245 [inline]
 blk_update_request+0x427/0x7b0 block/blk-core.c:1464
 scsi_end_request+0x6b/0x360 drivers/scsi/scsi_lib.c:576
 scsi_io_completion+0x11d/0xc80 drivers/scsi/scsi_lib.c:960
 scsi_finish_command+0x283/0x380 drivers/scsi/scsi.c:228
 scsi_softirq_done+0x259/0x280 drivers/scsi/scsi_lib.c:1476
 blk_done_softirq+0x1eb/0x250 block/blk-softirq.c:37
 __do_softirq+0x115/0x33f kernel/softirq.c:292
 run_ksoftirqd+0x46/0x60 kernel/softirq.c:603
 smpboot_thread_fn+0x37d/0x4a0 kernel/smpboot.c:165
 kthread+0x1d4/0x200 drivers/block/aoe/aoecmd.c:1253
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:352

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 16 Comm: ksoftirqd/1 Not tainted 5.5.0-rc1-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/01/31 23:41 https://github.com/google/ktsan.git kcsan 245a43005292 0eb59c27 .config console log report ci2-upstream-kcsan-gce
2019/12/08 12:29 https://github.com/google/ktsan.git kcsan ef798c30ba4e 1508f453 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.