Searched refs:new_tlb_gen (Results 1 - 4 of 4) sorted by relevance
/kernel/linux/linux-6.6/arch/x86/mm/ |
H A D | tlb.c | 751 * - f->new_tlb_gen: the generation that the requester of the flush in flush_tlb_func() 794 if (unlikely(f->new_tlb_gen != TLB_GENERATION_INVALID && in flush_tlb_func() 795 f->new_tlb_gen <= local_tlb_gen)) { in flush_tlb_func() 797 * The TLB is already up to date in respect to f->new_tlb_gen. in flush_tlb_func() 822 WARN_ON_ONCE(f->new_tlb_gen > mm_tlb_gen); in flush_tlb_func() 827 * possible that f->new_tlb_gen <= local_tlb_gen), but we're in flush_tlb_func() 836 * 1. f->new_tlb_gen == local_tlb_gen + 1. We have an invariant that in flush_tlb_func() 839 * f->new_tlb_gen == 3, then we know that the flush needed to bring in flush_tlb_func() 853 * 2. f->new_tlb_gen == mm_tlb_gen. This is purely an optimization. in flush_tlb_func() 862 f->new_tlb_gen in flush_tlb_func() 965 get_flush_tlb_info(struct mm_struct *mm, unsigned long start, unsigned long end, unsigned int stride_shift, bool freed_tables, u64 new_tlb_gen) get_flush_tlb_info() argument 1006 u64 new_tlb_gen; flush_tlb_mm_range() local [all...] |
/kernel/linux/linux-5.10/arch/x86/mm/ |
H A D | tlb.c | 665 * - f->new_tlb_gen: the generation that the requester of the flush in flush_tlb_func_common() 708 WARN_ON_ONCE(f->new_tlb_gen > mm_tlb_gen); in flush_tlb_func_common() 713 * possible that f->new_tlb_gen <= local_tlb_gen), but we're in flush_tlb_func_common() 722 * 1. f->new_tlb_gen == local_tlb_gen + 1. We have an invariant that in flush_tlb_func_common() 725 * f->new_tlb_gen == 3, then we know that the flush needed to bring in flush_tlb_func_common() 739 * 2. f->new_tlb_gen == mm_tlb_gen. This is purely an optimiation. in flush_tlb_func_common() 748 f->new_tlb_gen == local_tlb_gen + 1 && in flush_tlb_func_common() 749 f->new_tlb_gen == mm_tlb_gen) { in flush_tlb_func_common() 853 u64 new_tlb_gen) in get_flush_tlb_info() 871 info->new_tlb_gen in get_flush_tlb_info() 850 get_flush_tlb_info(struct mm_struct *mm, unsigned long start, unsigned long end, unsigned int stride_shift, bool freed_tables, u64 new_tlb_gen) get_flush_tlb_info() argument 890 u64 new_tlb_gen; flush_tlb_mm_range() local [all...] |
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | tlbflush.h | 188 * TLB_FLUSH_ALL, and .new_tlb_gen will be the tlb_gen to 192 * .end will indicate the range, and .new_tlb_gen will be set 193 * such that the changes between generation .new_tlb_gen-1 and 194 * .new_tlb_gen are entirely contained in the indicated range. 197 * will be NULL, .end will be TLB_FLUSH_ALL, and .new_tlb_gen 203 u64 new_tlb_gen; member
|
/kernel/linux/linux-6.6/arch/x86/include/asm/ |
H A D | tlbflush.h | 206 * TLB_FLUSH_ALL, and .new_tlb_gen will be the tlb_gen to 210 * .end will indicate the range, and .new_tlb_gen will be set 211 * such that the changes between generation .new_tlb_gen-1 and 212 * .new_tlb_gen are entirely contained in the indicated range. 215 * will be NULL, .end will be TLB_FLUSH_ALL, and .new_tlb_gen 221 u64 new_tlb_gen; member
|
Completed in 5 milliseconds