|
@@ -684,14 +684,13 @@ out:
|
|
|
SYSCALL_DEFINE1(mlockall, int, flags)
|
|
|
{
|
|
|
unsigned long lock_limit;
|
|
|
- int ret = -EINVAL;
|
|
|
+ int ret;
|
|
|
|
|
|
if (!flags || (flags & ~(MCL_CURRENT | MCL_FUTURE)))
|
|
|
- goto out;
|
|
|
+ return -EINVAL;
|
|
|
|
|
|
- ret = -EPERM;
|
|
|
if (!can_do_mlock())
|
|
|
- goto out;
|
|
|
+ return -EPERM;
|
|
|
|
|
|
if (flags & MCL_CURRENT)
|
|
|
lru_add_drain_all(); /* flush pagevec */
|
|
@@ -708,7 +707,7 @@ SYSCALL_DEFINE1(mlockall, int, flags)
|
|
|
up_write(¤t->mm->mmap_sem);
|
|
|
if (!ret && (flags & MCL_CURRENT))
|
|
|
mm_populate(0, TASK_SIZE);
|
|
|
-out:
|
|
|
+
|
|
|
return ret;
|
|
|
}
|
|
|
|