Home
last modified time | relevance | path

Searched refs:mm_tlb_gen (Results 1 - 2 of 2) sorted by relevance

/kernel/linux/linux-6.6/arch/x86/mm/
H A Dtlb.c748 * - mm_tlb_gen: the latest generation. in flush_tlb_func()
760 u64 mm_tlb_gen; in flush_tlb_func() local
798 * While the core might be still behind mm_tlb_gen, checking in flush_tlb_func()
799 * mm_tlb_gen unnecessarily would have negative caching effects in flush_tlb_func()
806 * Defer mm_tlb_gen reading as long as possible to avoid cache in flush_tlb_func()
809 mm_tlb_gen = atomic64_read(&loaded_mm->context.tlb_gen); in flush_tlb_func()
811 if (unlikely(local_tlb_gen == mm_tlb_gen)) { in flush_tlb_func()
821 WARN_ON_ONCE(local_tlb_gen > mm_tlb_gen); in flush_tlb_func()
822 WARN_ON_ONCE(f->new_tlb_gen > mm_tlb_gen); in flush_tlb_func()
848 * local_tlb_gen == 1, mm_tlb_gen in flush_tlb_func()
[all...]
/kernel/linux/linux-5.10/arch/x86/mm/
H A Dtlb.c662 * - mm_tlb_gen: the latest generation. in flush_tlb_func_common()
670 u64 mm_tlb_gen = atomic64_read(&loaded_mm->context.tlb_gen); in flush_tlb_func_common() local
696 if (unlikely(local_tlb_gen == mm_tlb_gen)) { in flush_tlb_func_common()
707 WARN_ON_ONCE(local_tlb_gen > mm_tlb_gen); in flush_tlb_func_common()
708 WARN_ON_ONCE(f->new_tlb_gen > mm_tlb_gen); in flush_tlb_func_common()
734 * local_tlb_gen == 1, mm_tlb_gen == 3, and end != TLB_FLUSH_ALL. in flush_tlb_func_common()
739 * 2. f->new_tlb_gen == mm_tlb_gen. This is purely an optimiation. in flush_tlb_func_common()
744 * local_tlb_gen all the way to mm_tlb_gen and we can probably in flush_tlb_func_common()
749 f->new_tlb_gen == mm_tlb_gen) { in flush_tlb_func_common()
769 /* Both paths above update our state to mm_tlb_gen in flush_tlb_func_common()
[all...]

Completed in 4 milliseconds