diff --git a/arch/x86/include/asm/tlbflush.h b/arch/x86/include/asm/tlbflush.h index 1dea9860ce5b..323a313947e0 100644 --- a/arch/x86/include/asm/tlbflush.h +++ b/arch/x86/include/asm/tlbflush.h @@ -532,6 +532,7 @@ struct flush_tlb_info { unsigned long end; u64 new_tlb_gen; unsigned int stride_shift; + bool freed_tables; }; #define local_flush_tlb() __flush_tlb() diff --git a/arch/x86/mm/tlb.c b/arch/x86/mm/tlb.c index 14bf39fc0447..92e46f4c058c 100644 --- a/arch/x86/mm/tlb.c +++ b/arch/x86/mm/tlb.c @@ -617,6 +617,7 @@ void flush_tlb_mm_range(struct mm_struct *mm, unsigned long start, struct flush_tlb_info info __aligned(SMP_CACHE_BYTES) = { .mm = mm, .stride_shift = stride_shift, + .freed_tables = freed_tables, }; cpu = get_cpu();