tlb_finish_mmu(tlb, start, end);
}
-static inline void unmap_vma(struct vm_area_struct *vma)
-{
-#ifdef CONFIG_XEN
- if (unlikely(vma->vm_ops && vma->vm_ops->unmap))
- vma->vm_ops->unmap(vma);
-#endif
-}
-
/*
* Create a list of vma's touched by the unmap, removing them from the mm's
* vma list as we go..
insertion_point = (prev ? &prev->vm_next : &mm->mmap);
do {
rb_erase(&vma->vm_rb, &mm->mm_rb);
- unmap_vma(vma);
mm->map_count--;
tail_vma = vma;
vma = vma->vm_next;
arch_exit_mmap(mm);
-#ifdef CONFIG_XEN
- for (vma = mm->mmap; vma; vma = vma->vm_next)
- unmap_vma(vma);
-#endif
-
vma = mm->mmap;
if (!vma) /* Can happen if dup_mmap() received an OOM */
return;