From e60fd89bfcf503779bf1e2fd235c2d55fd2cbfad Mon Sep 17 00:00:00 2001 From: KOSAKI Motohiro Date: Fri, 5 Mar 2010 13:41:43 -0800 Subject: [PATCH] --- yaml --- r: 186191 b: refs/heads/master c: c58267c32429ea6535428ca6b8a036892c1697f2 h: refs/heads/master i: 186189: 2a8ffd00d7dec663f621f0fbb23037acaaf46e6f 186187: 9c8de9ac5b9c8b34bf5a59000c46529776e6eca7 186183: 26f6afbcf18e61c693ab264a9ad0fa4dfbadc9ce 186175: 237ac15c610baede9e7d01aa97aa8921efe9e281 v: v3 --- [refs] | 2 +- trunk/mm/mmap.c | 11 ++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/[refs] b/[refs] index 7def26d558c0..537eb5896936 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b084d4353ff99d824d3bc5a5c2c22c70b1fba722 +refs/heads/master: c58267c32429ea6535428ca6b8a036892c1697f2 diff --git a/trunk/mm/mmap.c b/trunk/mm/mmap.c index ee2298936fe6..7acd7b0ad176 100644 --- a/trunk/mm/mmap.c +++ b/trunk/mm/mmap.c @@ -1265,12 +1265,7 @@ unsigned long mmap_region(struct file *file, unsigned long addr, mm->total_vm += len >> PAGE_SHIFT; vm_stat_account(mm, vm_flags, file, len >> PAGE_SHIFT); if (vm_flags & VM_LOCKED) { - /* - * makes pages present; downgrades, drops, reacquires mmap_sem - */ long nr_pages = mlock_vma_pages_range(vma, addr, addr + len); - if (nr_pages < 0) - return nr_pages; /* vma gone! */ mm->locked_vm += (len >> PAGE_SHIFT) - nr_pages; } else if ((flags & MAP_POPULATE) && !(flags & MAP_NONBLOCK)) make_pages_present(addr, addr + len); @@ -1754,8 +1749,7 @@ find_extend_vma(struct mm_struct *mm, unsigned long addr) if (!prev || expand_stack(prev, addr)) return NULL; if (prev->vm_flags & VM_LOCKED) { - if (mlock_vma_pages_range(prev, addr, prev->vm_end) < 0) - return NULL; /* vma gone! */ + mlock_vma_pages_range(prev, addr, prev->vm_end); } return prev; } @@ -1783,8 +1777,7 @@ find_extend_vma(struct mm_struct * mm, unsigned long addr) if (expand_stack(vma, addr)) return NULL; if (vma->vm_flags & VM_LOCKED) { - if (mlock_vma_pages_range(vma, addr, start) < 0) - return NULL; /* vma gone! */ + mlock_vma_pages_range(vma, addr, start); } return vma; }