Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp3707185ybh; Tue, 17 Mar 2020 05:12:08 -0700 (PDT) X-Google-Smtp-Source: ADFU+vuc5u8XklNT09ENvLur/MuCYBbJe2tlZAes/xLA6OuLq403PaxxZLnWJ36XUTz1P5wWVGkw X-Received: by 2002:a05:6830:57b:: with SMTP id f27mr3464272otc.363.1584447128657; Tue, 17 Mar 2020 05:12:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1584447128; cv=none; d=google.com; s=arc-20160816; b=wJgrD7oT0VL2Ucf2jxDAUD0ve6vDtyOsDqk9l5TLs668o+UHl2ouRL3L6yoLfGM67A +yxP936H+bIy1vskN42UaTXgmlDNnw7zH7Pu4W52hijJ3bt1l0m8DXNrryVMHe1qOC7I TyPCXW/srRKsRSBT4cWRSXzqqbsp3pwl482P81L7ggWayz9puaAuzvZPVBpqxwv3NAdK S+TgPL5uo1y44abH61CC/oNP5jNo16XlMs5/ZNCpGvkx6s/g01Rn3G7EJpmZGhyPyzK0 ZvvpwOqmKoDTkNjFQKyskRwplEx5cNsfa5Y21NcW2FA1yi8iO5pT45+Gv2bWy7q4+2cI Nfcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=KD4JIh3t82KIXXiPhAArmtAJTR7sZJ2G69WKEMrw0BI=; b=e7s0ufunrbzCpCy+iqFgwBsn16j3fmvIWx/mQ+t4nmB4IabGWLGEAWUBaCR4eFHIOL bx+r6FNz7p4B2jsQeW3Apb8kKqPpSiHY/vUBJ7ZqPhUd8voPqSt0Jowje3GfhpZz0uEx u9IHboxLJOV3e8shEbmBDnQktpAGl0JRbVVqDxzdxKqdj2M+qTjzVHypRf3JjcRCdvWr Cvv0z3+O1q9FL06pTCVHbloe4C2xXI25S7o5VU5K2+CYTa2fqo6UqEZGeFcj2cXAxYKK IJMkQjv43XUls3rCksd5CsNUE3XC3/IrY/TyrQgU12H7TEE/2mqEW7h3mUeZy1w5WTQi yw5A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c12si1635747otr.67.2020.03.17.05.11.55; Tue, 17 Mar 2020 05:12:08 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726832AbgCQMKz (ORCPT + 99 others); Tue, 17 Mar 2020 08:10:55 -0400 Received: from foss.arm.com ([217.140.110.172]:36328 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726634AbgCQMKy (ORCPT ); Tue, 17 Mar 2020 08:10:54 -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 52B6A30E; Tue, 17 Mar 2020 05:10:54 -0700 (PDT) Received: from lakrids.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6E6613F534; Tue, 17 Mar 2020 05:10:53 -0700 (PDT) Date: Tue, 17 Mar 2020 12:10:51 +0000 From: Mark Rutland To: Hongbo Yao Cc: will@kernel.org, broonie@kernel.org, linux-kernel@vger.kernel.org, catalin.marinas@arm.com, linux-arm-kernel@lists.infradead.org Subject: Re: [RFC PATCH] arm64: fix the missing ktpi= cmdline check in arm64_kernel_unmapped_at_el0() Message-ID: <20200317121050.GH8831@lakrids.cambridge.arm.com> References: <20200317114708.109283-1-yaohongbo@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200317114708.109283-1-yaohongbo@huawei.com> User-Agent: Mutt/1.11.1+11 (2f07cb52) (2018-12-01) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [Adding Catalin and LAKML] Mark. On Tue, Mar 17, 2020 at 07:47:08PM +0800, Hongbo Yao wrote: > Kpti cannot be disabled from the kernel cmdline after the commit > 09e3c22a("arm64: Use a variable to store non-global mappings decision"). > > Bring back the missing check of kpti= command-line option to fix the > case where the SPE driver complains the missing "kpti-off" even it has > already been set. > > Signed-off-by: Hongbo Yao > --- > arch/arm64/include/asm/mmu.h | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/arm64/include/asm/mmu.h b/arch/arm64/include/asm/mmu.h > index 3c9533322558..ebbc0d3ac2f7 100644 > --- a/arch/arm64/include/asm/mmu.h > +++ b/arch/arm64/include/asm/mmu.h > @@ -34,7 +34,8 @@ extern bool arm64_use_ng_mappings; > > static inline bool arm64_kernel_unmapped_at_el0(void) > { > - return arm64_use_ng_mappings; > + return arm64_use_ng_mappings && > + cpus_have_const_cap(ARM64_UNMAP_KERNEL_AT_EL0); > } > > typedef void (*bp_hardening_cb_t)(void); > -- > 2.20.1 >