================================================================== BUG: KCSAN: data-race in mem_cgroup_flush_stats / tick_do_update_jiffies64 read-write to 0xffffffff85c079c0 of 8 bytes by interrupt on cpu 0: tick_do_update_jiffies64+0x112/0x1b0 kernel/time/tick-sched.c:118 tick_sched_do_timer kernel/time/tick-sched.c:199 [inline] tick_sched_timer+0x7e/0x2d0 kernel/time/tick-sched.c:1473 __run_hrtimer+0x132/0x420 kernel/time/hrtimer.c:1685 __hrtimer_run_queues kernel/time/hrtimer.c:1749 [inline] hrtimer_interrupt+0x36e/0xa70 kernel/time/hrtimer.c:1811 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1096 [inline] __sysvec_apic_timer_interrupt+0xa3/0x250 arch/x86/kernel/apic/apic.c:1113 sysvec_apic_timer_interrupt+0x88/0xb0 arch/x86/kernel/apic/apic.c:1107 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:649 preempt_count arch/x86/include/asm/preempt.h:27 [inline] get_ctx kernel/kcsan/core.c:204 [inline] check_access kernel/kcsan/core.c:739 [inline] __tsan_read8+0xf4/0x180 kernel/kcsan/core.c:1014 task_css include/linux/cgroup.h:508 [inline] mem_cgroup_from_task+0x25/0x30 mm/memcontrol.c:985 count_memcg_event_mm include/linux/memcontrol.h:1091 [inline] handle_mm_fault+0x8d/0xa80 mm/memory.c:5196 do_user_addr_fault+0x4a1/0x980 arch/x86/mm/fault.c:1428 handle_page_fault arch/x86/mm/fault.c:1519 [inline] exc_page_fault+0x60/0x160 arch/x86/mm/fault.c:1575 asm_exc_page_fault+0x22/0x30 arch/x86/include/asm/idtentry.h:570 copy_user_enhanced_fast_string+0xa/0x40 arch/x86/lib/copy_user_64.S:165 copy_user_generic arch/x86/include/asm/uaccess_64.h:37 [inline] raw_copy_from_user arch/x86/include/asm/uaccess_64.h:52 [inline] copyin+0x75/0x90 lib/iov_iter.c:183 _copy_from_iter+0x252/0x8e0 lib/iov_iter.c:631 copy_from_iter include/linux/uio.h:184 [inline] copy_from_iter_full include/linux/uio.h:191 [inline] skb_do_copy_data_nocache include/net/sock.h:2257 [inline] skb_copy_to_page_nocache include/net/sock.h:2283 [inline] kcm_sendmsg+0x78c/0x13d0 net/kcm/kcmsock.c:995 sock_sendmsg_nosec net/socket.c:714 [inline] sock_sendmsg net/socket.c:734 [inline] ____sys_sendmsg+0x38f/0x500 net/socket.c:2482 ___sys_sendmsg net/socket.c:2536 [inline] __sys_sendmsg+0x19a/0x230 net/socket.c:2565 __do_sys_sendmsg net/socket.c:2574 [inline] __se_sys_sendmsg net/socket.c:2572 [inline] __x64_sys_sendmsg+0x42/0x50 net/socket.c:2572 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x2b/0x70 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd read to 0xffffffff85c079c0 of 8 bytes by task 18432 on cpu 1: __mem_cgroup_flush_stats mm/memcontrol.c:634 [inline] mem_cgroup_flush_stats+0x7f/0x110 mm/memcontrol.c:643 prepare_scan_count+0xad/0x7f0 mm/vmscan.c:2787 shrink_node+0x1cc/0x930 mm/vmscan.c:6103 shrink_zones+0x2c1/0x5d0 mm/vmscan.c:6343 do_try_to_free_pages+0x195/0x760 mm/vmscan.c:6405 try_to_free_mem_cgroup_pages+0x1d1/0x420 mm/vmscan.c:6720 reclaim_high+0xcd/0x110 mm/memcontrol.c:2389 mem_cgroup_handle_over_high+0x75/0x120 mm/memcontrol.c:2574 resume_user_mode_work include/linux/resume_user_mode.h:58 [inline] exit_to_user_mode_loop+0xa5/0x130 kernel/entry/common.c:171 exit_to_user_mode_prepare kernel/entry/common.c:203 [inline] __syscall_exit_to_user_mode_work kernel/entry/common.c:285 [inline] syscall_exit_to_user_mode+0x6a/0x90 kernel/entry/common.c:296 do_syscall_64+0x37/0x70 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x63/0xcd value changed: 0x000000010003473f -> 0x0000000100034740 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 18432 Comm: syz-executor.3 Tainted: G W 6.1.0-rc2-syzkaller-00338-g576e61cea1e4-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/11/2022 ==================================================================