================================================================== BUG: KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu read-write to 0xffffffff86eff0c0 of 4 bytes by interrupt on cpu 0: fprop_new_period+0xa6/0xd0 lib/flex_proportions.c:79 writeout_period+0x55/0xe0 mm/page-writeback.c:613 call_timer_fn+0x2e/0x240 kernel/time/timer.c:1700 expire_timers+0x11f/0x260 kernel/time/timer.c:1751 __run_timers+0x350/0x400 kernel/time/timer.c:2022 run_timer_softirq+0x56/0x60 kernel/time/timer.c:2037 __do_softirq+0xf2/0x2c7 kernel/softirq.c:571 __irq_exit_rcu kernel/softirq.c:650 [inline] irq_exit_rcu+0x41/0x70 kernel/softirq.c:662 sysvec_apic_timer_interrupt+0x8d/0xb0 arch/x86/kernel/apic/apic.c:1107 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:649 rcu_preempt_read_exit kernel/rcu/tree_plugin.h:384 [inline] __rcu_read_unlock+0x30/0x70 kernel/rcu/tree_plugin.h:421 rcu_read_unlock include/linux/rcupdate.h:796 [inline] percpu_ref_tryget_many include/linux/percpu-refcount.h:250 [inline] percpu_ref_tryget include/linux/percpu-refcount.h:266 [inline] blkg_tryget block/blk-cgroup.h:334 [inline] blkg_tryget_closest block/blk-cgroup.c:1904 [inline] bio_associate_blkg_from_css+0x62f/0x6f0 block/blk-cgroup.c:1936 bio_associate_blkg+0x91/0xa0 block/blk-cgroup.c:1964 bio_init block/bio.c:266 [inline] bio_alloc_bioset+0x6e3/0xb20 block/bio.c:572 bio_alloc_clone block/bio.c:850 [inline] bio_split+0xab/0x460 block/bio.c:1638 __bio_split_to_limits+0x885/0xa80 blk_mq_submit_bio+0x190/0xed0 block/blk-mq.c:2955 __submit_bio block/blk-core.c:604 [inline] __submit_bio_noacct_mq block/blk-core.c:681 [inline] submit_bio_noacct_nocheck+0x83d/0xaa0 block/blk-core.c:698 submit_bio_noacct+0x6a5/0x810 block/blk-core.c:804 submit_bio+0xfb/0x110 block/blk-core.c:840 ext4_io_submit fs/ext4/page-io.c:378 [inline] io_submit_add_bh fs/ext4/page-io.c:420 [inline] ext4_bio_write_page+0x6dd/0xc20 fs/ext4/page-io.c:564 mpage_submit_page fs/ext4/inode.c:2129 [inline] mpage_map_and_submit_buffers fs/ext4/inode.c:2374 [inline] mpage_map_and_submit_extent fs/ext4/inode.c:2513 [inline] ext4_do_writepages+0x11a8/0x1e70 fs/ext4/inode.c:2877 ext4_writepages+0x11b/0x240 fs/ext4/inode.c:2965 do_writepages+0x1db/0x350 mm/page-writeback.c:2581 filemap_fdatawrite_wbc+0xd6/0xf0 mm/filemap.c:388 __filemap_fdatawrite_range mm/filemap.c:421 [inline] __filemap_fdatawrite mm/filemap.c:427 [inline] filemap_flush+0x93/0xc0 mm/filemap.c:454 ext4_alloc_da_blocks+0x47/0x100 fs/ext4/inode.c:3219 ext4_release_file+0x5b/0x1d0 fs/ext4/file.c:158 __fput+0x245/0x570 fs/file_table.c:320 ____fput+0x11/0x20 fs/file_table.c:348 task_work_run+0xde/0x110 kernel/task_work.c:179 exit_task_work include/linux/task_work.h:38 [inline] do_exit+0x5a0/0x16e0 kernel/exit.c:867 do_group_exit+0xfe/0x140 kernel/exit.c:1010 get_signal+0xb4b/0xc70 kernel/signal.c:2859 arch_do_signal_or_restart+0x85/0x290 arch/x86/kernel/signal.c:306 exit_to_user_mode_loop+0x78/0x130 kernel/entry/common.c:168 exit_to_user_mode_prepare+0x69/0x90 kernel/entry/common.c:203 irqentry_exit_to_user_mode+0x5/0x10 kernel/entry/common.c:309 irqentry_exit+0xe/0x40 kernel/entry/common.c:412 asm_exc_page_fault+0x22/0x30 arch/x86/include/asm/idtentry.h:570 read to 0xffffffff86eff0c0 of 4 bytes by task 25 on cpu 1: fprop_reflect_period_percpu+0x22/0x1a0 lib/flex_proportions.c:188 __fprop_add_percpu lib/flex_proportions.c:219 [inline] __fprop_add_percpu_max+0x54/0x180 lib/flex_proportions.c:277 wb_domain_writeout_add mm/page-writeback.c:560 [inline] __wb_writeout_add+0x7e/0x1d0 mm/page-writeback.c:584 __folio_end_writeback+0x246/0x4d0 mm/page-writeback.c:3044 folio_end_writeback+0x57/0x130 mm/filemap.c:1614 end_page_writeback+0x3b/0xe0 mm/folio-compat.c:26 ext4_finish_bio+0x421/0x520 fs/ext4/page-io.c:145 ext4_release_io_end+0x98/0x200 fs/ext4/page-io.c:160 ext4_end_io_end fs/ext4/page-io.c:194 [inline] ext4_do_flush_completed_IO fs/ext4/page-io.c:259 [inline] ext4_end_io_rsv_work+0x319/0x3a0 fs/ext4/page-io.c:273 process_one_work+0x3d3/0x720 kernel/workqueue.c:2289 worker_thread+0x618/0xa70 kernel/workqueue.c:2436 kthread+0x1a9/0x1e0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308 value changed: 0x00000023 -> 0x00000024 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 25 Comm: kworker/u4:1 Not tainted 6.1.0-syzkaller-14321-g0a924817d2ed-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/26/2022 Workqueue: ext4-rsv-conversion ext4_end_io_rsv_work ==================================================================