==================================================================
BUG: KCSAN: data-race in hrtimer_interrupt / print_cpu

write to 0xffff888237d1ffa0 of 8 bytes by interrupt on cpu 1:
 hrtimer_interrupt+0x1a9/0x4a0 kernel/time/hrtimer.c:1857
 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
 __preempt_count_dec_and_test arch/x86/include/asm/preempt.h:94 [inline]
 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline]
 _raw_spin_unlock_irqrestore+0x3d/0x60 kernel/locking/spinlock.c:194
 spin_unlock_irqrestore include/linux/spinlock.h:406 [inline]
 unlock_page_lruvec_irqrestore include/linux/memcontrol.h:1520 [inline]
 folios_put_refs+0x21d/0x2b0 mm/swap.c:954
 free_pages_and_swap_cache+0x291/0x410 mm/swap_state.c:332
 __tlb_batch_free_encoded_pages mm/mmu_gather.c:136 [inline]
 tlb_batch_pages_flush mm/mmu_gather.c:149 [inline]
 tlb_flush_mmu_free mm/mmu_gather.c:366 [inline]
 tlb_flush_mmu+0x2cf/0x440 mm/mmu_gather.c:373
 zap_pte_range mm/memory.c:1714 [inline]
 zap_pmd_range mm/memory.c:1753 [inline]
 zap_pud_range mm/memory.c:1782 [inline]
 zap_p4d_range mm/memory.c:1803 [inline]
 unmap_page_range+0x1fc8/0x2380 mm/memory.c:1824
 unmap_single_vma+0x142/0x1d0 mm/memory.c:1870
 unmap_vmas+0x18d/0x2b0 mm/memory.c:1914
 exit_mmap+0x18a/0x680 mm/mmap.c:1667
 __mmput+0x28/0x1d0 kernel/fork.c:1353
 mmput+0x4c/0x60 kernel/fork.c:1375
 exit_mm+0xe4/0x190 kernel/exit.c:570
 do_exit+0x55e/0x17f0 kernel/exit.c:925
 do_group_exit+0x102/0x150 kernel/exit.c:1087
 get_signal+0xeb9/0x1000 kernel/signal.c:3016
 arch_do_signal_or_restart+0x95/0x4b0 arch/x86/kernel/signal.c:337
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:329 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x62/0x120 kernel/entry/common.c:218
 do_syscall_64+0xd6/0x1c0 arch/x86/entry/common.c:89
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff888237d1ffa0 of 8 bytes by task 13898 on cpu 0:
 print_cpu+0x2fb/0x670 kernel/time/timer_list.c:133
 timer_list_show+0x115/0x180 kernel/time/timer_list.c:295
 seq_read_iter+0x655/0x930 fs/seq_file.c:272
 proc_reg_read_iter+0x118/0x190 fs/proc/inode.c:299
 copy_splice_read+0x3a0/0x5d0 fs/splice.c:365
 do_splice_read fs/splice.c:985 [inline]
 splice_direct_to_actor+0x269/0x670 fs/splice.c:1089
 do_splice_direct_actor fs/splice.c:1207 [inline]
 do_splice_direct+0xd7/0x150 fs/splice.c:1233
 do_sendfile+0x398/0x660 fs/read_write.c:1363
 __do_sys_sendfile64 fs/read_write.c:1424 [inline]
 __se_sys_sendfile64 fs/read_write.c:1410 [inline]
 __x64_sys_sendfile64+0x110/0x150 fs/read_write.c:1410
 x64_sys_call+0xfbd/0x2dc0 arch/x86/include/generated/asm/syscalls_64.h:41
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x0000003246f2eba8 -> 0x000000324706e900

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 13898 Comm: syz.4.3690 Tainted: G        W          6.12.0-syzkaller-12113-gbcc8eda6d349 #0
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
==================================================================
loop4: detected capacity change from 0 to 164