uml: only flush areas covered by VMA
When doing a full address space flush, only look at areas covered by a VMA. Signed-off-by: Jeff Dike <jdike@linux.intel.com> Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
16dd07bc64
commit
1e7371c1a1
1 changed files with 7 additions and 2 deletions
|
@ -89,8 +89,13 @@ void flush_tlb_mm_skas(struct mm_struct *mm)
|
|||
|
||||
void force_flush_all_skas(void)
|
||||
{
|
||||
unsigned long end = proc_mm ? task_size : CONFIG_STUB_START;
|
||||
fix_range(current->mm, 0, end, 1);
|
||||
struct mm_struct *mm = current->mm;
|
||||
struct vm_area_struct *vma = mm->mmap;
|
||||
|
||||
while(vma != NULL) {
|
||||
fix_range(mm, vma->vm_start, vma->vm_end, 1);
|
||||
vma = vma->vm_next;
|
||||
}
|
||||
}
|
||||
|
||||
void flush_tlb_page_skas(struct vm_area_struct *vma, unsigned long address)
|
||||
|
|
Loading…
Reference in a new issue