|
@@ -1265,8 +1265,8 @@ out:
|
|
|
mm->total_vm += len >> PAGE_SHIFT;
|
|
|
vm_stat_account(mm, vm_flags, file, len >> PAGE_SHIFT);
|
|
|
if (vm_flags & VM_LOCKED) {
|
|
|
- long nr_pages = mlock_vma_pages_range(vma, addr, addr + len);
|
|
|
- mm->locked_vm += (len >> PAGE_SHIFT) - nr_pages;
|
|
|
+ if (!mlock_vma_pages_range(vma, addr, addr + len))
|
|
|
+ mm->locked_vm += (len >> PAGE_SHIFT);
|
|
|
} else if ((flags & MAP_POPULATE) && !(flags & MAP_NONBLOCK))
|
|
|
make_pages_present(addr, addr + len);
|
|
|
return addr;
|