|
@@ -391,8 +391,8 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
|
|
}
|
|
}
|
|
charge = 0;
|
|
charge = 0;
|
|
if (mpnt->vm_flags & VM_ACCOUNT) {
|
|
if (mpnt->vm_flags & VM_ACCOUNT) {
|
|
- unsigned long len;
|
|
|
|
- len = (mpnt->vm_end - mpnt->vm_start) >> PAGE_SHIFT;
|
|
|
|
|
|
+ unsigned long len = vma_pages(mpnt);
|
|
|
|
+
|
|
if (security_vm_enough_memory_mm(oldmm, len)) /* sic */
|
|
if (security_vm_enough_memory_mm(oldmm, len)) /* sic */
|
|
goto fail_nomem;
|
|
goto fail_nomem;
|
|
charge = len;
|
|
charge = len;
|