From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from CO1PR03CU002.outbound.protection.outlook.com (mail-westus2azon11010063.outbound.protection.outlook.com [52.101.46.63]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6B5F3322C66 for ; Wed, 26 Nov 2025 11:33:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.46.63 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764156831; cv=fail; b=cK8ERVbjtOy7qNiTTO59xwFexkFmBtSESw0ppOtVK1EEjWA6LF99tgqr7dPZWNxTzOPmLq1fAxbPGH7OplYETITzjS9eUv4H1SKgOfSpIkoIpk2h8Oa9cb/gePupDVqnvDojvaBzXPOGRxqBn6FQR8LH0HDu0cJfuwj3DupnaPw= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764156831; c=relaxed/simple; bh=aQqB3YCmXN7BcbzVab1STZLFIiVZB7P1zfU2hLoJrWk=; h=Message-ID:Date:Subject:To:Cc:References:From:In-Reply-To: Content-Type:MIME-Version; b=rxy3aWFwkpiZ0GAdHKeVhwI99iu9dXensuH2krPuwb7ZC3V+OQlbjQwB/UlJg22fILyuJgVKhIBn4tJcYy4OOvVUkfL8SzNPmTneqwcV3o/PXKqTdCMNoWKR/8yudE8r49PEEsGu0aniZ5t9upondGdceT79SaaGsAjQfoigIwE= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=citrix.com; spf=pass smtp.mailfrom=citrix.com; dkim=pass (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b=wuXjsOqE; arc=fail smtp.client-ip=52.101.46.63 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=citrix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=citrix.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b="wuXjsOqE" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hT55E3c+WZmW23Y4rY61WMq3rA/9Svdzk4HmRzurJFKjUloxWbMb2QTyP096qeZbADL/QkRNHV1aWT7BqKXDWEtX/fpVqrafhut6tS1kpTNfyuHBDXrsjSC5kONa8fkzjtEeXjpRSzY7zhnAI5g+uS5TUYmpz1gRRMQcEHHeq4xOYriPjn3jf6M8N3PnGaKaBPo/IWMq4gb7M/39W2D3+R4+xDrdbvwWLaRpOkPC/90sbgLP44HwL3MKrclTZMpAd2qxHThLz3vPS44Stpi84asfbS6EbTF+ylgWHjWdqtFvkzCaVuy2RE9afI1qTVGDui+cU+U/sefrJjddK9gQ3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=xvPCKvXyXkS3ZAcedo3S3LjsKc601QXX6U+0+ACBjiY=; b=YGmW4pOO7ni9th8GTZIOQACsRf19giQ8811MOzxLJvBUZX/cMvBvUcSmnMKhElt1uKniwZ61JlC3RjtkDn6ul4zshQ+vgFUGudtN6vSwpynVYkOEuYoTTK2o9qM68roUyvpREyRPLPPs10Blbg1/fNFSdr0fLGQe+sTVKWyT06vphVaJyjGlRO9FeBcj1sXD2rhSYJRMIKBgCFUJDTueCeIM9sJ5Eodih6I+6mNdsv3CAw+TcPykHaHYeMfTOfx35Ws8oeVoawbbBBEVdWIqj3tlqB92CE28wYqzAxEyXufvQxdVjK6bZBu8IUsxdSe6bYBabQb/FtyFWKUmRi7etQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xvPCKvXyXkS3ZAcedo3S3LjsKc601QXX6U+0+ACBjiY=; b=wuXjsOqEQbU7kZ6tv5vI0wRxodeOnnnmZiY2K5DQZhZGkC2DMt+izUgQah8dnZroxxzi5k0EhUTGfaWNic7O/TIwzlRVjIWj2krjrRLFNmE+DoNecxSNPh8h28RmBeRkD4YytPopHx6SQPn/l0jGOSLw0urUgtB/fC781UTSuf4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com; Received: from CH8PR03MB8275.namprd03.prod.outlook.com (2603:10b6:610:2b9::7) by CH0PR03MB6164.namprd03.prod.outlook.com (2603:10b6:610:d3::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9366.13; Wed, 26 Nov 2025 11:33:46 +0000 Received: from CH8PR03MB8275.namprd03.prod.outlook.com ([fe80::b334:94c2:4965:89b8]) by CH8PR03MB8275.namprd03.prod.outlook.com ([fe80::b334:94c2:4965:89b8%5]) with mapi id 15.20.9366.012; Wed, 26 Nov 2025 11:33:46 +0000 Message-ID: <133ac0c0-8cbb-4c75-a81f-5e2823e1b9dc@citrix.com> Date: Wed, 26 Nov 2025 11:33:43 +0000 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] x86/cpu/amd: Correct the microcode table for Zenbleed To: LKML Cc: Borislav Petkov , Mario Limonciello , x86@kernel.org, Andrew Cooper References: <20251126112655.874792-1-andrew.cooper3@citrix.com> Content-Language: en-GB From: Andrew Cooper In-Reply-To: <20251126112655.874792-1-andrew.cooper3@citrix.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-ClientProxiedBy: LO4P123CA0512.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:272::18) To CH8PR03MB8275.namprd03.prod.outlook.com (2603:10b6:610:2b9::7) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH8PR03MB8275:EE_|CH0PR03MB6164:EE_ X-MS-Office365-Filtering-Correlation-Id: 15c7f740-4050-4337-fd47-08de2cdfa96c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?TW1YTVlYSy8zRGVlaWljSUp2bGxqanlRdDNabHpsWjhKd1NaaUpsYlF6aDJR?= =?utf-8?B?MmdacmtXZGJBa3ZCaDVlOHN1ckVkV0VRRVhZbEhFbVIzaTlKK280NmI2Qjlr?= =?utf-8?B?cVVvTHgzOGJiM0cwN3pnU3dLSHltR2hNSnpQRVhvcndocFpzb2l3cm84Y1h2?= =?utf-8?B?NGR0bTJKNlBQaVFTZFVncVdRUnFMU2UwTCtwUDhwaXRYUU5aclN5RnF6UG5v?= =?utf-8?B?VWRlaFpYNnJLSS9JM3hPNDZLTFo2cUdGSUl4L1drS2h5RXkrQ1JxR1lianVp?= =?utf-8?B?MjNRbXBRSjRkaGtvUkRuMDhQV0hKVlltVnpvT1hLdmlIdE42MVZQdWJrRHJQ?= =?utf-8?B?bytacjRhallDaUpFOXg4K3YyenBUNVk3d0xFTUhmaHlLdVpGMjcxNWpwdHp0?= =?utf-8?B?WTB6dE1tc29Tc2pyUUY5ZmNadUpOQlROWks5clJPbmJUQUtSY3lwZ1ZLc3ph?= =?utf-8?B?cjhoeXBGT0pSckRjMUlucjJjS2xHZjlkbFVRdmhVQjRoK2FsTDFoUVp4SXRU?= =?utf-8?B?VXdycXdlZXNNMk5nRXRIQWxyWit1dVJiMjhUTW9ucll0Z3c4SHBYNVZ0Z2Nr?= =?utf-8?B?NzdXSzVNMmMyTGJhYWR0MHhLUzdCdFUwTHRKbkFKQWtIakQ1eTlYRHdrZy9B?= =?utf-8?B?c0l4am9pZEhOR1U4Y1hOZlMzL2tTaDNvbE4vcThVc20zdVNOc2pGMmRuSnhq?= =?utf-8?B?dHQ4Yk8rNHlCVzZGMGZLOWJZekRIQzVXZU1ZWk9scXZocFNYdGhsdElxVDFx?= =?utf-8?B?T3B6c0ZkK3QvczVWb0cvaTJKQndCTmxQU2V4WXl4enpHM2kvRVAyVUZVNVR4?= =?utf-8?B?L0J4TU5JTEI1Sjh1em9ubnZIWHZRS1dTNWhEclZxNmhpZHprd1lKR3k0aXh4?= =?utf-8?B?dWdJRmRHRFVPUEZXOXgyWk44RVh4dFllQnJTaUtseDNKMTdxMjlFYW43NFpv?= =?utf-8?B?Tmh2cEZyMGdxa0NkYndlSzJpNmVaZUIvMnBuZFNoMkFIcnVSMmJaQjhxdHor?= =?utf-8?B?ZVJ5eGJYcFdXTXp6QjlTNkRMYm9oS29ZSVQ3ekowSmVrUlZpQ0M2b1A1NCtL?= =?utf-8?B?eCtld3J2NmFDdSswU1ltdVM5VzZCSTQ0blg4TzdUV0o1cyt1bFprTk9xMmpm?= =?utf-8?B?amQxWjhRSTFxamtYRVNpNTdMdDBHWlVZclUyZjhYb1hpc2Q1bjhhV1YvNm9u?= =?utf-8?B?Q2hJTzdIMFpVbXJ0STYyZlVTSnhTLzhBbUJxM05TczU3ZWR5bUttN3ZUY0Vt?= =?utf-8?B?NjRDdmFYMWE1L1VFOTJlSnJTbjZXVHRwMHAwako1bG81QjN3bnJQTlZXdXUz?= =?utf-8?B?dXBzeHh6QlgxS25GeHQwWHJwUGhlQVpUQnFNc3NqM1NURDVCU3J6dzFVTU9W?= =?utf-8?B?WWIwR3FOWlM1b1M2a1l1YWJ2UUU1VndxbXJUdTkwT2k1d2JQZGUycVJ1cTU2?= =?utf-8?B?N1ZWaUw2MDVXaUNmaWRxVnBKNXB3aVBEMTVVNHk3TlR0bHpzcVNLbm9mOWlv?= =?utf-8?B?UXFXRkttbHlsY095c1JmUE54T29qT29JaTk5MHZ1U0F4VjNVSjJzK1RBTGxF?= =?utf-8?B?ZTRzWVRnMmRBSVpmbFEvMjNuOVZHWWlDWWpsL0NYM1g4dFYyNTQxQUY3dHhS?= =?utf-8?B?RzZiRlZtM2gxOUdDSjB0b1IrdFkvaWhsM2hZZWo3OWxoNnlSL3Rlb3Y3QjFO?= =?utf-8?B?SzgzUTR0bFhlZEZ0c3NGN0FsQ3VvM3lCckwvWE9mbi9VSEVvOHlEWG9sUDJZ?= =?utf-8?B?eEM4TndHWWpGR0lQSkR6NXRNdGU4eGQvQWhHY1pXOEQwVTFUb1F0K1Q5clhS?= =?utf-8?B?S0N1V2pFeWI5NjhFMWxDQ1RTU09Yd21wb0crVjRhUnRxcEN3TTc1RHNzTDhs?= =?utf-8?B?Z0dGVC8xZ1gwTUxreEEvK1FTZ0NUOTlNMzJ0aVFUenpEWitZVFRscWVIRjhZ?= =?utf-8?Q?TWv7Oqd1u82DgAYXfh4lPhT/mJm7SMq2?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH8PR03MB8275.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cFFNQlFZTkV2SllzUFJwcFpZKzMvd2JvUk1Dano4UHV4cjRRcTlXK1lRSmFw?= =?utf-8?B?ZzZxUk5VUmw2SzNRdGZYU0U3UENZb0F4Q0VRNFdqYTJ1ZE9EWGs4VGhBZEdW?= =?utf-8?B?QjdxckNneHl5djNUYXNvSkEvUVFkRmhqUTJ2dlcvMWQ3d1JyckFyWUduem91?= =?utf-8?B?L0tUK2pISldZa3p3WnE2ODcvNjR4OW5xZ0t4R3NzYTNxNDRXU1JId2MrUXpH?= =?utf-8?B?QmN6SWtHVUJmN2RLNGhDZGdHemZDUExnZDROcEhkYzg0Ti9uRUZDNzZIWW4z?= =?utf-8?B?SW1lcjdSNU5hU3dHU2pZbHd5MUg3Tkw2a0JYblFmY3o4SlBJTDB0WnQ2Qmpr?= =?utf-8?B?VW5Ed2djdmhram94R1Noajd0ejhkd2wvMjQxYm9NTWlVV0E0VWxraUNLMnJu?= =?utf-8?B?UmVkbHpVYjlrWWR2TmJkR1JERjJqSnZicVNETkVFZm9kZU1takVBL1N5K3Zl?= =?utf-8?B?M1FqWlVBVmFyakc4OWdPNzJKRWltNForVUJnV2RqZmhMRDBvblNEWHZHMndi?= =?utf-8?B?dkt2R3BXWHAwbnpWUDBzazdKM2pGRUFza3NXV3RJaTU0YnBMZDJwUVRCaHc2?= =?utf-8?B?NHh0b3ZxdFNZSk9Kcm1BMXdna3Vid2JmZ1lobzJhOHdyeUp0QklaTW9IQlF1?= =?utf-8?B?aDlFcHhKV051UGw0YUN0NmdkQktOZ0pwSDJCZU4wb3F6MmlzUXpXY21xN0Vu?= =?utf-8?B?cVN1aU9Md0hEVDF4WlhGUnNFMDBMMlZ2L0I5M0NjSVdvSFJ4YnJEeDhaM3FM?= =?utf-8?B?dHFrWHZzaGZ4MU9ZYVQxSVh4OGtnK0xxYWU4MnEySW9LOXh0ZUxyQjMvVDdn?= =?utf-8?B?djZlVk9JL1dkSTEySFFyQ3d2djR4ZFNLaVJyaTQ1WlNtSU1wU0krMUJPMkVD?= =?utf-8?B?SVlzUjUxS3hDM2txUlh5ZmNhTDlueWY4dEgwcFpGOW5EaVF5d1dlQUtIUkMz?= =?utf-8?B?RXB6RnE5QWFhZTIwaXNFQzdweEh5bFlCVDUxeTN0anNURnIrR3hseUNnLzZX?= =?utf-8?B?dklsSGdjTEVQMnVBdzlWZ0l2ZEJwKzFxYkQwNUNITkxUMVQ2QmwvUGRnaDRZ?= =?utf-8?B?K1UxZmxKVVBjd0wyWVhwajA4U016N0wzOGErdzJjcFNtU2t6S04yRWdURkMz?= =?utf-8?B?a3ZMK05Jd25mL0EvQWlieElqcWU5NW41UWc5alhPL1JjK1h3UUdqKy9FNlR0?= =?utf-8?B?akZsT2pQeEs4bnZKVjNnNWczam1YRi9mS3dUVFpQYnpFc1k4cU45ZnlqUWVl?= =?utf-8?B?Ym1tSmxMczVmVUlPNWNFOEp6OUtIbDdseWJMUTNUR0NubWtFRVh5b1VpWmE2?= =?utf-8?B?U1ZDMEVKcFZlcGNzVWlRWmowcDNzMHpFTGpTMTVGMVFFUUlFdTZEM1FMYno5?= =?utf-8?B?TG00MUI1em5ybXE5Z05Hb2lxemRQSytFWXNrWnJRbFdkcE1xSFh2YWQ4aGU1?= =?utf-8?B?SDlkSGFacTJCdjEyaXN6RHN4NmNOOHhxQWFHUDl6TWFlZjFaRmJpR2Mwd2dv?= =?utf-8?B?U29DU1R1UUxzZHFRb3ZxZGhvNFZET2c2VjdGdVZ3alBBL2FTajVzcEc3b3NY?= =?utf-8?B?ZTJ2NFFmRFVDdWR4dHh1YTJJMktac3VFOGVZZ2w2WVhPdjM0SDBEbjBJL2c3?= =?utf-8?B?MzRrKytUSGhGZFZOVmwvcUdmY1FFaGx1RURBbnhWTEpUNHFFak5Vcyt4ZFVu?= =?utf-8?B?d3ROWHNBVHRCWE5pNFZ5NlN3amhsWHAyODJxMDg2K01qTFhxK3h0SEZMUXdy?= =?utf-8?B?R2luWHdLVUVlUWxLR0Y4clRKUXBYYUFvM2R4NFNTWWFvblBUY0w3NTdETURM?= =?utf-8?B?d2pDUzljUjdCTUptbFJTN2RkQXJDb0NZeGdCcSthdElDR1lKd3h3STduNFVF?= =?utf-8?B?MTR2U3VOUDh3QXNqYVNmNTZFMndjN0M4ODI0MDI2YzhUVVVPUWpKc3oycDBE?= =?utf-8?B?dE1TcFFEK1NaQ3JCYmNSUlQ0RzluUVhiODJ2OGdjWWtlYmROUy9rV1RwdC95?= =?utf-8?B?c2U3Nlh2ZjZNMjd6Q0Jzci9KcmMxWkdlOFEzbDRaU2hpUGdPVUZEdHMvOTFx?= =?utf-8?B?T3hxS2VBTEtBUVVTaWl6VWs1MVhqWkVwbGV0VFN4UjVEK0hha0dKZkxFWVh3?= =?utf-8?B?NFJoblRJNTh1bU9UdGdQVlV3cnN4R3UwUXI1QmF3eDQyMEhUdWw2blFITUdk?= =?utf-8?B?SFE9PQ==?= X-OriginatorOrg: citrix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 15c7f740-4050-4337-fd47-08de2cdfa96c X-MS-Exchange-CrossTenant-AuthSource: CH8PR03MB8275.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Nov 2025 11:33:46.6460 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335836de-42ef-43a2-b145-348c2ee9ca5b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qm5ZNA2w+l68eqQ0blwktBWzpyMh35O69W6xwsXwrMfyEiOLdAl9MRoE+BELws5fg9JnzHtLbk1XbXRupmVsg52LBal/EqCr+kEOVlZVfq8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR03MB6164 On 26/11/2025 11:26 am, Andrew Cooper wrote: > The good revisions are tied to exact steppings, meaning it's not valid to > match on model number alone, let alone a range. > > This is probably only a latent issue. From public microcode archives, the > followin CPUs exist 17-30-00, 17-60-00, 17-70-00 and would be captured by the > model ranges. They're likely pre-production steppings, and likely didn't get > Zenbleed microcode, but it's still incorrect to compare them to a different > stepping's revision. > > Either way, convert the logic to use x86_match_min_microcode_rev(), which is > the preferred mechanism. > > Fixes: 522b1d69219d ("x86/cpu/amd: Add a Zenbleed fix") > Signed-off-by: Andrew Cooper > --- > CC: Borislav Petkov > CC: Mario Limonciello > CC: x86@kernel.org > CC: linux-kernel@vger.kernel.org > --- > arch/x86/kernel/cpu/amd.c | 29 ++++++++--------------------- > 1 file changed, 8 insertions(+), 21 deletions(-) > > diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c > index 5d46709c58d0..9721d24727e9 100644 > --- a/arch/x86/kernel/cpu/amd.c > +++ b/arch/x86/kernel/cpu/amd.c > @@ -951,26 +951,13 @@ static void init_amd_zen1(struct cpuinfo_x86 *c) > } > } > > -static bool cpu_has_zenbleed_microcode(void) > -{ > - u32 good_rev = 0; > - > - switch (boot_cpu_data.x86_model) { > - case 0x30 ... 0x3f: good_rev = 0x0830107b; break; > - case 0x60 ... 0x67: good_rev = 0x0860010c; break; > - case 0x68 ... 0x6f: good_rev = 0x08608107; break; > - case 0x70 ... 0x7f: good_rev = 0x08701033; break; > - case 0xa0 ... 0xaf: good_rev = 0x08a00009; break; > - > - default: > - return false; > - } > - > - if (boot_cpu_data.microcode < good_rev) > - return false; > - > - return true; > -} > +static const struct x86_cpu_id amd_zenbleed_microcode[] = { > + ZEN_MODEL_STEP_UCODE(0x17, 0x31, 0x0, 0x0830107b), > + ZEN_MODEL_STEP_UCODE(0x17, 0x60, 0x1, 0x0860010c), > + ZEN_MODEL_STEP_UCODE(0x17, 0x68, 0x1, 0x08608107), > + ZEN_MODEL_STEP_UCODE(0x17, 0x71, 0x0, 0x08701033), > + ZEN_MODEL_STEP_UCODE(0x17, 0xa0, 0x0, 0x08a00009), > +}; Sorry, this needs a {} terminator to be correct.  I'll send out a v2 in a bit, assuming there are no other comments. ~Andrew