From patchwork Tue Jul 19 22:00:04 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laura Abbott X-Patchwork-Id: 9238377 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id D368F600CB for ; Tue, 19 Jul 2016 22:00:30 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C523D1FF15 for ; Tue, 19 Jul 2016 22:00:30 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B90052787C; Tue, 19 Jul 2016 22:00:30 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from mother.openwall.net (mother.openwall.net [195.42.179.200]) by mail.wl.linuxfoundation.org (Postfix) with SMTP id E18D01FF15 for ; Tue, 19 Jul 2016 22:00:29 +0000 (UTC) Received: (qmail 18085 invoked by uid 550); 19 Jul 2016 22:00:27 -0000 Mailing-List: contact kernel-hardening-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: kernel-hardening@lists.openwall.com Delivered-To: mailing list kernel-hardening@lists.openwall.com Received: (qmail 18067 invoked from network); 19 Jul 2016 22:00:26 -0000 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to; bh=4XVOUwKaSIHtAjCU3TJ1SjNtxQJInnRBHgSAjfvWM1Y=; b=GoUkNgoUz37dsL6ZLRLhfzzGqMDsZ8T/0FoABIjT2Cx6opGIHKz+dMwMoOYr6F9yt4 Q28FgFyhKM1hDjmxoNQsO0eUP0++tMHjSOclC+8OHoX9hhdbiy91zd0g+OgsalJfLKwz fwtDzv7PJfx3CfHEKemcKY+kwIVH3SRiUn0F9f1WsIbgUVRn4Xu/MvwFwev2yGeq1qv6 7cgLW98/3taXaEQsjT4Or4U326cyNH1nEYpJC+ARhgK/tzNKr08N0cdzeX7HjZ1Jyh8C WVw9BxO0tf2OQj+r72nxmctAHiJqRfBQBfA//17B6e6Lofsu4oAxBvrdOjTKygbPX6ae q07w== X-Gm-Message-State: ALyK8tKCJmOASrC52g7uUiksC4jDGpWJqtbauK9yWFX938F2AKeHISlPZiFEP68twS40rTWq X-Received: by 10.13.222.133 with SMTP id h127mr18263370ywe.211.1468965614545; Tue, 19 Jul 2016 15:00:14 -0700 (PDT) From: Laura Abbott To: linux-kernel@vger.kernel.org Cc: Laura Abbott , Kees Cook , Rik van Riel , Casey Schaufler , PaX Team , Brad Spengler , Russell King , Catalin Marinas , Will Deacon , Ard Biesheuvel , Benjamin Herrenschmidt , Michael Ellerman , Tony Luck , Fenghua Yu , "David S. Miller" , x86@kernel.org, Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Andrew Morton , Andy Lutomirski , Borislav Petkov , Mathias Krause , Jan Kara , Vitaly Wool , Andrea Arcangeli , Dmitry Vyukov , Laura Abbott , linux-arm-kernel@lists.infradead.org, linux-ia64@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, sparclinux@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm@kvack.org, kernel-hardening@lists.openwall.com Date: Tue, 19 Jul 2016 15:00:04 -0700 Message-Id: <1468965604-25023-1-git-send-email-labbott@redhat.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: Subject: [kernel-hardening] [PATCH] mm: Add is_migrate_cma_page X-Virus-Scanned: ClamAV using ClamSMTP Code such as hardened user copy[1] needs a way to tell if a page is CMA or not. Add is_migrate_cma_page in a similar way to is_migrate_isolate_page. [1]http://article.gmane.org/gmane.linux.kernel.mm/155238 Signed-off-by: Laura Abbott --- Here's an explicit patch, slightly different than what I posted before. It can be kept separate or folded in as needed. --- include/linux/mmzone.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 02069c2..c8478b2 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -68,8 +68,10 @@ extern char * const migratetype_names[MIGRATE_TYPES]; #ifdef CONFIG_CMA # define is_migrate_cma(migratetype) unlikely((migratetype) == MIGRATE_CMA) +# define is_migrate_cma_page(_page) (get_pageblock_migratetype(_page) == MIGRATE_CMA) #else # define is_migrate_cma(migratetype) false +# define is_migrate_cma_page(_page) false #endif #define for_each_migratetype_order(order, type) \