diff options
Diffstat (limited to 'arch/x86_64')
-rw-r--r-- | arch/x86_64/ia32/ia32_binfmt.c | 5 | ||||
-rw-r--r-- | arch/x86_64/ia32/syscall32.c | 6 |
2 files changed, 1 insertions, 10 deletions
diff --git a/arch/x86_64/ia32/ia32_binfmt.c b/arch/x86_64/ia32/ia32_binfmt.c index c8131f342cfc..d9161e395978 100644 --- a/arch/x86_64/ia32/ia32_binfmt.c +++ b/arch/x86_64/ia32/ia32_binfmt.c | |||
@@ -353,11 +353,6 @@ int setup_arg_pages(struct linux_binprm *bprm, unsigned long stack_top, int exec | |||
353 | mpnt = kmem_cache_alloc(vm_area_cachep, SLAB_KERNEL); | 353 | mpnt = kmem_cache_alloc(vm_area_cachep, SLAB_KERNEL); |
354 | if (!mpnt) | 354 | if (!mpnt) |
355 | return -ENOMEM; | 355 | return -ENOMEM; |
356 | |||
357 | if (security_vm_enough_memory((IA32_STACK_TOP - (PAGE_MASK & (unsigned long) bprm->p))>>PAGE_SHIFT)) { | ||
358 | kmem_cache_free(vm_area_cachep, mpnt); | ||
359 | return -ENOMEM; | ||
360 | } | ||
361 | 356 | ||
362 | memset(mpnt, 0, sizeof(*mpnt)); | 357 | memset(mpnt, 0, sizeof(*mpnt)); |
363 | 358 | ||
diff --git a/arch/x86_64/ia32/syscall32.c b/arch/x86_64/ia32/syscall32.c index adbc5f8089e9..3a01329473ab 100644 --- a/arch/x86_64/ia32/syscall32.c +++ b/arch/x86_64/ia32/syscall32.c | |||
@@ -52,17 +52,13 @@ int syscall32_setup_pages(struct linux_binprm *bprm, int exstack) | |||
52 | vma = kmem_cache_alloc(vm_area_cachep, SLAB_KERNEL); | 52 | vma = kmem_cache_alloc(vm_area_cachep, SLAB_KERNEL); |
53 | if (!vma) | 53 | if (!vma) |
54 | return -ENOMEM; | 54 | return -ENOMEM; |
55 | if (security_vm_enough_memory(npages)) { | ||
56 | kmem_cache_free(vm_area_cachep, vma); | ||
57 | return -ENOMEM; | ||
58 | } | ||
59 | 55 | ||
60 | memset(vma, 0, sizeof(struct vm_area_struct)); | 56 | memset(vma, 0, sizeof(struct vm_area_struct)); |
61 | /* Could randomize here */ | 57 | /* Could randomize here */ |
62 | vma->vm_start = VSYSCALL32_BASE; | 58 | vma->vm_start = VSYSCALL32_BASE; |
63 | vma->vm_end = VSYSCALL32_END; | 59 | vma->vm_end = VSYSCALL32_END; |
64 | /* MAYWRITE to allow gdb to COW and set breakpoints */ | 60 | /* MAYWRITE to allow gdb to COW and set breakpoints */ |
65 | vma->vm_flags = VM_READ|VM_EXEC|VM_MAYREAD|VM_MAYEXEC|VM_MAYEXEC|VM_MAYWRITE; | 61 | vma->vm_flags = VM_READ|VM_EXEC|VM_MAYREAD|VM_MAYEXEC|VM_MAYWRITE; |
66 | vma->vm_flags |= mm->def_flags; | 62 | vma->vm_flags |= mm->def_flags; |
67 | vma->vm_page_prot = protection_map[vma->vm_flags & 7]; | 63 | vma->vm_page_prot = protection_map[vma->vm_flags & 7]; |
68 | vma->vm_ops = &syscall32_vm_ops; | 64 | vma->vm_ops = &syscall32_vm_ops; |