diff options
Diffstat (limited to 'arch/x86/mm/tlb.c')
-rw-r--r-- | arch/x86/mm/tlb.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/arch/x86/mm/tlb.c b/arch/x86/mm/tlb.c index cb7caddf0902..1fe33987de02 100644 --- a/arch/x86/mm/tlb.c +++ b/arch/x86/mm/tlb.c | |||
@@ -164,8 +164,17 @@ void flush_tlb_current_task(void) | |||
164 | preempt_enable(); | 164 | preempt_enable(); |
165 | } | 165 | } |
166 | 166 | ||
167 | /* in units of pages */ | 167 | /* |
168 | unsigned long tlb_single_page_flush_ceiling = 1; | 168 | * See Documentation/x86/tlb.txt for details. We choose 33 |
169 | * because it is large enough to cover the vast majority (at | ||
170 | * least 95%) of allocations, and is small enough that we are | ||
171 | * confident it will not cause too much overhead. Each single | ||
172 | * flush is about 100 ns, so this caps the maximum overhead at | ||
173 | * _about_ 3,000 ns. | ||
174 | * | ||
175 | * This is in units of pages. | ||
176 | */ | ||
177 | unsigned long tlb_single_page_flush_ceiling = 33; | ||
169 | 178 | ||
170 | void flush_tlb_mm_range(struct mm_struct *mm, unsigned long start, | 179 | void flush_tlb_mm_range(struct mm_struct *mm, unsigned long start, |
171 | unsigned long end, unsigned long vmflag) | 180 | unsigned long end, unsigned long vmflag) |