From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 26690C48BD1 for ; Thu, 10 Jun 2021 04:15:36 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0512961076 for ; Thu, 10 Jun 2021 04:15:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229808AbhFJERa (ORCPT ); Thu, 10 Jun 2021 00:17:30 -0400 Received: from foss.arm.com ([217.140.110.172]:49190 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229529AbhFJER3 (ORCPT ); Thu, 10 Jun 2021 00:17:29 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 794C46D; Wed, 9 Jun 2021 21:15:33 -0700 (PDT) Received: from [10.163.83.16] (unknown [10.163.83.16]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C198E3F694; Wed, 9 Jun 2021 21:15:24 -0700 (PDT) Subject: Re: [PATCH V2] mm/thp: Define default pmd_pgtable() To: Mike Rapoport Cc: linux-mm@kvack.org, akpm@linux-foundation.org, Nick Hu , Richard Henderson , Vineet Gupta , Catalin Marinas , Will Deacon , Guo Ren , Brian Cain , Geert Uytterhoeven , Michal Simek , Thomas Bogendoerfer , Ley Foon Tan , Jonas Bonn , Stefan Kristiansson , Stafford Horne , "James E.J. Bottomley" , Michael Ellerman , Christophe Leroy , Paul Walmsley , Palmer Dabbelt , Heiko Carstens , Yoshinori Sato , "David S. Miller" , Jeff Dike , Thomas Gleixner , Chris Zankel , linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org References: <1623214799-29817-1-git-send-email-anshuman.khandual@arm.com> From: Anshuman Khandual Message-ID: <2fde44aa-f74a-3948-d444-d04bc1f839eb@arm.com> Date: Thu, 10 Jun 2021 09:46:10 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 6/9/21 2:20 PM, Mike Rapoport wrote: > Hi Anshuman, > > On Wed, Jun 09, 2021 at 10:29:59AM +0530, Anshuman Khandual wrote: >> Currently most platforms define pmd_pgtable() as pmd_page() duplicating the >> same code all over. Instead just define a default value i.e pmd_page() for >> pmd_pgtable() and let platforms override when required via . >> All the existing platform that override pmd_pgtable() have been moved into >> their respective header in order to precede before the new >> generic definition. This makes it much cleaner with reduced code. >> >> Cc: Nick Hu >> Cc: Richard Henderson >> Cc: Vineet Gupta >> Cc: Catalin Marinas >> Cc: Will Deacon >> Cc: Guo Ren >> Cc: Brian Cain >> Cc: Geert Uytterhoeven >> Cc: Michal Simek >> Cc: Thomas Bogendoerfer >> Cc: Ley Foon Tan >> Cc: Jonas Bonn >> Cc: Stefan Kristiansson >> Cc: Stafford Horne >> Cc: "James E.J. Bottomley" >> Cc: Michael Ellerman >> Cc: Christophe Leroy >> Cc: Paul Walmsley >> Cc: Palmer Dabbelt >> Cc: Heiko Carstens >> Cc: Yoshinori Sato >> Cc: "David S. Miller" >> Cc: Jeff Dike >> Cc: Thomas Gleixner >> Cc: Chris Zankel >> Cc: Andrew Morton >> Cc: linux-arch@vger.kernel.org >> Cc: linux-mm@kvack.org >> Cc: linux-kernel@vger.kernel.org >> Signed-off-by: Anshuman Khandual > One nit below, otherwise > > Acked-by: Mike Rapoport > >> --- >> This patch applies on linux-next (20210608) as there is a merge conflict >> dependency on the following commit. >> >> 40762590e8be ("mm: define default value for FIRST_USER_ADDRESS"). >> >> This patch has been built tested across multiple platforms. >> >> Changes in V2: >> >> - Changed m68k per Geert >> >> Changes in V1: >> >> https://lore.kernel.org/linux-arch/1623130327-13325-1-git-send-email-anshuman.khandual@arm.com/ > ... > >> diff --git a/arch/m68k/include/asm/sun3_pgalloc.h b/arch/m68k/include/asm/sun3_pgalloc.h >> index 000f64869b91..198036aff519 100644 >> --- a/arch/m68k/include/asm/sun3_pgalloc.h >> +++ b/arch/m68k/include/asm/sun3_pgalloc.h >> @@ -32,7 +32,6 @@ static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t page >> { >> pmd_val(*pmd) = __pa((unsigned long)page_address(page)); >> } >> -#define pmd_pgtable(pmd) pmd_page(pmd) >> >> /* >> * allocating and freeing a pmd is trivial: the 1-entry pmd is >> diff --git a/arch/m68k/include/asm/sun3_pgtable.h b/arch/m68k/include/asm/sun3_pgtable.h >> index 5b24283a0a42..127282bd8b96 100644 >> --- a/arch/m68k/include/asm/sun3_pgtable.h >> +++ b/arch/m68k/include/asm/sun3_pgtable.h >> @@ -96,6 +96,8 @@ >> >> #ifndef __ASSEMBLY__ >> >> +#define pmd_pgtable(pmd) pmd_page(pmd) >> + > Is this one really needed? Won't the generic definition work instead? > It should, sun3_defconfig builds without problem. Will drop pmd_pgtable() here.