Use rlimit() helper instead of manually writing whole
chain from current task to rlim_cur

Signed-off-by: Krzysztof Opasiak <k.opas...@samsung.com>
---
 mm/mmap.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/mm/mmap.c b/mm/mmap.c
index a5e3dcd75e79..8d268b3983c9 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -2177,7 +2177,6 @@ static int acct_stack_growth(struct vm_area_struct *vma,
                             unsigned long size, unsigned long grow)
 {
        struct mm_struct *mm = vma->vm_mm;
-       struct rlimit *rlim = current->signal->rlim;
        unsigned long new_start;
 
        /* address space limit tests */
@@ -2185,7 +2184,7 @@ static int acct_stack_growth(struct vm_area_struct *vma,
                return -ENOMEM;
 
        /* Stack limit test */
-       if (size > READ_ONCE(rlim[RLIMIT_STACK].rlim_cur))
+       if (size > rlimit(RLIMIT_STACK))
                return -ENOMEM;
 
        /* mlock limit tests */
@@ -2193,7 +2192,7 @@ static int acct_stack_growth(struct vm_area_struct *vma,
                unsigned long locked;
                unsigned long limit;
                locked = mm->locked_vm + grow;
-               limit = READ_ONCE(rlim[RLIMIT_MEMLOCK].rlim_cur);
+               limit = rlimit(RLIMIT_MEMLOCK);
                limit >>= PAGE_SHIFT;
                if (locked > limit && !capable(CAP_IPC_LOCK))
                        return -ENOMEM;
-- 
2.9.3

Reply via email to