================================================================== 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 0: tick_do_update_jiffies64+0x113/0x1c0 kernel/time/tick-sched.c:118 tick_sched_do_timer kernel/time/tick-sched.c:232 [inline] tick_nohz_handler+0x7f/0x2d0 kernel/time/tick-sched.c:290 __run_hrtimer kernel/time/hrtimer.c:1777 [inline] __hrtimer_run_queues+0x20f/0x5a0 kernel/time/hrtimer.c:1841 hrtimer_interrupt+0x21a/0x460 kernel/time/hrtimer.c:1903 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1041 [inline] __sysvec_apic_timer_interrupt+0x5f/0x1d0 arch/x86/kernel/apic/apic.c:1058 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1052 [inline] sysvec_apic_timer_interrupt+0x6f/0x80 arch/x86/kernel/apic/apic.c:1052 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697 is_atomic kernel/kcsan/core.c:249 [inline] should_watch kernel/kcsan/core.c:277 [inline] check_access kernel/kcsan/core.c:752 [inline] __tsan_read1+0xe5/0x180 kernel/kcsan/core.c:1022 list_lru_memcg_aware mm/list_lru.c:24 [inline] list_lru_from_memcg_idx mm/list_lru.c:55 [inline] list_lru_count_one+0x3d/0x100 mm/list_lru.c:259 list_lru_shrink_count include/linux/list_lru.h:190 [inline] super_cache_count+0x111/0x160 fs/super.c:265 do_shrink_slab+0x63/0x680 mm/shrinker.c:384 shrink_slab_memcg mm/shrinker.c:550 [inline] shrink_slab+0x448/0x760 mm/shrinker.c:628 shrink_node_memcgs mm/vmscan.c:6056 [inline] shrink_node+0x6c3/0x2120 mm/vmscan.c:6095 shrink_zones mm/vmscan.c:6339 [inline] do_try_to_free_pages+0x3f6/0xcd0 mm/vmscan.c:6401 try_to_free_mem_cgroup_pages+0x1ab/0x410 mm/vmscan.c:6729 try_charge_memcg+0x383/0xa10 mm/memcontrol.c:2356 obj_cgroup_charge_pages+0xa6/0x150 mm/memcontrol.c:2799 obj_cgroup_charge_account+0x73/0x1a0 mm/memcontrol.c:3102 __memcg_slab_post_alloc_hook+0x398/0x580 mm/memcontrol.c:3188 memcg_slab_post_alloc_hook mm/slub.c:2322 [inline] slab_post_alloc_hook mm/slub.c:4966 [inline] slab_alloc_node mm/slub.c:5265 [inline] kmem_cache_alloc_lru_noprof+0x2c1/0x490 mm/slub.c:5284 xas_nomem+0xd1/0x130 lib/xarray.c:309 shmem_add_to_page_cache+0x438/0x530 mm/shmem.c:912 shmem_alloc_and_add_folio mm/shmem.c:1936 [inline] shmem_get_folio_gfp+0x4e8/0xd60 mm/shmem.c:2533 shmem_fault+0xf6/0x250 mm/shmem.c:2734 __do_fault+0xbc/0x200 mm/memory.c:5280 do_read_fault mm/memory.c:5698 [inline] do_fault mm/memory.c:5832 [inline] do_pte_missing mm/memory.c:4361 [inline] handle_pte_fault mm/memory.c:6177 [inline] __handle_mm_fault mm/memory.c:6318 [inline] handle_mm_fault+0xf78/0x2be0 mm/memory.c:6487 faultin_page mm/gup.c:1126 [inline] __get_user_pages+0x102a/0x1ed0 mm/gup.c:1428 populate_vma_page_range mm/gup.c:1860 [inline] __mm_populate+0x243/0x3a0 mm/gup.c:1963 mm_populate include/linux/mm.h:3471 [inline] vm_mmap_pgoff+0x232/0x2e0 mm/util.c:586 ksys_mmap_pgoff+0xc2/0x310 mm/mmap.c:604 x64_sys_call+0x14a3/0x3000 arch/x86/include/generated/asm/syscalls_64.h:10 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xd2/0x200 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f read to 0xffffffff868099c0 of 8 bytes by task 10970 on cpu 1: mem_cgroup_flush_stats_ratelimited+0x29/0x70 mm/memcontrol.c:635 count_shadow_nodes+0x6a/0x230 mm/workingset.c:678 do_shrink_slab+0x63/0x680 mm/shrinker.c:384 shrink_slab_memcg mm/shrinker.c:550 [inline] shrink_slab+0x448/0x760 mm/shrinker.c:628 shrink_node_memcgs mm/vmscan.c:6056 [inline] shrink_node+0x6c3/0x2120 mm/vmscan.c:6095 shrink_zones mm/vmscan.c:6339 [inline] do_try_to_free_pages+0x3f6/0xcd0 mm/vmscan.c:6401 try_to_free_mem_cgroup_pages+0x1ab/0x410 mm/vmscan.c:6729 try_charge_memcg+0x383/0xa10 mm/memcontrol.c:2356 try_charge mm/memcontrol.c:2498 [inline] charge_memcg+0x51/0xc0 mm/memcontrol.c:4701 __mem_cgroup_charge+0x28/0xb0 mm/memcontrol.c:4718 mem_cgroup_charge include/linux/memcontrol.h:662 [inline] shmem_alloc_and_add_folio mm/shmem.c:1920 [inline] shmem_get_folio_gfp+0x470/0xd60 mm/shmem.c:2533 shmem_fault+0xf6/0x250 mm/shmem.c:2734 __do_fault+0xbc/0x200 mm/memory.c:5280 do_shared_fault mm/memory.c:5762 [inline] do_fault mm/memory.c:5836 [inline] do_pte_missing mm/memory.c:4361 [inline] handle_pte_fault mm/memory.c:6177 [inline] __handle_mm_fault mm/memory.c:6318 [inline] handle_mm_fault+0xd69/0x2be0 mm/memory.c:6487 do_user_addr_fault+0x630/0x1080 arch/x86/mm/fault.c:1336 handle_page_fault arch/x86/mm/fault.c:1476 [inline] exc_page_fault+0x62/0xa0 arch/x86/mm/fault.c:1532 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:618 value changed: 0x00000000ffffd677 -> 0x00000000ffffd678 Reported by Kernel Concurrency Sanitizer on: CPU: 1 UID: 0 PID: 10970 Comm: syz.3.2234 Tainted: G W syzkaller #0 PREEMPT(voluntary) Tainted: [W]=WARN Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/18/2025 ==================================================================