From nobody Tue Feb 10 01:32:35 2026 Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2A81B1D79B1 for ; Thu, 19 Dec 2024 20:54:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734641696; cv=none; b=FmFwtx4sjh2wPq6QGLPEqk2U/tVGxaMByAkcz77dhYOdHty0Ij9AAK3lYhagdwQoJ2AuCr14k4EduP31OkqS6ADJ9orY7JpV6EwGu2OJAC18Prkw/NkdEQQgS4LCI2dA1Up+D+iVTwuzRhnLBTFUR5zYENGr8+C2W0AWdGHK/7k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734641696; c=relaxed/simple; bh=WWGrPOmehKv7Jm3KaVRDb/LfAgSgMERBcW5VTNeD/ks=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=O9Jq9ohYrcPI9sdssTC6dMUETPKhbmlHjOBFFKqrGdFjf1VKVN6sG5VfjhT3jHY5RqRHNm/iUHl7Hayw972NWGzhdDCKHdaw/AnumKgFxNoOsUFvvRSIREdHcdpZNZTtiKLG3/zCvm0U6dsguSLg6/9WoV97K7avg5Gkyt2POS8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=kVjbQue2; arc=none smtp.client-ip=209.85.214.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="kVjbQue2" Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-216401de828so11817905ad.3 for ; Thu, 19 Dec 2024 12:54:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1734641693; x=1735246493; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=6s4l03z+TiOWmT76Ozzx8G2m2dVtHZ3dYvzPccSMcPU=; b=kVjbQue26sKUnT8SgurDNdwN+nmGaM9/hK70Vcpi30GtdYGWk3AJP226k/05mjB5bg QWuJ6/ArlvUPzMAOHml+SWc7VrnIVbbE3b6VN/KPRmuvDDIKZ2EIrc+asCtF8OO+t1n3 BdUQSctLTAhnb8f4L7WIwsuaINbPUaqT8ZCO4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1734641693; x=1735246493; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=6s4l03z+TiOWmT76Ozzx8G2m2dVtHZ3dYvzPccSMcPU=; b=mxKPT6JCM201lqVCK1TzaDViFSe/a+GETphlP86pEPmkHSP6RHFkwvVO++DnHyfmnh drHsPK8ixG5X59wErA/BzdsSmdBytYQs+f2M5Jyg+6M8hQjMkLu7ge5QVVZv4VvjXPFX zRruu1DWJROcj9XBSOHFXvfrME1FxZuhos/F+K83OUrV2fM2SutPE0EgHdSHcRkq7hKy kfH+b4ZJuaFe3YOQu4PqsDyT6v/iwNcROpZ52Cre9AEWvLMeqiim+D3q6Q6kcGMRuRJN CrKN5YrfkQjsA541qwgxli8h6sOq3tO1OTqS1bhguDhoxG4OLzVNryQgQs9P/clwKIw8 rRug== X-Forwarded-Encrypted: i=1; AJvYcCW9B11EDTfyaNPC/e0XKg0dmxwe8rKGEhiI3WLKoAOyICwg5HGdcda+3/DmeQqgVw85VhqgcAKs3z17Qn0=@vger.kernel.org X-Gm-Message-State: AOJu0YzYAFrrF13dyTJcvycjRJO1f7UlzYtd7cbdRhGIa+W81ykh3pl/ sjgInGiRQhn6AQZSvfbSu91kYPAA7ozkpG1NS0u7d1hj3IotuPShrjcfUWLOUA== X-Gm-Gg: ASbGnctorQz+slMRATsnU9/q0debQ2i7hlcg+CcChzn0Wza4jsDBJ4nF7xzGGD27LZa ySJ57KmfZbR9edl2nGSoP/Qzry/aIAOlJYo57bK+PEdmTRFIftbsU7DnggEBO2iuEAXIsVlFuWa +kpqMvbKnQn/4B8JKBjzOy9Tbniclzqs6Awds7HYv8u4RFyS9tzBPJ5NDgDbEDXYRW9M1VURSBu K4/PSJVizEMGSY7bXA3zCs0zV2zMJP33TI0Mc3BPkKI1NiV54y7z7xMnT+1rCHpKpS9/eIWXJ/e X-Google-Smtp-Source: AGHT+IEaD6/NCBxxxfKhVW+SQ2XuBT1Btw2c/4loiQPU6dq3AxKc2urxpDuKIcZdFcK3IchhrLacVA== X-Received: by 2002:a17:90b:134b:b0:2ef:316b:53fe with SMTP id 98e67ed59e1d1-2f452e4d0e5mr545837a91.22.1734641692063; Thu, 19 Dec 2024 12:54:52 -0800 (PST) Received: from dianders.sjc.corp.google.com ([2620:15c:9d:2:a8a3:6409:6518:340d]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2f2ed644d87sm4126905a91.27.2024.12.19.12.54.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Dec 2024 12:54:51 -0800 (PST) From: Douglas Anderson To: Catalin Marinas , Will Deacon , Mark Rutland Cc: Roxana Bradescu , Julius Werner , bjorn.andersson@oss.qualcomm.com, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, Jeffrey Hugo , Trilok Soni , Douglas Anderson , stable@vger.kernel.org, James Morse , linux-kernel@vger.kernel.org Subject: [PATCH v3 3/3] arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected() lists Date: Thu, 19 Dec 2024 12:53:23 -0800 Message-ID: <20241219125317.v3.3.I4a9a527e03f663040721c5401c41de587d015c82@changeid> X-Mailer: git-send-email 2.47.1.613.gc27f4b7a9f-goog In-Reply-To: <20241219205426.2275508-1-dianders@chromium.org> References: <20241219205426.2275508-1-dianders@chromium.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" When comparing to the ARM list [1], it appears that several ARM cores were missing from the lists in spectre_bhb_loop_affected(). Add them. NOTE: for some of these cores it may not matter since other ways of clearing the BHB may be used (like the CLRBHB instruction or ECBHB), but it still seems good to have all the info from ARM's whitepaper included. [1] https://developer.arm.com/Arm%20Security%20Center/Spectre-BHB Fixes: 558c303c9734 ("arm64: Mitigate spectre style branch history side cha= nnels") Cc: stable@vger.kernel.org Signed-off-by: Douglas Anderson --- Changes in v3: - New arch/arm64/kernel/proton-pack.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/arch/arm64/kernel/proton-pack.c b/arch/arm64/kernel/proton-pac= k.c index 06e04c9e6480..86d67f5a5a72 100644 --- a/arch/arm64/kernel/proton-pack.c +++ b/arch/arm64/kernel/proton-pack.c @@ -872,6 +872,14 @@ static u8 spectre_bhb_loop_affected(void) { u8 k =3D 0; =20 + static const struct midr_range spectre_bhb_k132_list[] =3D { + MIDR_ALL_VERSIONS(MIDR_CORTEX_X3), + MIDR_ALL_VERSIONS(MIDR_NEOVERSE_V2), + }; + static const struct midr_range spectre_bhb_k38_list[] =3D { + MIDR_ALL_VERSIONS(MIDR_CORTEX_A715), + MIDR_ALL_VERSIONS(MIDR_CORTEX_A720), + }; static const struct midr_range spectre_bhb_k32_list[] =3D { MIDR_ALL_VERSIONS(MIDR_CORTEX_A78), MIDR_ALL_VERSIONS(MIDR_CORTEX_A78AE), @@ -885,6 +893,7 @@ static u8 spectre_bhb_loop_affected(void) }; static const struct midr_range spectre_bhb_k24_list[] =3D { MIDR_ALL_VERSIONS(MIDR_CORTEX_A76), + MIDR_ALL_VERSIONS(MIDR_CORTEX_A76AE), MIDR_ALL_VERSIONS(MIDR_CORTEX_A77), MIDR_ALL_VERSIONS(MIDR_NEOVERSE_N1), {}, @@ -899,7 +908,11 @@ static u8 spectre_bhb_loop_affected(void) {}, }; =20 - if (is_midr_in_range_list(read_cpuid_id(), spectre_bhb_k32_list)) + if (is_midr_in_range_list(read_cpuid_id(), spectre_bhb_k132_list)) + k =3D 132; + else if (is_midr_in_range_list(read_cpuid_id(), spectre_bhb_k38_list)) + k =3D 38; + else if (is_midr_in_range_list(read_cpuid_id(), spectre_bhb_k32_list)) k =3D 32; else if (is_midr_in_range_list(read_cpuid_id(), spectre_bhb_k24_list)) k =3D 24; --=20 2.47.1.613.gc27f4b7a9f-goog