From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756473AbbCSRJg (ORCPT ); Thu, 19 Mar 2015 13:09:36 -0400 Received: from mga09.intel.com ([134.134.136.24]:58694 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756270AbbCSRIi (ORCPT ); Thu, 19 Mar 2015 13:08:38 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,430,1422950400"; d="scan'208";a="469594045" From: "Kirill A. Shutemov" To: Andrew Morton , Andrea Arcangeli , Hugh Dickins Cc: Dave Hansen , Mel Gorman , Rik van Riel , Vlastimil Babka , Christoph Lameter , Naoya Horiguchi , Steve Capper , "Aneesh Kumar K.V" , Johannes Weiner , Michal Hocko , Jerome Marchand , linux-kernel@vger.kernel.org, linux-mm@kvack.org, "Kirill A. Shutemov" Subject: [PATCH 12/16] page-flags: define PG_mlocked behavior on compound pages Date: Thu, 19 Mar 2015 19:08:18 +0200 Message-Id: <1426784902-125149-13-git-send-email-kirill.shutemov@linux.intel.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1426784902-125149-1-git-send-email-kirill.shutemov@linux.intel.com> References: <1426784902-125149-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 Transparent huge pages can be mlocked -- whole compund page at once. Something went wrong if we're trying to mlock() tail page. Let's use NO_TAIL. Signed-off-by: Kirill A. Shutemov --- include/linux/page-flags.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index 9ea90bb8cb89..a1ecec3f505f 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h @@ -340,8 +340,9 @@ PAGEFLAG(Unevictable, unevictable, HEAD) TESTCLEARFLAG(Unevictable, unevictable, HEAD) #ifdef CONFIG_MMU -PAGEFLAG(Mlocked, mlocked, ANY) __CLEARPAGEFLAG(Mlocked, mlocked, ANY) - TESTSCFLAG(Mlocked, mlocked, ANY) __TESTCLEARFLAG(Mlocked, mlocked, ANY) +PAGEFLAG(Mlocked, mlocked, NO_TAIL) __CLEARPAGEFLAG(Mlocked, mlocked, NO_TAIL) + TESTSCFLAG(Mlocked, mlocked, NO_TAIL) + __TESTCLEARFLAG(Mlocked, mlocked, NO_TAIL) #else PAGEFLAG_FALSE(Mlocked) __CLEARPAGEFLAG_NOOP(Mlocked) TESTSCFLAG_FALSE(Mlocked) __TESTCLEARFLAG_FALSE(Mlocked) -- 2.1.4