From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755535AbeASMXZ (ORCPT ); Fri, 19 Jan 2018 07:23:25 -0500 Received: from mail-dm3nam03on0063.outbound.protection.outlook.com ([104.47.41.63]:14295 "EHLO NAM03-DM3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754891AbeASMXJ (ORCPT ); Fri, 19 Jan 2018 07:23:09 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jayachandran.Nair@cavium.com; From: Jayachandran C To: Will Deacon , Jon Masters Cc: marc.zyngier@arm.com, linux-arm-kernel@lists.infradead.org, lorenzo.pieralisi@arm.com, ard.biesheuvel@linaro.org, catalin.marinas@arm.com, linux-kernel@vger.kernel.org, labbott@redhat.com, christoffer.dall@linaro.org, Jayachandran C Subject: [PATCH v3 2/2] arm64: Turn on KPTI only on CPUs that need it Date: Fri, 19 Jan 2018 04:22:48 -0800 Message-Id: <1516364568-95577-2-git-send-email-jnair@caviumnetworks.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1516364568-95577-1-git-send-email-jnair@caviumnetworks.com> References: <20180118135354.GB20783@arm.com> <1516364568-95577-1-git-send-email-jnair@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [50.233.148.156] X-ClientProxiedBy: DM5PR2001CA0021.namprd20.prod.outlook.com (2603:10b6:4:16::31) To DM2PR0701MB1068.namprd07.prod.outlook.com (2a01:111:e400:2472::21) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 661b13ce-692a-480b-4b33-08d55f3765ab X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(4534125)(4602075)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020);SRVR:DM2PR0701MB1068; X-Microsoft-Exchange-Diagnostics: 1;DM2PR0701MB1068;3:ZeFfoW/hTcd7RS4+WBzh+0B0pQc3dFFtC0diW1ZMcTA1kZqYHxt+jJsfg2YMH81BFXbm4dHM3PRCEFubi7a/+RjRKDIVR+UYko4+lOz/gCjMlMdWohxE2TIo4w0zRytsAnycJsFVfMNdTCRCkmb0t7N+SEg8mC7LOuWfyPZLlHJ8jfIGSnqYbQFtqDpXrMIOV/p/U8iiQRJ+nh0kjjhjmCIc2E8oV2mmSSM8PxosC9v97w48nGpdymEFBldDFOsQ;25:bUkJ/dCir2vgTVednIjtJUgxF++ilVqCO6BBgieX/194F1oIjrBnDC/e3v50pIuuJ5jIATm0+yM5WLVq2rAJUt5E3L7lYIsJROChQ+Cpr3VybAonHyxuN/ct4mQGzgU97K7hKSTSrKkfqlQ79TSbucSzZUtA8BYt0oI+jLpi43xuHIwSFivl0HoyRpf0KCvZXsH92bzWt3rAyU5WvcrqfVvcfnflJiiXp3PtH5RS1eX7PkEM5nRkSJnRdr+5z5huQ+xLObVIg2hoToru6Nnuchy/dutYBhVpWJtzGZXGcAEFW6bRms4JqRvj04hDD/nZyYzfLnDv+X30Z2mXQ5u5nsak3AQOJ1I4cDPMuma+a70=;31:L3J7uVAtr4iBjxAdvcYQyd34P6BtymOLIXURAXkVhUmfDSUEhX7yXVK+3I3SVuQYVPc0ascjYsZ+kdrw+bQ2sbF0cr3PhLfdRKRSBoPp5Uoph2zMOz3jxVkZg3sxMMALh14ou77vof8VahhHQtjXpbq0HkACUdHf6QBpbBMq2JLHapzOpL2Dr2MT+1ITAYT7rmJVlVuHKCPNVNb+0e3b8TuWiiYHk26fhHY1j7XULF4= X-MS-TrafficTypeDiagnostic: DM2PR0701MB1068: X-Microsoft-Exchange-Diagnostics: 1;DM2PR0701MB1068;20:AcsRPWQWbFZlmS5MOM9oyz68lQkW0B+vJCqn+Kj/k97CKEcdz1WE4329YXT8d7Otyb8T4+LidquKosdKma+PbVYUKgZc8jT1g3XFRCpbNyb1uqMByKa/Zu8l+tbojvMLmS9YVwUToAIfVkOzlah5B9foG/H2oEUSFs1mQ3IdgiznZ15gew/jGkRLqSAzntJ53Tur6SFJmT09lTvGcXmpczCFwJBzixMN2eG+khseB8Wb7gJXvANrvKbNk8cuWUKgBVFRPIpFZ+1tajCb9U8ZQRoDYETM8JWn0g7XiYhslQtBTfZS2QaREmy304/r8lZbygda2FpjW5SD7/Q43NxSjGpi+PeFsFqZoH6aVX2SYiY8RsybnfApKaBULBmEGQNpcpaWguYkF0UuN3w1lEZFhrUyQ0dQgx5w4UDwOpNfb61ayCcUcb10yFoRmsNz0L5w86ojEAJXgMKcIU9xpxBuWY2JcQWjDU+EQE2D142IaaI1jzFXUeQ16nbnk5m92DxU4lae9TBkYFZ/qghi04/yr2X7F7dX46zMEApVzTnTJEheMg3fAMe6LO0KPiKm8O2+kmOyuVzMegmNNmIjy+W29Nc3wDXVVorg4CVCgAjRwHc=;4:wsw9OpESTGmP9JRv1D4wF208grEFWEd58YMLGmDb+Weo2kX48plEOgjdtJ8AuMpFPX6ODZuiJwkDlii9Jj4qGmVMJqN7Ce9mKc6/nzeNvY1Nd7JEcUu1IqCKruxlESWetwL4CohzNa4YkQf/VCNSh1NO4SgvSxlYVQhGzBiO5sgxeSO0KfVl45t86voy8xEqcwnUwIc39sJNx2lc2xhNJNBQj644/+dlWivrLX4690UNpz28AfplppAuGmX1IW4K1/yaHy/+1XozOIu7JSJ2Ug== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040495)(2401047)(8121501046)(5005006)(10201501046)(3231023)(2400077)(944501161)(93006095)(3002001)(6041282)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123562045)(6072148)(201708071742011);SRVR:DM2PR0701MB1068;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:DM2PR0701MB1068; X-Forefront-PRVS: 0557CBAD84 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(376002)(346002)(39380400002)(366004)(39860400002)(396003)(199004)(189003)(7736002)(53936002)(110136005)(5660300001)(8676002)(50466002)(81166006)(48376002)(81156014)(6512007)(305945005)(386003)(6506007)(16586007)(42882006)(2950100002)(68736007)(69596002)(51416003)(72206003)(76176011)(316002)(52116002)(6486002)(8936002)(6666003)(105586002)(26005)(107886003)(25786009)(47776003)(53416004)(66066001)(478600001)(36756003)(16526018)(2906002)(97736004)(7416002)(6116002)(3846002)(4326008)(106356001)(50226002);DIR:OUT;SFP:1101;SCL:1;SRVR:DM2PR0701MB1068;H:jc-sabre.caveonetworks.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DM2PR0701MB1068;23:Ib5ACZAJ4nnzMjCqtaDjRXLC2RatDcRu9C+4uV7?= =?us-ascii?Q?kxa8QqK25d0U7f+cMbkaHJ942GP4VCQRMkQM1A9eUYrSey8/sROYKitaVtAt?= =?us-ascii?Q?CbdYizMzQFDWFLxksFdHGJ4i0lu1r9LLd90o3o+uSLgsTUdeYlgdP1BANB10?= =?us-ascii?Q?Zd159Ee72cklWQu2HFV7150x/NcGIX5f0bygQC0k4drB5o4u4Nh7y6SUQBT/?= =?us-ascii?Q?V8072+T3gjfLJ80RxeHuEuE9v433Oyo363Ac8cny9el4wzNUIwMJhGeOmNpL?= =?us-ascii?Q?bOsExBkw7kuQ0XF+AqhveYRha++u6MMMAzzg1ylD/OjKbp1rBAyNDjRz023u?= =?us-ascii?Q?9ncNhJ+X4AwKbiSSEbYmnG721l3JBlJpixGA+QOHLTDKOY8brofta+Kbxrv8?= =?us-ascii?Q?GNkIK/lP0AqjF+P+lAevp/oLmZfUFeRjxLXAVjrr2NPznLxrfVil9q0Al/EL?= =?us-ascii?Q?Irjgr5Oz6AId5sbVd+xbia1NDcQ8SHIGD2GxmXHdICSL/qVCLFWoofQQ06pS?= =?us-ascii?Q?eBBUm8zo3TnL0gupI1DWTbajIqMFXNu0+UBnXytTWJhiSBLtxkFuaAwrD5lJ?= =?us-ascii?Q?auJOKHC3N/OB2SnbJlkxJOxCv1/G6S3Mdc2VUAITnNNhjf+M+//n4oUOU3e5?= =?us-ascii?Q?Z+gXUJwEy5E5N4PoLTAULGZUTUtrMktZFDSPPkflP4k+vwFs/VGVAFxKLZai?= =?us-ascii?Q?VXndPGfSXXwHmbcGMniJIJO3SuSkKlnDcLVqT/ujOhc4rF66JwmKEBne5vlT?= =?us-ascii?Q?uWb66KDa0Wj8vVZ6q1m2PfHS6pZ9/bu0ki4wBaPCtSzpqLo+6vFxpvorsTIT?= =?us-ascii?Q?EHqx0z0gGTEeKiuX9JZbDPh5cMAutFrEo6ckjWI0W69z1uVKomTqgWMA7121?= =?us-ascii?Q?9IgxeqwWeYSrpsfV8INWjw0VYZ8gEpxDvheq2ub/QU8wJd7OYO9gZQD3VOpl?= =?us-ascii?Q?1cbeIU4RogYYI/ZNmrdodweiyRhXXG1w5cFZokPKx/UBQexUJ1OrlR0QxjPV?= =?us-ascii?Q?LghUX8nHDK4waT/9YvOItDD3ifIFBR/kphtu7EBsT3N+AcQn3Bi9ssxVk+bI?= =?us-ascii?Q?1SGb4jkU1oCRO44jxAYZvnYVdg7NgF2whKUZiMPKgkRHZ1bfVCIWc5t9IAQn?= =?us-ascii?Q?e0YT2kaOvOAW4RiJfv8kF70q5O0RIceoBiySz3nB+ChlFO5yGl7Ph97aKiHP?= =?us-ascii?Q?qez2ZN7Iu0qwqV5E=3D?= X-Microsoft-Exchange-Diagnostics: 1;DM2PR0701MB1068;6:ZPuYDESBHU6aPphnZrFYE5OkGOvuY0kHz+WrE3/hmVS0/qCwZVJr/0Q5eqL6dau6kozKts0DK+I2sH9i6t0RPrhEgIg7wEQ3JpSdaCl9xMx4iVqNyLjdnSgxncJYHmxNlSqh4wo8EhglXN9v77RdaA/g3y+Cwe+td9pyiYaOu/LtO8/6mp/mebKk0+lC16UNmOU/hlEHvUydgIxGRiBbG5InqJUsm2EVmC38jvCF/DpZQGfJ4iAaOWv516dh8lJE6uTlPE3HEAXPcMan+NU/rSPVU0WwzpdqeBa0q0ZcrWG1b0rikI4YYF6ipnbTxA+l0SkaPbIfF0weVtunhONOiD270s42Gbvyd835FefqS7I=;5:rMVzwe6ihZ5VXFwrNhR9LTeovu9nOhaILCfknNyOypV/YBcIU25QzoGpTJSGP8FYrAcsI0B61DGY/Y7D6W/i/YWDcIv2DHXquxCQ6zcBgkT02YOpmP/zf3vQ490ieHUfPvXZNOqDLXVMpPAME6mKHYlzkBmYMGdn4HbaAi2oEgY=;24:5xigPaGxiRjPMu1ofsbC1qIrkwx6wYJYxVhl06K5I05FoCAReNj7OMBe08oPk0eFySXr9c9AuPbnClseGGgb1sk0gR0sIZyl7sXZPeEJ7Es=;7:JAMGd+3srp5mt49mmnbh7eboefcpF7HXdVz60gKAvvxVwah2Nw3fIHJ5nqUt5n1/nsgUMCNndm9YwlAo0iFG3jm8Ac7MW1ZslQhBnu12SHyQM6XYU7nw1haXQYGXu+x1ZRw4StK0IPmrHTNkbgZTThLVDy8peeWcT/fKuzI3tvmQ6W2qcqldqDCjU1RXXWwHfWaHNm7iLhR7FKKBtG7YCQzhVoKlVk1hRv7QPhTHzcShn6X1A/WGQznySLDeDn2u SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2018 12:23:07.0107 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 661b13ce-692a-480b-4b33-08d55f3765ab X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR0701MB1068 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Whitelist Broadcom Vulcan/Cavium ThunderX2 processors in unmap_kernel_at_el0(). These CPUs are not vulnerable to CVE-2017-5754 and do not need KPTI when KASLR is off. Signed-off-by: Jayachandran C --- arch/arm64/kernel/cpufeature.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c index 647d44b..fb698ca 100644 --- a/arch/arm64/kernel/cpufeature.c +++ b/arch/arm64/kernel/cpufeature.c @@ -866,6 +866,13 @@ static bool unmap_kernel_at_el0(const struct arm64_cpu_capabilities *entry, if (IS_ENABLED(CONFIG_RANDOMIZE_BASE)) return true; + /* Don't force KPTI for CPUs that are not vulnerable */ + switch (read_cpuid_id() & MIDR_CPU_MODEL_MASK) { + case MIDR_CAVIUM_THUNDERX2: + case MIDR_BRCM_VULCAN: + return false; + } + /* Defer to CPU feature registers */ return !cpuid_feature_extract_unsigned_field(pfr0, ID_AA64PFR0_CSV3_SHIFT); -- 2.7.4