[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20160503085201.GA10733@e104818-lin.cambridge.arm.com>
Date: Tue, 3 May 2016 09:52:01 +0100
From: Catalin Marinas <catalin.marinas@....com>
To: Yang Shi <yang.shi@...aro.org>
Cc: will.deacon@....com, linaro-kernel@...ts.linaro.org,
Arnd Bergmann <arnd@...db.de>,
Ard Biesheuvel <ard.biesheuvel@...aro.org>,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH] arm64: always use STRICT_MM_TYPECHECKS
On Fri, Apr 29, 2016 at 02:07:54PM -0700, Yang Shi wrote:
> Inspired by the counterpart of powerpc [1], which shows there is no negative
> effect on code generation from enabling STRICT_MM_TYPECHECKS with a modern
> compiler.
>
> And, Arnd's comment [2] about that patch says STRICT_MM_TYPECHECKS could
> be default as long as the architecture can pass structures in registers as
> function arguments. ARM64 can do it as long as the size of structure <= 16
> bytes. All the page table value types are u64 on ARM64.
>
> The below disassembly demonstrates it, entry is pte_t type:
>
> entry = arch_make_huge_pte(entry, vma, page, writable);
> 0xffff00000826fc38 <+80>: and x0, x0, #0xfffffffffffffffd
> 0xffff00000826fc3c <+84>: mov w3, w21
> 0xffff00000826fc40 <+88>: mov x2, x20
> 0xffff00000826fc44 <+92>: mov x1, x19
> 0xffff00000826fc48 <+96>: orr x0, x0, #0x400
> 0xffff00000826fc4c <+100>: bl 0xffff00000809bcc0 <arch_make_huge_pte>
>
> [1] http://www.spinics.net/lists/linux-mm/msg105951.html
> [2] http://www.spinics.net/lists/linux-mm/msg105969.html
>
> Signed-off-by: Yang Shi <yang.shi@...aro.org>
> CC: Arnd Bergmann <arnd@...db.de>
> CC: Ard Biesheuvel <ard.biesheuvel@...aro.org>
I'm fine with this change. If Will is still cherry-picking patches for
4.7:
Acked-by: Catalin Marinas <catalin.marinas@....com>
Powered by blists - more mailing lists