Re: [PATCH V2] mm: Define default value for FIRST_USER_ADDRESS

From: Anshuman Khandual
Date: Wed May 05 2021 - 03:11:46 EST




On 5/5/21 11:57 AM, Stafford Horne wrote:
> On Fri, Apr 16, 2021 at 10:47:34AM +0530, Anshuman Khandual wrote:
>> Currently most platforms define FIRST_USER_ADDRESS as 0UL duplication the
>> same code all over. Instead just define a generic default value (i.e 0UL)
>> for FIRST_USER_ADDRESS and let the platforms override when required. This
>> makes it much cleaner with reduced code.
>>
>> The default FIRST_USER_ADDRESS here would be skipped in <linux/pgtable.h>
>> when the given platform overrides its value via <asm/pgtable.h>.
>>
>> Cc: Richard Henderson <rth@xxxxxxxxxxx>
>> Cc: Vineet Gupta <vgupta@xxxxxxxxxxxx>
>> Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
>> Cc: Will Deacon <will@xxxxxxxxxx>
>> Cc: Guo Ren <guoren@xxxxxxxxxx>
>> Cc: Brian Cain <bcain@xxxxxxxxxxxxxx>
>> Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
>> Cc: Michal Simek <monstr@xxxxxxxxx>
>> Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx>
>> Cc: Ley Foon Tan <ley.foon.tan@xxxxxxxxx>
>> Cc: Jonas Bonn <jonas@xxxxxxxxxxxx>
>> Cc: Stefan Kristiansson <stefan.kristiansson@xxxxxxxxxxxxx>
>> Cc: Stafford Horne <shorne@xxxxxxxxx>
>> Cc: "James E.J. Bottomley" <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>
>> Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
>> Cc: Christophe Leroy <christophe.leroy@xxxxxxxxxx>
>> Cc: Paul Walmsley <paul.walmsley@xxxxxxxxxx>
>> Cc: Palmer Dabbelt <palmer@xxxxxxxxxxx>
>> Cc: Heiko Carstens <hca@xxxxxxxxxxxxx>
>> Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>
>> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>
>> Cc: Jeff Dike <jdike@xxxxxxxxxxx>
>> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
>> Cc: Chris Zankel <chris@xxxxxxxxxx>
>> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
>> Cc: linux-arch@xxxxxxxxxxxxxxx
>> Cc: linux-mm@xxxxxxxxx
>> Cc: linux-kernel@xxxxxxxxxxxxxxx
>> Signed-off-by: Anshuman Khandual <anshuman.khandual@xxxxxxx>
>> ---
>> This applies on v5.12-rc7 and has been boot tested on arm64 platform.
>> But has been cross compiled on multiple other platforms.
>>
>> Changes in V2:
>>
>> - Dropped ARCH_HAS_FIRST_USER_ADDRESS construct
>>
>> Changes in V1:
>>
>> https://patchwork.kernel.org/project/linux-mm/patch/1618368899-20311-1-git-send-email-anshuman.khandual@xxxxxxx/
>>
>> arch/alpha/include/asm/pgtable.h | 1 -
>> arch/arc/include/asm/pgtable.h | 6 ------
>> arch/arm64/include/asm/pgtable.h | 2 --
>> arch/csky/include/asm/pgtable.h | 1 -
>> arch/hexagon/include/asm/pgtable.h | 3 ---
>> arch/ia64/include/asm/pgtable.h | 1 -
>> arch/m68k/include/asm/pgtable_mm.h | 1 -
>> arch/microblaze/include/asm/pgtable.h | 2 --
>> arch/mips/include/asm/pgtable-32.h | 1 -
>> arch/mips/include/asm/pgtable-64.h | 1 -
>> arch/nios2/include/asm/pgtable.h | 2 --
>> arch/openrisc/include/asm/pgtable.h | 1 -
>
> Acked-by: Stafford Horne <shorne@xxxxxxxxx>
>
>> arch/parisc/include/asm/pgtable.h | 2 --
>> arch/powerpc/include/asm/book3s/pgtable.h | 1 -
>> arch/powerpc/include/asm/nohash/32/pgtable.h | 1 -
>> arch/powerpc/include/asm/nohash/64/pgtable.h | 2 --
>> arch/riscv/include/asm/pgtable.h | 2 --
>> arch/s390/include/asm/pgtable.h | 2 --
>> arch/sh/include/asm/pgtable.h | 2 --
>> arch/sparc/include/asm/pgtable_32.h | 1 -
>> arch/sparc/include/asm/pgtable_64.h | 3 ---
>> arch/um/include/asm/pgtable-2level.h | 1 -
>> arch/um/include/asm/pgtable-3level.h | 1 -
>> arch/x86/include/asm/pgtable_types.h | 2 --
>> arch/xtensa/include/asm/pgtable.h | 1 -
>> include/linux/pgtable.h | 9 +++++++++
>> 26 files changed, 9 insertions(+), 43 deletions(-)
>
> This all looks fine to me, will this be merged via the arm tree? I guess you
> have a means for that.

I am hoping that this should go via the MM tree instead.