From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753594AbbBKRMQ (ORCPT ); Wed, 11 Feb 2015 12:12:16 -0500 Received: from mga14.intel.com ([192.55.52.115]:8766 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752802AbbBKRMO (ORCPT ); Wed, 11 Feb 2015 12:12:14 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,559,1418112000"; d="scan'208";a="453207022" From: "Kirill A. Shutemov" To: Andrew Morton Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Linus Torvalds , Michel Lespinasse , Rik van Riel , "Kirill A. Shutemov" Subject: [PATCH 3/4] mm: move gup() -> posix mlock() error conversion out of __mm_populate Date: Wed, 11 Feb 2015 19:12:07 +0200 Message-Id: <1423674728-214192-4-git-send-email-kirill.shutemov@linux.intel.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1423674728-214192-1-git-send-email-kirill.shutemov@linux.intel.com> References: <1423674728-214192-1-git-send-email-kirill.shutemov@linux.intel.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is praparation to moving mm_populate()-related code out of mm/mlock.c. Signed-off-by: Kirill A. Shutemov --- mm/mlock.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mm/mlock.c b/mm/mlock.c index c3ea18323034..0837fdb26047 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) ret = 0; continue; /* continue at next VMA */ } - ret = __mlock_posix_error_return(ret); break; } nend = nstart + ret * PAGE_SIZE; @@ -750,9 +749,13 @@ SYSCALL_DEFINE2(mlock, unsigned long, start, size_t, len) error = do_mlock(start, len, 1); up_write(¤t->mm->mmap_sem); - if (!error) - error = __mm_populate(start, len, 0); - return error; + if (error) + return error; + + error = __mm_populate(start, len, 0); + if (error) + return __mlock_posix_error_return(error); + return 0; } SYSCALL_DEFINE2(munlock, unsigned long, start, size_t, len) -- 2.1.4