From: Hugh Dickins Date: Tue, 6 Mar 2012 20:28:52 +0000 (-0800) Subject: mmap: EINVAL not ENOMEM when rejecting VM_GROWS X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=ce8fea7aa4ad9e3b40999a08622ef27c77159659;p=GitHub%2FLineageOS%2Fandroid_kernel_samsung_universal7580.git mmap: EINVAL not ENOMEM when rejecting VM_GROWS Currently error is -ENOMEM when rejecting VM_GROWSDOWN|VM_GROWSUP from shared anonymous: hoist the file case's -EINVAL up for both. Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds --- diff --git a/mm/mmap.c b/mm/mmap.c index 22e1a0b2f70..09ce2cae07c 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -1266,8 +1266,9 @@ munmap_back: vma->vm_pgoff = pgoff; INIT_LIST_HEAD(&vma->anon_vma_chain); + error = -EINVAL; /* when rejecting VM_GROWSDOWN|VM_GROWSUP */ + if (file) { - error = -EINVAL; if (vm_flags & (VM_GROWSDOWN|VM_GROWSUP)) goto free_vma; if (vm_flags & VM_DENYWRITE) {