From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6ED2DC43334 for ; Mon, 27 Jun 2022 15:16:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=ye9nmoPUUPT40upkCho5s7n3unXFiPvqK7GWNyrkNxs=; b=zRdM8Tymsbswa3 3kLgvKzb9KnMU5WDd1SkSh4ZeRzpCOzO+yC9WkdPvWev31NdhuRpxC9LdLNJ41OBf3BrOWmTZfxOG 2TRP+AddBeEJMR4AvObKWtydrNFvCNUEfjBSofEXD726fAGJuXy/0uX9uycBuodHjaUfLkouBo+YO Bv6UjFd7lwhVh9hwVdTk3Z9tYoa0/fWJOfuqA+Kd+9aYtUQdtKTX95SJWfyMZS2INTdos8t98fH+M 5iQk1+L50/Q4r/YDNGWnKvfEAC3rt+VuSNqyNdt+tB1ZVB5eIhBaFcxj839hRR4SM8wzRLlSNk8KE G6ViPCeI12xKu3ZbXUuw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1o5qSi-001Zqu-44; Mon, 27 Jun 2022 15:15:40 +0000 Received: from ams.source.kernel.org ([145.40.68.75]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1o5qRX-001ZNx-9b for linux-arm-kernel@lists.infradead.org; Mon, 27 Jun 2022 15:14:29 +0000 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id F404EB81062; Mon, 27 Jun 2022 15:14:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A3198C3411D; Mon, 27 Jun 2022 15:14:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1656342864; bh=+M+b/ZwJYZhgWrfHr9eglmGaNfiwvhoQYc7NU1WtnkA=; h=From:To:Cc:Subject:Date:From; b=gDQezAIvPeZvy6DATE4oUwVsy9HPsg/Du+Bt3hKoJs/L4Cj8DdQATTxiNk2CRYmXJ e11ieFpd8b8+eoa58/7n/JRPI2c2fcE1KcU7x8RG+i/1nImx0Lk/bxF6GyrlxPHS8l wirKWdeiMGMECqX/VwvQ0Rd+5C+NB9HNrw+koxEz4mgcs6zZKpd0ten+0vdPXXXu/R 87+n6ANS6R54Rh/GOIX/Djw8LcUynymv8+iRri/Ooa4Cy5AAyFcT9ny1zOagBbP1t9 vdQPL8cHTJam7Kh5j86z0by0IZDrASMcVJNqU0L18vhLNVMoek0a+69TtB0o8IzxHl OFDC73B2EOdcA== Received: from sofa.misterjones.org ([185.219.108.64] helo=why.lan) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1o5qRS-003TzH-JO; Mon, 27 Jun 2022 16:14:22 +0100 From: Marc Zyngier To: linux-arm-kernel@lists.infradead.org Cc: Will Deacon , Catalin Marinas , Mark Rutland , Ard Biesheuvel , broonie@kernel.org, danielmentz@google.com, saravanak@google.com, kernel-team@android.com Subject: [PATCH 0/6] arm64: Disabling SVE/SME from the command-line Date: Mon, 27 Jun 2022 16:14:06 +0100 Message-Id: <20220627151412.1496361-1-maz@kernel.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: linux-arm-kernel@lists.infradead.org, will@kernel.org, catalin.marinas@arm.com, mark.rutland@arm.com, ardb@kernel.org, broonie@kernel.org, danielmentz@google.com, saravanak@google.com, kernel-team@android.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220627_081427_647343_D24228E7 X-CRM114-Status: GOOD ( 15.56 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This very short series reworks the way arm64 CPUs boot (yes, again) in order to opt out of some features early at boot, on top of the existing VHE-forced-into-nVHE use case and using the same idreg override infrastructure. The main victim here is SVE, because it seems that people have all sort of broken firmware out there, and that a distribution kernel cannot boot on that. And since we have a dependency between SVE and SME, disabling the former also disables the latter. The only positive aspect about this series is that it unifies the way the VHE-stuck CPUs boot with way the full-fat CPUs do (everybody takes a trip to EL1 before coming back to EL2, instead of the stay-at-EL2 approach we currently have). A small victory, which allows us to control the EL2 setup code more easily. Note that the SME code is totally untested (I don't have a model with that), but it looks obviously correct ;-), and that my SVE "platform" has a working firmware... Marc Zyngier (6): arm64: Rename the VHE switch to "finalise_el2" arm64: Save state of HCR_EL2.E2H before switch to EL1 arm64: Allow sticky E2H when entering EL1 arm64: Factor out checking of a feature against the override into a macro arm64: Add the arm64.nosme command line option arm64: Add the arm64.nosve command line option .../admin-guide/kernel-parameters.txt | 6 + Documentation/virt/kvm/arm/hyp-abi.rst | 2 +- arch/arm64/include/asm/cpufeature.h | 3 + arch/arm64/include/asm/el2_setup.h | 60 ---------- arch/arm64/include/asm/virt.h | 4 +- arch/arm64/kernel/cpufeature.c | 12 +- arch/arm64/kernel/head.S | 45 ++++---- arch/arm64/kernel/hyp-stub.S | 105 +++++++++++++----- arch/arm64/kernel/idreg-override.c | 55 ++++++++- arch/arm64/kernel/sleep.S | 2 +- 10 files changed, 171 insertions(+), 123 deletions(-) -- 2.34.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel