]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
arch/powerpc: Remove mmap linked list from mm/book2s32/tlb
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Mon, 4 Jan 2021 19:25:54 +0000 (14:25 -0500)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Thu, 28 Jan 2021 17:38:11 +0000 (12:38 -0500)
Start using the maple tree

Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
arch/powerpc/mm/book3s32/tlb.c

index 19f0ef950d77322d5d0be1ccf18c3820e6b4bcb1..0ba965c48f9de711dfea2bddb2901630b699ff5e 100644 (file)
@@ -81,6 +81,7 @@ EXPORT_SYMBOL(hash__flush_range);
 void hash__flush_tlb_mm(struct mm_struct *mm)
 {
        struct vm_area_struct *mp;
+       MA_STATE(mas, &mm->mm_mt, 0, 0);
 
        /*
         * It is safe to go down the mm's list of vmas when called
@@ -88,8 +89,8 @@ void hash__flush_tlb_mm(struct mm_struct *mm)
         * unmap_region or exit_mmap, but not from vmtruncate on SMP -
         * but it seems dup_mmap is the only SMP case which gets here.
         */
-       for (mp = mm->mmap; mp != NULL; mp = mp->vm_next)
-               hash__flush_range(mp->vm_mm, mp->vm_start, mp->vm_end);
+       mas_for_each(&mas, mp, -1)
+               flush_range(mp->vm_mm, mp->vm_start, mp->vm_end);
 }
 EXPORT_SYMBOL(hash__flush_tlb_mm);