Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

RDMA: Use rlimit helpers

Make sure compiler won't do weird things with limits by using the
rlimit helpers added in 3e10e716 ("resource: add helpers for fetching
rlimits"). E.g. fetching them twice may return 2 different values
after writable limits are implemented.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Roland Dreier <rolandd@cisco.com>

authored by

Jiri Slaby and committed by
Roland Dreier
ccbe9f0b 676ad585

+2 -3
+1 -1
drivers/infiniband/core/umem.c
··· 136 136 down_write(&current->mm->mmap_sem); 137 137 138 138 locked = npages + current->mm->locked_vm; 139 - lock_limit = current->signal->rlim[RLIMIT_MEMLOCK].rlim_cur >> PAGE_SHIFT; 139 + lock_limit = rlimit(RLIMIT_MEMLOCK) >> PAGE_SHIFT; 140 140 141 141 if ((locked > lock_limit) && !capable(CAP_IPC_LOCK)) { 142 142 ret = -ENOMEM;
+1 -2
drivers/infiniband/hw/ipath/ipath_user_pages.c
··· 59 59 size_t got; 60 60 int ret; 61 61 62 - lock_limit = current->signal->rlim[RLIMIT_MEMLOCK].rlim_cur >> 63 - PAGE_SHIFT; 62 + lock_limit = rlimit(RLIMIT_MEMLOCK) >> PAGE_SHIFT; 64 63 65 64 if (num_pages > lock_limit) { 66 65 ret = -ENOMEM;