diff options
author | Kirill A. Shutemov <kirill.shutemov@linux.intel.com> | 2015-04-14 18:44:42 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-04-14 19:49:00 -0400 |
commit | c561259ca79a88be540a75e84b45d49123014aa4 (patch) | |
tree | 4e5e814cc4353bc0410d1ae7aebb6ecb1034eb36 /mm/mlock.c | |
parent | fc05f566210fa57f8e68ead8762b8dbb3f1c61e3 (diff) |
mm: move gup() -> posix mlock() error conversion out of __mm_populate
This is praparation to moving mm_populate()-related code out of
mm/mlock.c.
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Acked-by: David Rientjes <rientjes@google.com>
Cc: Michel Lespinasse <walken@google.com>
Cc: Rik van Riel <riel@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/mlock.c')
-rw-r--r-- | mm/mlock.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/mm/mlock.c b/mm/mlock.c index 9d0f3cd716c5..0214263fca45 100644 --- a/mm/mlock.c +++ b/mm/mlock.c | |||
@@ -712,7 +712,6 @@ int __mm_populate(unsigned long start, unsigned long len, int ignore_errors) | |||
712 | ret = 0; | 712 | ret = 0; |
713 | continue; /* continue at next VMA */ | 713 | continue; /* continue at next VMA */ |
714 | } | 714 | } |
715 | ret = __mlock_posix_error_return(ret); | ||
716 | break; | 715 | break; |
717 | } | 716 | } |
718 | nend = nstart + ret * PAGE_SIZE; | 717 | nend = nstart + ret * PAGE_SIZE; |
@@ -750,9 +749,13 @@ SYSCALL_DEFINE2(mlock, unsigned long, start, size_t, len) | |||
750 | error = do_mlock(start, len, 1); | 749 | error = do_mlock(start, len, 1); |
751 | 750 | ||
752 | up_write(¤t->mm->mmap_sem); | 751 | up_write(¤t->mm->mmap_sem); |
753 | if (!error) | 752 | if (error) |
754 | error = __mm_populate(start, len, 0); | 753 | return error; |
755 | return error; | 754 | |
755 | error = __mm_populate(start, len, 0); | ||
756 | if (error) | ||
757 | return __mlock_posix_error_return(error); | ||
758 | return 0; | ||
756 | } | 759 | } |
757 | 760 | ||
758 | SYSCALL_DEFINE2(munlock, unsigned long, start, size_t, len) | 761 | SYSCALL_DEFINE2(munlock, unsigned long, start, size_t, len) |