mm: fix prctl_set_vma_anon_name
authorColin Cross <ccross@android.com>
Tue, 5 Aug 2014 19:05:17 +0000 (12:05 -0700)
committerColin Cross <ccross@android.com>
Fri, 22 Aug 2014 23:47:15 +0000 (23:47 +0000)
prctl_set_vma_anon_name could attempt to set the name across
two vmas at the same time due to a typo, which might corrupt
the vma list.  Fix it to use tmp instead of end to limit
the name setting to a single vma at a time.

Change-Id: Ie32d8ddb0fd547efbeedd6528acdab5ca5b308b4
Reported-by: Jed Davis <jld@mozilla.com>
Signed-off-by: Colin Cross <ccross@android.com>
kernel/sys.c

index ab7fda5fbe188559fcb7924fa5944e8439c8e856..65d3e55bd2820dc4f43e5061bb8246bc245f4967 100644 (file)
@@ -2187,7 +2187,7 @@ static int prctl_set_vma_anon_name(unsigned long start, unsigned long end,
                        tmp = end;
 
                /* Here vma->vm_start <= start < tmp <= (end|vma->vm_end). */
-               error = prctl_update_vma_anon_name(vma, &prev, start, end,
+               error = prctl_update_vma_anon_name(vma, &prev, start, tmp,
                                (const char __user *)arg);
                if (error)
                        return error;