syzbot


KCSAN: data-race in kthread_insert_work / kthread_worker_fn (2)

Status: closed as invalid on 2020/06/18 14:24
Subsystems: block
[Documentation on labels]
First crash: 2003d, last: 2003d
Similar bugs (2)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in kthread_insert_work / kthread_worker_fn block 6 1 2096d 2096d 0/29 auto-closed as invalid on 2020/03/26 10:23
upstream KCSAN: data-race in kthread_insert_work / kthread_worker_fn (3) block 6 3 1573d 1611d 0/29 auto-closed as invalid on 2021/07/26 20:01

Sample crash report:
==================================================================
BUG: KCSAN: data-race in kthread_insert_work / kthread_worker_fn

write to 0xffff88821aa59940 of 8 bytes by task 10595 on cpu 0:
 kthread_worker_fn+0x7e/0x3c0 kernel/kthread.c:656
 loop_kthread_worker_fn+0x49/0x60 drivers/block/loop.c:923
 kthread+0x203/0x230 kernel/kthread.c:268
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:352

read to 0xffff88821aa59940 of 8 bytes by task 10585 on cpu 1:
 kthread_insert_work kernel/kthread.c:815 [inline]
 kthread_insert_work+0x10c/0x130 kernel/kthread.c:807
 kthread_queue_work+0xcc/0xe0 kernel/kthread.c:839
 loop_queue_rq+0x237/0x280 drivers/block/loop.c:1957
 blk_mq_dispatch_rq_list+0x9dc/0xe80 block/blk-mq.c:1263
 blk_mq_do_dispatch_sched+0x12b/0x270 block/blk-mq-sched.c:115
 blk_mq_sched_dispatch_requests+0x2b6/0x380 block/blk-mq-sched.c:211
 __blk_mq_run_hw_queue+0xb1/0x150 block/blk-mq.c:1389
 __blk_mq_delay_run_hw_queue+0x315/0x390 block/blk-mq.c:1466
 blk_mq_run_hw_queue+0xfa/0x1b0 block/blk-mq.c:1519
 blk_mq_sched_insert_requests+0x19c/0x270 block/blk-mq-sched.c:474
 blk_mq_flush_plug_list+0x2f0/0x4c0 block/blk-mq.c:1769
 blk_flush_plug_list+0x281/0x2b0 block/blk-core.c:1760
 blk_mq_make_request+0x659/0xf60 block/blk-mq.c:2041
 generic_make_request block/blk-core.c:1075 [inline]
 generic_make_request+0x196/0x700 block/blk-core.c:1017
 submit_bio+0x8f/0x3a0 block/blk-core.c:1200
 submit_bh_wbc+0x40d/0x460 fs/buffer.c:3063
 __block_write_full_page+0x4f5/0x8e0 fs/buffer.c:1801
 block_write_full_page+0x1ba/0x1d0 fs/buffer.c:2987
 blkdev_writepage+0x2b/0x40 fs/block_dev.c:610
 __writepage+0x3d/0xb0 mm/page-writeback.c:2303
 write_cache_pages+0x400/0xa10 mm/page-writeback.c:2238
 generic_writepages mm/page-writeback.c:2329 [inline]
 generic_writepages+0x79/0xc0 mm/page-writeback.c:2318
 blkdev_writepages+0x23/0x40 fs/block_dev.c:2074
 do_writepages+0x6b/0x170 mm/page-writeback.c:2344
 __filemap_fdatawrite_range+0x1bb/0x220 mm/filemap.c:421
 filemap_write_and_wait_range mm/filemap.c:654 [inline]
 filemap_write_and_wait_range+0xad/0x140 mm/filemap.c:648
 filemap_write_and_wait include/linux/fs.h:2767 [inline]
 __sync_blockdev+0x62/0x90 fs/block_dev.c:492
 sync_blockdev fs/block_dev.c:501 [inline]
 __blkdev_put+0xfb/0x3e0 fs/block_dev.c:1902
 blkdev_put+0x84/0x2b0 fs/block_dev.c:1971
 blkdev_close+0x4e/0x60 fs/block_dev.c:1978
 __fput+0x1e9/0x500 fs/file_table.c:280
 ____fput+0x1b/0x30 fs/file_table.c:313
 task_work_run+0xba/0x120 kernel/task_work.c:123
 tracehook_notify_resume include/linux/tracehook.h:188 [inline]
 exit_to_usermode_loop+0x2ae/0x2c0 arch/x86/entry/common.c:165
 prepare_exit_to_usermode arch/x86/entry/common.c:196 [inline]
 syscall_return_slowpath arch/x86/entry/common.c:279 [inline]
 do_syscall_64+0x38b/0x3b0 arch/x86/entry/common.c:305
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 10585 Comm: syz-executor.4 Not tainted 5.7.0-rc1-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
2020/04/17 18:51 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 18397578 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.