================================================================== BUG: KCSAN: data-race in test_clear_page_writeback / writeout_period write to 0xffffffff84176490 of 8 bytes by interrupt on cpu 0: writeout_period+0xa6/0xe0 mm/page-writeback.c:623 call_timer_fn+0x2e/0x1d0 kernel/time/timer.c:1421 expire_timers+0x135/0x240 kernel/time/timer.c:1466 __run_timers+0x378/0x440 kernel/time/timer.c:1734 run_timer_softirq+0x2d/0x30 kernel/time/timer.c:1749 __do_softirq+0x12c/0x26e kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu kernel/softirq.c:636 [inline] irq_exit_rcu+0x4e/0xa0 kernel/softirq.c:648 sysvec_apic_timer_interrupt+0x69/0x80 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch_atomic64_read arch/x86/include/asm/atomic64_64.h:22 [inline] arch_atomic_long_read include/linux/atomic/atomic-long.h:29 [inline] atomic_long_read include/linux/atomic/atomic-instrumented.h:1184 [inline] find_watchpoint kernel/kcsan/core.c:127 [inline] check_access kernel/kcsan/core.c:618 [inline] __tsan_read1+0x20/0x180 kernel/kcsan/core.c:852 xas_move_index lib/xarray.c:155 [inline] xas_advance lib/xarray.c:163 [inline] xas_find+0x1f9/0x3c0 lib/xarray.c:1253 find_get_entry mm/filemap.c:1978 [inline] find_get_entries+0xa0/0x300 mm/filemap.c:2042 truncate_inode_pages_range+0x863/0xad0 mm/truncate.c:375 truncate_inode_pages mm/truncate.c:425 [inline] truncate_inode_pages_final+0x6d/0x80 mm/truncate.c:464 ext4_evict_inode+0x2b7/0xdb0 fs/ext4/inode.c:222 evict+0x1c8/0x3c0 fs/inode.c:588 iput_final fs/inode.c:1664 [inline] iput+0x430/0x580 fs/inode.c:1690 do_unlinkat+0x2d4/0x540 fs/namei.c:4176 __do_sys_unlink fs/namei.c:4217 [inline] __se_sys_unlink fs/namei.c:4215 [inline] __x64_sys_unlink+0x2c/0x30 fs/namei.c:4215 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x44/0xa0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae read to 0xffffffff84176490 of 8 bytes by task 8 on cpu 1: wb_domain_writeout_inc mm/page-writeback.c:572 [inline] __wb_writeout_inc mm/page-writeback.c:593 [inline] test_clear_page_writeback+0x3b6/0x600 mm/page-writeback.c:2789 end_page_writeback+0xd7/0x1b0 mm/filemap.c:1603 ext4_finish_bio+0x3e2/0x430 fs/ext4/page-io.c:143 ext4_release_io_end+0x98/0x200 fs/ext4/page-io.c:158 ext4_end_io_end fs/ext4/page-io.c:192 [inline] ext4_do_flush_completed_IO fs/ext4/page-io.c:257 [inline] ext4_end_io_rsv_work+0x306/0x360 fs/ext4/page-io.c:271 process_one_work+0x402/0x910 kernel/workqueue.c:2297 worker_thread+0x636/0xae0 kernel/workqueue.c:2444 kthread+0x262/0x280 kernel/kthread.c:319 ret_from_fork+0x1f/0x30 value changed: 0x00000000ffffcc3c -> 0x00000000ffffcd68 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 8 Comm: kworker/u4:0 Not tainted 5.15.0-rc6-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: ext4-rsv-conversion ext4_end_io_rsv_work ==================================================================