#include <trace/events/mmap.h>
#include "internal.h"
-extern void mtree_direct_destroy(struct maple_tree *mt);
#ifndef arch_mmap_check
#define arch_mmap_check(addr, len, flags) (0)
mtree_store_range(&mm->mm_mt, vma->vm_start, vma->vm_end - 1, vma,
GFP_KERNEL);
}
-/* External interface to store a vma into an @mm. Used in fork.
- *
- * @mm: The struct_mm
- * @vma: The vm_area_struct to store in the maple tree.
- */
-void vma_store(struct mm_struct *mm, struct vm_area_struct *vma)
-{
- vma_mt_store(mm, vma);
-}
-
-static void
-__vma_link(struct mm_struct *mm, struct vm_area_struct *vma,
- struct vm_area_struct *prev)
-{
- vma_mt_store(mm, vma);
- __vma_link_list(mm, vma, prev);
-}
static void vma_link(struct mm_struct *mm, struct vm_area_struct *vma,
struct vm_area_struct *prev)
i_mmap_lock_write(mapping);
}
- __vma_link(mm, vma, prev);
+ vma_mt_store(mm, vma);
+ __vma_link_list(mm, vma, prev);
__vma_link_file(vma);
if (mapping)
if (range_has_overlap(mm, vma->vm_start, vma->vm_end, &prev))
BUG();
- __vma_link(mm, vma, prev);
+ vma_mt_store(mm, vma);
+ __vma_link_list(mm, vma, prev);
mm->map_count++;
}