From: Liam R. Howlett Date: Mon, 4 Jan 2021 18:55:29 +0000 (-0500) Subject: mm/mmap: Convert __insert_vm_struct to use mas, convert vma_link to use vma_mas_link() X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=5800d2838c129ad59c93f48b2ac7a8306f7ef4c9;p=users%2Fjedix%2Flinux-maple.git mm/mmap: Convert __insert_vm_struct to use mas, convert vma_link to use vma_mas_link() Drop unused vma_store() Signed-off-by: Liam R. Howlett --- diff --git a/mm/mmap.c b/mm/mmap.c index 09fe2a96723d..36b4c05748f6 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -495,11 +495,6 @@ static inline void vma_mt_store(struct mm_struct *mm, struct vm_area_struct *vma } -void vma_store(struct mm_struct *mm, struct vm_area_struct *vma) -{ - vma_mt_store(mm, vma); -} - static void vma_mas_link(struct mm_struct *mm, struct vm_area_struct *vma, struct ma_state *mas) { @@ -521,21 +516,9 @@ static void vma_mas_link(struct mm_struct *mm, struct vm_area_struct *vma, } static void vma_link(struct mm_struct *mm, struct vm_area_struct *vma) { - struct address_space *mapping = NULL; - - if (vma->vm_file) { - mapping = vma->vm_file->f_mapping; - i_mmap_lock_write(mapping); - } - - vma_mt_store(mm, vma); - __vma_link_file(vma); + MA_STATE(mas, &mm->mm_mt, vma->vm_start, vma->vm_end - 1); - if (mapping) - i_mmap_unlock_write(mapping); - - mm->map_count++; - validate_mm(mm); + vma_mas_link(mm, vma, &mas); } /* @@ -545,9 +528,13 @@ static void vma_link(struct mm_struct *mm, struct vm_area_struct *vma) static inline void __insert_vm_struct(struct mm_struct *mm, struct vm_area_struct *vma) { - if (find_vma_intersection(mm, vma->vm_start, vma->vm_end)) + MA_STATE(mas, &mm->mm_mt, vma->vm_start, vma->vm_end - 1); + + if (mas_find(&mas, vma->vm_end - 1)) BUG(); - vma_mt_store(mm, vma); + + mas_set_range(&mas, vma->vm_start, vma->vm_end - 1); + vma_mas_store(vma, &mas); mm->map_count++; }