================================================================== BUG: KCSAN: data-race in mem_cgroup_flush_stats_ratelimited / tick_do_update_jiffies64 read-write to 0xffffffff868099c0 of 8 bytes by interrupt on cpu 1: tick_do_update_jiffies64+0x112/0x1b0 kernel/time/tick-sched.c:118 tick_sched_do_timer kernel/time/tick-sched.c:232 [inline] tick_nohz_handler+0x7c/0x2d0 kernel/time/tick-sched.c:290 __run_hrtimer kernel/time/hrtimer.c:1761 [inline] __hrtimer_run_queues+0x221/0x5f0 kernel/time/hrtimer.c:1825 hrtimer_interrupt+0x235/0x4a0 kernel/time/hrtimer.c:1887 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1038 [inline] __sysvec_apic_timer_interrupt+0x5c/0x1d0 arch/x86/kernel/apic/apic.c:1055 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0x6e/0x80 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 constant_test_bit arch/x86/include/asm/bitops.h:206 [inline] arch_test_bit arch/x86/include/asm/bitops.h:238 [inline] _test_bit include/asm-generic/bitops/instrumented-non-atomic.h:142 [inline] folio_test_swapcache include/linux/page-flags.h:622 [inline] __remove_mapping+0x8e/0x470 mm/vmscan.c:744 shrink_folio_list+0x1942/0x2670 mm/vmscan.c:1536 reclaim_folio_list+0x83/0x2f0 mm/vmscan.c:2217 reclaim_pages+0x218/0x280 mm/vmscan.c:2254 madvise_cold_or_pageout_pte_range+0xd4f/0xdb0 mm/madvise.c:558 walk_pmd_range mm/pagewalk.c:130 [inline] walk_pud_range mm/pagewalk.c:226 [inline] walk_p4d_range mm/pagewalk.c:264 [inline] walk_pgd_range+0x7e5/0x1120 mm/pagewalk.c:305 __walk_page_range+0xed/0x350 mm/pagewalk.c:412 walk_page_range_mm+0x369/0x4c0 mm/pagewalk.c:505 walk_page_range+0x56/0x70 mm/pagewalk.c:584 madvise_pageout_page_range mm/madvise.c:617 [inline] madvise_pageout mm/madvise.c:644 [inline] madvise_vma_behavior mm/madvise.c:1269 [inline] madvise_walk_vmas mm/madvise.c:1530 [inline] madvise_do_behavior+0x1aeb/0x2530 mm/madvise.c:1695 do_madvise mm/madvise.c:1782 [inline] __do_sys_madvise mm/madvise.c:1790 [inline] __se_sys_madvise mm/madvise.c:1788 [inline] __x64_sys_madvise+0xcb/0x100 mm/madvise.c:1788 x64_sys_call+0x23b8/0x2e10 arch/x86/include/generated/asm/syscalls_64.h:29 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xc9/0x1c0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f read to 0xffffffff868099c0 of 8 bytes by task 11929 on cpu 0: mem_cgroup_flush_stats_ratelimited+0x29/0x70 mm/memcontrol.c:643 count_shadow_nodes+0x6b/0x230 mm/workingset.c:680 do_shrink_slab+0x5e/0x6a0 mm/shrinker.c:384 shrink_slab_memcg mm/shrinker.c:550 [inline] shrink_slab+0x4f2/0x860 mm/shrinker.c:628 shrink_node_memcgs mm/vmscan.c:5991 [inline] shrink_node+0x647/0x1da0 mm/vmscan.c:6030 shrink_zones mm/vmscan.c:6274 [inline] do_try_to_free_pages+0x3c6/0xc10 mm/vmscan.c:6336 try_to_free_mem_cgroup_pages+0x1e6/0x4a0 mm/vmscan.c:6664 try_charge_memcg+0x364/0x820 mm/memcontrol.c:2305 try_charge mm/memcontrol.c:2447 [inline] charge_memcg+0x50/0xc0 mm/memcontrol.c:4593 mem_cgroup_swapin_charge_folio+0xd0/0x150 mm/memcontrol.c:4679 __read_swap_cache_async+0x207/0x3b0 mm/swap_state.c:444 swap_cluster_readahead+0x27f/0x400 mm/swap_state.c:616 swapin_readahead+0xe6/0x6f0 mm/swap_state.c:814 do_swap_page+0x31c/0x2510 mm/memory.c:4532 handle_pte_fault mm/memory.c:6000 [inline] __handle_mm_fault mm/memory.c:6140 [inline] handle_mm_fault+0x8ed/0x2e80 mm/memory.c:6309 do_user_addr_fault arch/x86/mm/fault.c:1337 [inline] handle_page_fault arch/x86/mm/fault.c:1480 [inline] exc_page_fault+0x3b9/0x6a0 arch/x86/mm/fault.c:1538 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:623 value changed: 0x0000000100001a13 -> 0x0000000100001a14 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 11929 Comm: syz-executor Not tainted 6.15.0-rc1-syzkaller-00325-g7cdabafc0012 #0 PREEMPT(voluntary) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 ==================================================================