linux/arch/x86/mm
Ingo Molnar 83b0177a6c x86/mm: Fix SMP ordering in switch_mm_irqs_off()
Stephen noted that it is possible to not have an smp_mb() between
the loaded_mm store and the tlb_gen load in switch_mm(), meaning the
ordering against flush_tlb_mm_range() goes out the window, and it
becomes possible for switch_mm() to not observe a recent tlb_gen
update and fail to flush the TLBs.

[ dhansen: merge conflict fixed by Ingo ]

Fixes: 209954cbc7 ("x86/mm/tlb: Update mm_cpumask lazily")
Reported-by: Stephen Dolan <sdolan@janestreet.com>
Closes: https://lore.kernel.org/all/CAHDw0oGd0B4=uuv8NGqbUQ_ZVmSheU2bN70e4QhFXWvuAZdt2w@mail.gmail.com/
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
2025-10-13 13:55:53 -07:00
..
pat x86/mm: Fix overflow in __cpa_addr() 2025-10-13 13:55:48 -07:00
Makefile Move the x86 page fault tracepoints to generic code, because 2025-05-26 21:18:59 -07:00
amdtopology.c
cpu_entry_area.c
debug_pagetables.c
dump_pagetables.c
extable.c x86/fpu: Delay instruction pointer fixup until after warning 2025-06-25 16:28:06 -07:00
fault.c Move the x86 page fault tracepoints to generic code, because 2025-05-26 21:18:59 -07:00
hugetlbpage.c
ident_map.c
init.c mm, x86/mm: move creating the tlb_flush event back to x86 code 2025-09-13 16:55:14 -07:00
init_32.c Revert "mm/execmem: Unify early execmem_cache behaviour" 2025-06-11 11:20:52 +02:00
init_64.c x86: stop calling page_address() in free_pages() 2025-09-21 14:22:17 -07:00
iomap_32.c
ioremap.c
kasan_init_64.c kasan: call kasan_init_generic in kasan_init 2025-09-21 14:21:58 -07:00
kaslr.c
kmmio.c
kmsan_shadow.c
maccess.c
mem_encrypt.c
mem_encrypt_amd.c x86/sev: Avoid global variable to store virtual address of SVSM area 2025-09-03 17:58:15 +02:00
mem_encrypt_boot.S x86/boot: Create a confined code area for startup code 2025-09-03 18:00:01 +02:00
mm_internal.h
mmap.c mm: constify arch_pick_mmap_layout() for improved const-correctness 2025-09-21 14:22:14 -07:00
mmio-mod.c
numa.c
pf_in.c
pf_in.h
pgprot.c mm: change vm_get_page_prot() to accept vm_flags_t argument 2025-07-09 22:42:13 -07:00
pgtable.c - The 11 patch series "Add folio_mk_pte()" from Matthew Wilcox 2025-05-31 15:44:16 -07:00
pgtable_32.c
physaddr.c
physaddr.h
pkeys.c
pti.c - Untangle the Retbleed from the ITS mitigation on Intel. Allow for ITS 2025-07-29 16:34:45 -07:00
srat.c
testmmiotrace.c
tlb.c x86/mm: Fix SMP ordering in switch_mm_irqs_off() 2025-10-13 13:55:53 -07:00