summary refs log tree commit diff
path: root/mm/util.c
diff options
context:
space:
mode:
authorWei Yang <richardw.yang@linux.intel.com>2019-11-30 17:50:49 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2019-12-01 06:29:19 -0800
commit1b9fc5b24fa2e7c0e67778cda77ac231fb4bcac7 (patch)
treeddcb87f3df18fa01954181743c3cd2be7e8c0e42 /mm/util.c
parent9d81fbe09a5669acf28fccd4f51f00b43534a0c9 (diff)
downloadlinux-1b9fc5b24fa2e7c0e67778cda77ac231fb4bcac7.tar.gz
mm/mmap.c: extract __vma_unlink_list() as counterpart for __vma_link_list()
Just make the code a little easier to read.

Link: http://lkml.kernel.org/r/20191006012636.31521-3-richardw.yang@linux.intel.com
Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Oscar Salvador <osalvador@suse.de>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/util.c')
-rw-r--r--mm/util.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/mm/util.c b/mm/util.c
index 3ad6db9a722e..7fbaadb7fb1f 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -292,6 +292,20 @@ void __vma_link_list(struct mm_struct *mm, struct vm_area_struct *vma,
 		next->vm_prev = vma;
 }
 
+void __vma_unlink_list(struct mm_struct *mm, struct vm_area_struct *vma)
+{
+	struct vm_area_struct *prev, *next;
+
+	next = vma->vm_next;
+	prev = vma->vm_prev;
+	if (prev)
+		prev->vm_next = next;
+	else
+		mm->mmap = next;
+	if (next)
+		next->vm_prev = prev;
+}
+
 /* Check if the vma is being used as a stack by this task */
 int vma_is_stack_for_current(struct vm_area_struct *vma)
 {