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 8F232CCD1BB for ; Wed, 22 Oct 2025 14:20:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:MIME-Version: References:In-Reply-To:Subject:Cc:To:From:Message-ID:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=kcqQKxSEoQ14IsRS9sbvVuTvZwLMa12Nm40FaimG9ys=; b=tQLdO6SNSP+heyudX+TmLh+jMy 1Gxe+UoXtcnUri1EzYcMLZPs3Awx+v3Z1OcePdvCxzwilTk06rvK0k7bamiC6HuAllrqJB6s//4KT OwA9EsTSckWzOTp5l5LMgT8ZBGMRlMN3my9y6w9gF89auoGvhNSt2C5jcPKQq3yJivPpkT2V5TWIf Ypv+mxz3s2jXyE0RMJliXHATqjfjLg3FQIHjNPOho5UI8mFeavBIDhE9pf+SWJ42Vx/96REkx6V// LGyktVouQKrtMdPguUut3+FDJYS18t09pPL5TXXqYvqYIqwRTUlxf4357IyF6+6CT1MHhXN8C+0C+ FRtp9dIA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vBZhR-00000003BOG-0zxY; Wed, 22 Oct 2025 14:20:26 +0000 Received: from tor.source.kernel.org ([2600:3c04:e001:324:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vBZhM-00000003BLP-16NC for linux-arm-kernel@lists.infradead.org; Wed, 22 Oct 2025 14:20:22 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id AFECF604E8; Wed, 22 Oct 2025 14:20:19 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 580B7C4CEF5; Wed, 22 Oct 2025 14:20:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1761142819; bh=JhTwXK3F6zhty33hUA0ZGDjVjy9mQSxspooOOq1o4RY=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=naklbOMT5pH+5/pK8mBmJqkMVFRruUFLTZW61aU4FC2KZRe6lw3qIj5+ECVRRKI67 S5BCVcF+M6McBr4PS6+uZZHFfS6DlubgzDbS2nOIXWzmsUagXDTHbY66++ODH34mFo LuWYCCYrdgrDCBUL7Hy/4rb468NogYcH5CmtW65OrYmDsQkSbP3WbrtkP8dxqsEoeJ L60bskemykJGEkaXQ7rSmfbQ3pobpfi7Q7U0cpaqfcvj9xVo/P7ieiq6A0sEQ1VkY8 GxyBRXgfAdjDkUc3vip4TDlnOUifEs8vhQgvlAMXr0jOhiJ9qDvlpTl3krpkCYH9NC tv4FqkWgUtohw== Received: from sofa.misterjones.org ([185.219.108.64] helo=goblin-girl.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vBZhJ-0000000GDda-052k; Wed, 22 Oct 2025 14:20:17 +0000 Date: Wed, 22 Oct 2025 15:20:16 +0100 Message-ID: <86347bvx0f.wl-maz@kernel.org> From: Marc Zyngier To: Marek Vasut Cc: linux-arm-kernel@lists.infradead.org, Anshuman Khandual , Catalin Marinas , Geert Uytterhoeven , Ryan Roberts , Will Deacon , Yicong Yang , linux-renesas-soc@vger.kernel.org Subject: Re: [PATCH] arm64: guard AMU register access with ARM64_HAS_AMU_EXTN In-Reply-To: <20251022133621.178546-1-marek.vasut+renesas@mailbox.org> References: <20251022133621.178546-1-marek.vasut+renesas@mailbox.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/30.1 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: marek.vasut+renesas@mailbox.org, linux-arm-kernel@lists.infradead.org, anshuman.khandual@arm.com, catalin.marinas@arm.com, geert+renesas@glider.be, ryan.roberts@arm.com, will@kernel.org, yangyicong@hisilicon.com, linux-renesas-soc@vger.kernel.org X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false 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: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Wed, 22 Oct 2025 14:35:28 +0100, Marek Vasut wrote: > > The AMU configuration register access may fault and prevent successful > kernel boot. This can occur for example in case the firmware does not > allow AMU counter access from EL1. Guard the AMU configuration register > access with ARM64_HAS_AMU_EXTN to prevent this fault if ARM64_HAS_AMU_EXTN > Kconfig option is explicitly disabled. Other interaction with the AMU is > already guarded by similar ifdeffery. > > Fixes: 87a1f063464a ("arm64: trap to EL1 accesses to AMU counters from EL0") > Signed-off-by: Marek Vasut > --- > Cc: Anshuman Khandual > Cc: Catalin Marinas > Cc: Geert Uytterhoeven > Cc: Marc Zyngier > Cc: Ryan Roberts > Cc: Will Deacon > Cc: Yicong Yang > Cc: linux-arm-kernel@lists.infradead.org > Cc: linux-renesas-soc@vger.kernel.org > --- > arch/arm64/mm/proc.S | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/arch/arm64/mm/proc.S b/arch/arm64/mm/proc.S > index 86818511962b6..123538ffeda6b 100644 > --- a/arch/arm64/mm/proc.S > +++ b/arch/arm64/mm/proc.S > @@ -145,7 +145,9 @@ SYM_FUNC_START(cpu_do_resume) > ubfx x11, x11, #1, #1 > msr oslar_el1, x11 > reset_pmuserenr_el0 x0 // Disable PMU access from EL0 > +alternative_if ARM64_HAS_AMU_EXTN > reset_amuserenr_el0 x0 // Disable AMU access from EL0 > +alternative_else_nop_endif Why? We ensure that the AMU is available in the macro itself by checking for ID_AA64PFR0_EL1.AMU. If the AMu isn't present on this CPU, we skip the offending sysreg access. This is similar to what we do for the PMU. Does your HW advertise an AMU, but doesn't actually have one? M. -- Without deviation from the norm, progress is not possible.