================================================================== BUG: KCSAN: data-race in fprop_new_period / fprop_reflect_period_percpu read-write to 0xffffffff870d55c0 of 4 bytes by interrupt on cpu 1: fprop_new_period+0xa6/0xd0 lib/flex_proportions.c:79 writeout_period+0x55/0xe0 mm/page-writeback.c:612 call_timer_fn+0x2e/0x240 kernel/time/timer.c:1474 expire_timers+0x116/0x240 kernel/time/timer.c:1519 __run_timers+0x350/0x400 kernel/time/timer.c:1790 run_timer_softirq+0x56/0x60 kernel/time/timer.c:1805 __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 kcsan_setup_watchpoint+0x3e9/0x3f0 kernel/kcsan/core.c:694 ext4_fill_raw_inode+0x26c/0xea0 fs/ext4/inode.c:4364 ext4_do_update_inode fs/ext4/inode.c:5153 [inline] ext4_mark_iloc_dirty+0x2e8/0x7e0 fs/ext4/inode.c:5785 __ext4_mark_inode_dirty+0x452/0x610 fs/ext4/inode.c:5981 ext4_dirty_inode+0x86/0xa0 fs/ext4/inode.c:6010 __mark_inode_dirty+0x15b/0x730 fs/fs-writeback.c:2400 mark_inode_dirty include/linux/fs.h:2467 [inline] generic_write_end+0x175/0x350 fs/buffer.c:2184 ext4_da_write_end+0x26c/0x620 fs/ext4/inode.c:3096 generic_perform_write+0x264/0x3f0 mm/filemap.c:3764 ext4_buffered_write_iter+0x235/0x3e0 fs/ext4/file.c:285 ext4_file_write_iter+0x2c7/0x1170 __kernel_write_iter+0x157/0x380 fs/read_write.c:517 dump_emit_page+0x3de/0x830 fs/coredump.c:857 dump_user_range+0x5e/0x200 fs/coredump.c:908 elf_core_dump+0x1b1e/0x1c10 fs/binfmt_elf.c:2311 do_coredump+0xe93/0x1720 fs/coredump.c:755 get_signal+0x9f9/0xc60 kernel/signal.c:2844 arch_do_signal_or_restart+0x87/0x2d0 arch/x86/kernel/signal.c:869 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 exc_general_protection+0x321/0x4b0 arch/x86/kernel/traps.c:721 asm_exc_general_protection+0x22/0x30 arch/x86/include/asm/idtentry.h:564 read to 0xffffffff870d55c0 of 4 bytes by task 1832 on cpu 0: 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:559 [inline] __wb_writeout_add+0x7e/0x1d0 mm/page-writeback.c:583 __folio_end_writeback+0x246/0x4d0 mm/page-writeback.c:2932 folio_end_writeback+0x57/0x130 mm/filemap.c:1613 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:306 value changed: 0x00000045 -> 0x00000046 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 1832 Comm: kworker/u4:5 Not tainted 6.1.0-rc1-syzkaller-00025-gaae703b02f92-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022 Workqueue: ext4-rsv-conversion ext4_end_io_rsv_work ==================================================================