================================================================== BUG: KCSAN: data-race in mem_cgroup_flush_stats / tick_do_update_jiffies64 read-write to 0xffffffff85a079c0 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:211 [inline] tick_nohz_highres_handler+0x7b/0x2c0 kernel/time/tick-sched.c:1509 __run_hrtimer kernel/time/hrtimer.c:1688 [inline] __hrtimer_run_queues+0x217/0x700 kernel/time/hrtimer.c:1752 hrtimer_interrupt+0x20d/0x7b0 kernel/time/hrtimer.c:1814 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1065 [inline] __sysvec_apic_timer_interrupt+0x52/0x190 arch/x86/kernel/apic/apic.c:1082 sysvec_apic_timer_interrupt+0x68/0x80 arch/x86/kernel/apic/apic.c:1076 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:645 get_current arch/x86/include/asm/current.h:41 [inline] get_ctx kernel/kcsan/core.c:206 [inline] check_access kernel/kcsan/core.c:750 [inline] __tsan_read8+0xdb/0x180 kernel/kcsan/core.c:1025 invalid_folio_referenced_vma+0x20/0x1e0 mm/rmap.c:898 rmap_walk_anon+0x246/0x410 mm/rmap.c:2482 rmap_walk mm/rmap.c:2562 [inline] folio_referenced+0x1cc/0x260 mm/rmap.c:960 folio_check_references mm/vmscan.c:829 [inline] shrink_folio_list+0x68b/0x2540 mm/vmscan.c:1160 shrink_inactive_list mm/vmscan.c:1913 [inline] shrink_list mm/vmscan.c:2154 [inline] shrink_lruvec+0xd80/0x17a0 mm/vmscan.c:5626 shrink_node_memcgs mm/vmscan.c:5812 [inline] shrink_node+0xab3/0x15c0 mm/vmscan.c:5847 shrink_zones mm/vmscan.c:6086 [inline] do_try_to_free_pages+0x43d/0xce0 mm/vmscan.c:6148 try_to_free_mem_cgroup_pages+0x1e2/0x480 mm/vmscan.c:6463 try_charge_memcg+0x280/0xd30 mm/memcontrol.c:2742 try_charge mm/memcontrol.c:2884 [inline] charge_memcg mm/memcontrol.c:7209 [inline] mem_cgroup_swapin_charge_folio+0x107/0x190 mm/memcontrol.c:7294 __read_swap_cache_async+0x2f6/0x550 mm/swap_state.c:490 swap_cluster_readahead+0x27c/0x4c0 mm/swap_state.c:655 shmem_swapin_cluster mm/shmem.c:1559 [inline] shmem_swapin_folio+0x343/0x830 mm/shmem.c:1870 shmem_get_folio_gfp+0x242/0xb40 mm/shmem.c:1973 shmem_fault+0x100/0x250 mm/shmem.c:2213 __do_fault mm/memory.c:4265 [inline] do_read_fault mm/memory.c:4628 [inline] do_fault mm/memory.c:4762 [inline] do_pte_missing mm/memory.c:3730 [inline] handle_pte_fault mm/memory.c:5038 [inline] __handle_mm_fault mm/memory.c:5179 [inline] handle_mm_fault+0x13bd/0x2dd0 mm/memory.c:5344 do_user_addr_fault arch/x86/mm/fault.c:1364 [inline] handle_page_fault arch/x86/mm/fault.c:1505 [inline] exc_page_fault+0x3ff/0x6c0 arch/x86/mm/fault.c:1561 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:570 read to 0xffffffff85a079c0 of 8 bytes by task 30557 on cpu 0: do_flush_stats mm/memcontrol.c:656 [inline] mem_cgroup_flush_stats+0x5d/0xd0 mm/memcontrol.c:667 count_shadow_nodes+0x67/0x3d0 mm/workingset.c:667 do_shrink_slab+0x57/0x680 mm/shrinker.c:382 shrink_slab_memcg mm/shrinker.c:548 [inline] shrink_slab+0x4f7/0x860 mm/shrinker.c:626 shrink_node_memcgs mm/vmscan.c:5814 [inline] shrink_node+0xaf2/0x15c0 mm/vmscan.c:5847 shrink_zones mm/vmscan.c:6086 [inline] do_try_to_free_pages+0x43d/0xce0 mm/vmscan.c:6148 try_to_free_mem_cgroup_pages+0x1e2/0x480 mm/vmscan.c:6463 try_charge_memcg+0x280/0xd30 mm/memcontrol.c:2742 obj_cgroup_charge_pages+0xab/0x130 mm/memcontrol.c:3254 __memcg_kmem_charge_page+0x9c/0x170 mm/memcontrol.c:3280 __alloc_pages+0x1bb/0x340 mm/page_alloc.c:4585 alloc_pages_mpol+0xb1/0x1d0 mm/mempolicy.c:2133 alloc_pages+0xe0/0x100 mm/mempolicy.c:2204 vm_area_alloc_pages mm/vmalloc.c:3063 [inline] __vmalloc_area_node mm/vmalloc.c:3139 [inline] __vmalloc_node_range+0x6d2/0xea0 mm/vmalloc.c:3320 kvmalloc_node+0x121/0x160 mm/util.c:632 kvmalloc include/linux/slab.h:738 [inline] xt_alloc_table_info+0x3d/0x80 net/netfilter/x_tables.c:1192 do_replace net/ipv4/netfilter/arp_tables.c:970 [inline] do_arpt_set_ctl+0x634/0x13b0 net/ipv4/netfilter/arp_tables.c:1421 nf_setsockopt+0x18d/0x1b0 net/netfilter/nf_sockopt.c:101 ip_setsockopt+0xe6/0x100 net/ipv4/ip_sockglue.c:1426 tcp_setsockopt+0x90/0xa0 net/ipv4/tcp.c:3704 sock_common_setsockopt+0x61/0x70 net/core/sock.c:3711 do_sock_setsockopt net/socket.c:2311 [inline] __sys_setsockopt+0x1d4/0x240 net/socket.c:2334 __do_sys_setsockopt net/socket.c:2343 [inline] __se_sys_setsockopt net/socket.c:2340 [inline] __x64_sys_setsockopt+0x66/0x80 net/socket.c:2340 do_syscall_x64 arch/x86/entry/common.c:51 [inline] do_syscall_64+0x44/0x110 arch/x86/entry/common.c:82 entry_SYSCALL_64_after_hwframe+0x63/0x6b value changed: 0x000000010001f825 -> 0x000000010001f826 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 30557 Comm: syz-executor.0 Tainted: G W 6.7.0-rc1-syzkaller-00019-gc42d9eeef8e5 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/10/2023 ==================================================================