]> www.infradead.org Git - users/jedix/linux-maple.git/commit
mm: Remove the vma linked list
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Mon, 4 Jan 2021 20:10:54 +0000 (15:10 -0500)
committerLiam R. Howlett <Liam.Howlett@oracle.com>
Fri, 1 Oct 2021 17:55:49 +0000 (13:55 -0400)
commitf949bac6aad0bd86ae32591fb06f3789beae3ec7
treed2e626ab879e8d1c12da8275d90320a32191412c
parent6f468feef2f2531f1ed06a9211c1a875391b4e4c
mm: Remove the vma linked list

Replace any vm_next use with vma_next().

Update free_pgtables(), unmap_vmas(), and zap_page_range() to use the
maple tree.

Use the new free_pgtables() and unmap_vmas() in do_mas_align_munmap().
At the same time, alter the loop to be more compact.

Now that free_pgtables() and unmap_vmas() take a maple tree as an
argument, rearrange do_mas_align_munmap() to use the new table to hold
the lock

Move mas_lock()/mas_unlock() from vma_mas_store() and into
vma_mas_link().  This will allow vma_mas_store() to be used in loops.

Remove __vma_link_list() and __vma_unlink_list() as they are exclusively
used to update the linked list

Rework validation of tree as it was depending on the linked list.

Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
fs/proc/task_nommu.c
include/linux/mm.h
include/linux/mm_types.h
kernel/fork.c
mm/debug.c
mm/internal.h
mm/memory.c
mm/mmap.c
mm/nommu.c
mm/util.c