]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - mm/mmap.c
brk: make sys_brk() honor COMPAT_BRK when computing lower bound
[karo-tx-linux.git] / mm / mmap.c
index a32d28ce31cda697aff68fdc6c939560096e3a50..96bdd73db08ba3543f716448edeaa0d4bdcc6496 100644 (file)
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -242,10 +242,16 @@ asmlinkage unsigned long sys_brk(unsigned long brk)
        unsigned long rlim, retval;
        unsigned long newbrk, oldbrk;
        struct mm_struct *mm = current->mm;
+       unsigned long min_brk;
 
        down_write(&mm->mmap_sem);
 
-       if (brk < mm->start_brk)
+#ifdef CONFIG_COMPAT_BRK
+       min_brk = mm->end_code;
+#else
+       min_brk = mm->start_brk;
+#endif
+       if (brk < min_brk)
                goto out;
 
        /*