From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753331AbcD2V56 (ORCPT ); Fri, 29 Apr 2016 17:57:58 -0400 Received: from mout.kundenserver.de ([212.227.126.134]:61510 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753135AbcD2V54 (ORCPT ); Fri, 29 Apr 2016 17:57:56 -0400 From: Arnd Bergmann To: linux-arm-kernel@lists.infradead.org Cc: Yang Shi , will.deacon@arm.com, catalin.marinas@arm.com, linaro-kernel@lists.linaro.org, Ard Biesheuvel , linux-kernel@vger.kernel.org Subject: Re: [PATCH] arm64: always use STRICT_MM_TYPECHECKS Date: Fri, 29 Apr 2016 23:57:23 +0200 Message-ID: <1809032.lDnjZlAtrr@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: <1461964074-12544-1-git-send-email-yang.shi@linaro.org> References: <1461964074-12544-1-git-send-email-yang.shi@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:v0KdNpnIzYL++PJw8s+pd59h6gBsnsTUplwJks+KO8fTyGecEhH xe5lhpmj5v0yPMOiYD8XZm+OWjIb8y/HmouuOvpPgYzlztNn5DC8EZNuSOqWozoECfNTh2l tuZB+6u529R0PrfDVvOhDqmi9nak2LFH4PVMnDkROCjTU4E1lkCO8bP4gfiy8eRZdayOp/c HYJ4NUetXNZPhFUYCtr2w== X-UI-Out-Filterresults: notjunk:1;V01:K0:StN5X+QvS50=:MaF1XZkhDpVbYjex9axEUr fGTzembSvKGCVl2QVj5DTrSxY9oDLQ8NzDeNQZtM5D5djnBKeVDUn5g87vwKMfOZoSJdBTTRZ mTo3871Nxa71M6lEh1H0wreYHdMZ6jlNRAdK6LqchXcU2mA6CvCkvyf7xKyvj8wGnuEyYS5c2 QL2Gu1J1VutPBa19HDVBzVSrZCM4BjqiO6h/eNMMYoOrbpBNjScqR87+6yy64ZLi5YQPgtmTj A2krkFwgXFh4S6Q126yoqZlTbtyr3NhyO4gbpxIRva0v6Cn1PGA60rCF86G7eWYo2oLsWfLmV IDAat/8mCRq/EFYAJ+HZ+m/YyoyYN5QxtRKUVIeIVg0tHo2uii+FmK2ZnooZrzP9n1UlCdqxg VvIsqqCqoF74j3aUfYIf6eerPPxtGVVfChlxXhH0xBaCdAMBNwk30S9Jq5si762n+46FQneWQ GvcsvCU5xW9MBKkkO6lVbfeLpn9dda3vnasLC1n573K4SKKd9Aw3nXz0lxbTFdC9/SnyT9XIz 0Ay3VhTKFdCw1gcXXF4FAoS036o2q9uaV/KjPNYAiPVTHMXsu5wygLXG5lfQCiaMyOAysUGWs wp5lH07ARvphYm4d04UEZQv9MIvWbybYvtwo0n/y5TOitd3fG+gjwIisbZAqzMleInmTSY4UG AJ5TvZkLO5N1IYX0qPyOVgAqRXIEO9MmlLyufS+DPHpIXAdQ5akHoF/xFIB+jeH2icOulbG/I nMX4OLiB0JIfUErk Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Friday 29 April 2016 14:07:54 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 > > [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 > CC: Arnd Bergmann > CC: Ard Biesheuvel > --- > Acked-by: Arnd Bergmann