================================================================== BUG: KCSAN: data-race in enqueue_timer / wbt_wait write to 0xffff88812a0bd518 of 8 bytes by interrupt on cpu 1: hlist_add_head include/linux/list.h:789 [inline] enqueue_timer+0x9c/0x210 kernel/time/timer.c:540 __internal_add_timer+0x4f/0x60 kernel/time/timer.c:553 internal_add_timer kernel/time/timer.c:595 [inline] __mod_timer kernel/time/timer.c:1053 [inline] mod_timer+0x303/0x7a0 kernel/time/timer.c:1100 blk_stat_activate_nsecs block/blk-stat.h:145 [inline] rwb_arm_timer+0x98/0xf0 block/blk-wbt.c:349 wb_timer_fn+0x311/0xad0 block/blk-wbt.c:405 blk_stat_timer_fn+0x3b0/0x3d0 block/blk-stat.c:99 call_timer_fn+0x5f/0x2f0 kernel/time/timer.c:1404 expire_timers kernel/time/timer.c:1449 [inline] __run_timers kernel/time/timer.c:1773 [inline] __run_timers kernel/time/timer.c:1740 [inline] run_timer_softirq+0xc0c/0xcd0 kernel/time/timer.c:1786 __do_softirq+0x115/0x33f kernel/softirq.c:292 invoke_softirq kernel/softirq.c:373 [inline] irq_exit+0xbb/0xe0 kernel/softirq.c:413 exiting_irq arch/x86/include/asm/apic.h:536 [inline] smp_apic_timer_interrupt+0xe6/0x280 arch/x86/kernel/apic/apic.c:1137 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:829 is_atomic kernel/kcsan/core.c:174 [inline] should_watch kernel/kcsan/core.c:203 [inline] check_access kernel/kcsan/core.c:458 [inline] __tsan_read8+0x8a/0x100 kernel/kcsan/core.c:589 pv_queued_spin_unlock arch/x86/include/asm/paravirt.h:643 [inline] queued_spin_unlock arch/x86/include/asm/qspinlock.h:55 [inline] do_raw_spin_unlock include/linux/spinlock.h:210 [inline] __raw_spin_unlock include/linux/spinlock_api_smp.h:151 [inline] _raw_spin_unlock+0x1d/0x60 kernel/locking/spinlock.c:183 spin_unlock include/linux/spinlock.h:378 [inline] fat12_ent_put+0xd7/0x1b0 fs/fat/fatent.c:169 fat_alloc_clusters+0x507/0xc40 fs/fat/fatent.c:501 fat_add_cluster+0x3d/0xd0 fs/fat/inode.c:107 __fat_get_block fs/fat/inode.c:154 [inline] fat_get_block+0x3ae/0x4e0 fs/fat/inode.c:189 __block_write_begin_int+0x2ea/0xf10 fs/buffer.c:2008 __block_write_begin fs/buffer.c:2058 [inline] block_write_begin+0x77/0x160 fs/buffer.c:2117 cont_write_begin+0x3d6/0x670 fs/buffer.c:2466 fat_write_begin+0x72/0xc0 fs/fat/inode.c:235 generic_perform_write+0x136/0x320 mm/filemap.c:3309 __generic_file_write_iter+0x251/0x380 mm/filemap.c:3438 generic_file_write_iter+0x28c/0x38c mm/filemap.c:3470 call_write_iter include/linux/fs.h:1902 [inline] aio_write+0x1de/0x2d0 fs/aio.c:1583 __io_submit_one fs/aio.c:1815 [inline] io_submit_one+0x61d/0xdb0 fs/aio.c:1862 __do_sys_io_submit fs/aio.c:1921 [inline] __se_sys_io_submit fs/aio.c:1891 [inline] __x64_sys_io_submit+0x104/0x2a0 fs/aio.c:1891 do_syscall_64+0xcc/0x3a0 arch/x86/entry/common.c:294 entry_SYSCALL_64_after_hwframe+0x44/0xa9 read to 0xffff88812a0bd518 of 8 bytes by task 7872 on cpu 0: blk_stat_is_active block/blk-stat.h:131 [inline] wbt_wait+0x177/0x250 block/blk-wbt.c:593 __rq_qos_throttle+0x47/0x70 block/blk-rq-qos.c:72 rq_qos_throttle block/blk-rq-qos.h:182 [inline] blk_mq_make_request+0x29c/0xf60 block/blk-mq.c:1932 generic_make_request block/blk-core.c:1066 [inline] generic_make_request+0x196/0x700 block/blk-core.c:1008 submit_bio+0x96/0x3c0 block/blk-core.c:1192 submit_bh_wbc+0x40f/0x460 fs/buffer.c:3135 __block_write_full_page+0x4e9/0x870 fs/buffer.c:1807 block_write_full_page+0x1c0/0x1e0 fs/buffer.c:2993 fat_writepage+0x2e/0x40 fs/fat/inode.c:198 __mpage_writepage+0x837/0xe70 fs/mpage.c:678 write_cache_pages+0x47a/0xb40 mm/page-writeback.c:2238 mpage_writepages+0xab/0x180 fs/mpage.c:730 fat_writepages+0x2e/0x40 fs/fat/inode.c:204 do_writepages+0x6b/0x170 mm/page-writeback.c:2344 __writeback_single_inode+0xaf/0x8e0 fs/fs-writeback.c:1452 writeback_sb_inodes+0x4ba/0xa50 fs/fs-writeback.c:1716 wb_writeback+0x1f9/0x6a0 fs/fs-writeback.c:1892 wb_do_writeback fs/fs-writeback.c:2037 [inline] wb_workfn+0x22e/0x970 fs/fs-writeback.c:2078 process_one_work+0x3d4/0x890 kernel/workqueue.c:2264 worker_thread+0xa0/0x800 kernel/workqueue.c:2410 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: 0 PID: 7872 Comm: kworker/u4:5 Not tainted 5.5.0-rc1-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: writeback wb_workfn (flush-7:5) ==================================================================