From nobody Thu Apr 25 00:42:49 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+101245+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1678917524681425.1362881511375; Wed, 15 Mar 2023 14:58:44 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id DTJRYY1788612xjv88dxIDya; Wed, 15 Mar 2023 14:58:44 -0700 X-Received: from NAM10-DM6-obe.outbound.protection.outlook.com (NAM10-DM6-obe.outbound.protection.outlook.com [40.107.93.65]) by mx.groups.io with SMTP id smtpd.web11.6797.1678917521753894092 for ; Wed, 15 Mar 2023 14:58:43 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eKfd5E7d3Zk32AUbL/8XZxzyqosicohmT8+cXdHJ0MY9BgFPR4LERua0tZ6589pur17aWALDyYoR3BAgm/OXURFPduXLIHx9YkYmbhB6IJ3n4/BdB1fB8dwdsSLoRNv0KEg8zsOeZKp5tAjVYysTGcTGSlKxc5h3JclquaI6P3Vdvb9fjitjf2G/AEgXj4n0hUSWiKy+pYG12+GzD+BSB52u2m14WNxp+uERQPoC3GlPUFLPybj4HYR30XY9liiBj+p8JKQwckzZfSRpZgA6oTmhJgqcp8eFUxN1HqcgLBMgCPqMwZbzZT8w3cUji+X2P02qyxE5O0iK91TQLAk0DA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=lXpXRHPP2Vv0U7HTJSDpeJspE9Rt9XcHPqpqyb7aFqE=; b=QEyuJhebOGw5+Lavgp9xA5i3k5rviAOO9ArGz7tM/9Z9UAthW1CB3EVVkVO2svTWktx0tjK0wzzUof9DLwMwnKbnDSrHSdEaTPq+pDDo4engFyvr1cLUYalkfWepu3nbB3XbSwEUiR5eSYYfudrWGWXAIBaXdQldT3uQ2kkrBOIZpPSz6jEoo/0Dr5EyPHVSZK3S+NDlwkJVaLfbnU8//cBQL97bGG18UgthYPvJJrzzGUwvTM358qcfLdwRvUQARYGqwP1cwbDR+DrSKChGUUDPqVtyr0AnJyIv98MqApKeFyVgFnSz9ILqtLzx1vDJoEHQSX6LP2TzAYJSVuMnXw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none X-Received: from MW4PR04CA0071.namprd04.prod.outlook.com (2603:10b6:303:6b::16) by DS0PR12MB7678.namprd12.prod.outlook.com (2603:10b6:8:135::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.24; Wed, 15 Mar 2023 21:58:39 +0000 X-Received: from CO1NAM11FT081.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6b:cafe::53) by MW4PR04CA0071.outlook.office365.com (2603:10b6:303:6b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.29 via Frontend Transport; Wed, 15 Mar 2023 21:58:39 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+101245+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C X-Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT081.mail.protection.outlook.com (10.13.174.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6199.16 via Frontend Transport; Wed, 15 Mar 2023 21:58:39 +0000 X-Received: from localhost (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 15 Mar 2023 16:58:38 -0500 From: "Roth, Michael via groups.io" To: CC: Tom Lendacky , Jiewen Yao , , Gerd Hoffmann , Erdem Aktas , James Bottomley , Min Xu , Dov Murik Subject: [edk2-devel] [PATCH RESEND 1/4] OvmfPkg/AmdSevDxe: Allocate SEV-SNP CC blob as EfiACPIReclaimMemory Date: Wed, 15 Mar 2023 16:57:44 -0500 Message-ID: <20230315215747.1543837-2-michael.roth@amd.com> In-Reply-To: <20230315215747.1543837-1-michael.roth@amd.com> References: <20230315215747.1543837-1-michael.roth@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT081:EE_|DS0PR12MB7678:EE_ X-MS-Office365-Filtering-Correlation-Id: 538bccc0-3588-46ec-94ec-08db25a06f4a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: NKLoHXe3t4KufgjlASSRTvGAj9IpVBt/KUDPHqAJklsk1Dahn1IsYYxQB+y4/wLkkRwZWW7rBBZvwzdE/EIV41rRA39xlI6DcjxYnlTZJltpMUdD1ioRQ+vmOWoMWSNPlA3qZvPMqJwxmIF9+MDKmG3edhAtypzey4QXto6vWyaOlOsafAmRGbd9wTE8/ayxKSYC8E3FvZgp5+NBiXEQ1lRdd4KhC66t8VYcPMgzq/sJXukZFec1wxCaK1Ec/1hCa25AuLZKknrQX8zj8JK18L4D/4rBC3rdaFz9vwl4GhWuHXBq29BVWSFwcVdfpZAK38/WBqoIRDmnW0Oz9SJ11RgxHD+gv7+R/eFPlpnUWRzuYxwiMgGDAFeilwGLtD4HjCdijmW9FGJL1I0BvbCzPy/qIcjSSyPno31ciZKGxClZ4pO/HYF/qqJeh/ft0EObYcHcWbn5tPyh/3rwRyojlCDIpFq91V8nPGHXoTwsylO342jyfCHiwb0dYLwEbrKIEX5K/2fhwGVPRjMDqSUglo2ViQ7rUY/pqdJ4pfJy63MwnaZUSzMC3luReHNoWdn6iXmBkKj97+wQB4RsOVZ6bB6o0/4L6HJTxYoywV0/ouE5wCLJlpO49we/jNDMy3s7Law65sdb4b81jx/PM6ASKKKLOG3gYi2fOCX9Zm4FTW13sZQM7WE0b9X+w7G9OdPch6SumvAJUxAlMoOl3HtJo0BWKzrYqcTyH9EtcAMv3cJrLJEZOyQQB4e0rN0dQvZ4efzHillPXwXKTlaO1qZ0og== X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Mar 2023 21:58:39.2242 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 538bccc0-3588-46ec-94ec-08db25a06f4a X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT081.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7678 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,Michael.Roth@amd.com X-Gm-Message-State: Kuk19KGn2eZtxML0AAtVfMNCx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1678917524; bh=RdgA7/rhcl97J/4eoXalZg8Hpc6lLQfZGl/qqLx3KIk=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=hJQLuWezcauCCe+3DPYTRUuHVVE7r1ObxIlkoCJ3Ljk36bx+Kr1Z6b2GOpU60hCaoH8 dDwHoGM0KvdTYpsoGO3FRZhZKiijVpFUwNOc98REG6TwTgmcb61F0dqkxaK2NyaiWgFr7 u0zFGBIdq7llATot07e1EZlz3COMresl2oI= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1678917525862100001 Content-Type: text/plain; charset="utf-8" The SEV-SNP Confidential Computing blob contains metadata that should remain accessible for the life of the guest. Allocate it as EfiACPIReclaimMemory to ensure the memory isn't overwritten by the guest operating system later. Reported-by: Dov Murik Suggested-by: Dov Murik Reviewed-by: Dov Murik Reviewed-by: Tom Lendacky Signed-off-by: Michael Roth Acked-by: Gerd Hoffmann --- OvmfPkg/AmdSevDxe/AmdSevDxe.c | 62 +++++++++++++++++++++++++++-------- 1 file changed, 48 insertions(+), 14 deletions(-) diff --git a/OvmfPkg/AmdSevDxe/AmdSevDxe.c b/OvmfPkg/AmdSevDxe/AmdSevDxe.c index a726498e27..7250cc90e5 100644 --- a/OvmfPkg/AmdSevDxe/AmdSevDxe.c +++ b/OvmfPkg/AmdSevDxe/AmdSevDxe.c @@ -28,15 +28,36 @@ // Present, initialized, tested bits defined in MdeModulePkg/Core/Dxe/DxeM= ain.h #define EFI_MEMORY_INTERNAL_MASK 0x0700000000000000ULL =20 -STATIC CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION mSnpBootDxeTable =3D { - SIGNATURE_32 ('A', 'M', 'D', 'E'), - 1, - 0, - (UINT64)(UINTN)FixedPcdGet32 (PcdOvmfSnpSecretsBase), - FixedPcdGet32 (PcdOvmfSnpSecretsSize), - (UINT64)(UINTN)FixedPcdGet32 (PcdOvmfCpuidBase), - FixedPcdGet32 (PcdOvmfCpuidSize), -}; +STATIC +EFI_STATUS +AllocateConfidentialComputingBlob ( + OUT CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION **CcBlobPtr + ) +{ + EFI_STATUS Status; + CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION *CcBlob; + + Status =3D gBS->AllocatePool ( + EfiACPIReclaimMemory, + sizeof (CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION), + (VOID **)&CcBlob + ); + if (EFI_ERROR (Status)) { + return Status; + } + + CcBlob->Header =3D SIGNATURE_32 ('A', 'M', 'D', 'E'); + CcBlob->Version =3D 1; + CcBlob->Reserved1 =3D 0; + CcBlob->SecretsPhysicalAddress =3D (UINT64)(UINTN)FixedPcdGet32 (PcdOvmf= SnpSecretsBase); + CcBlob->SecretsSize =3D FixedPcdGet32 (PcdOvmfSnpSecretsSize); + CcBlob->CpuidPhysicalAddress =3D (UINT64)(UINTN)FixedPcdGet32 (PcdOvmf= CpuidBase); + CcBlob->CpuidLSize =3D FixedPcdGet32 (PcdOvmfCpuidSize); + + *CcBlobPtr =3D CcBlob; + + return EFI_SUCCESS; +} =20 STATIC EFI_HANDLE mAmdSevDxeHandle =3D NULL; =20 @@ -177,10 +198,11 @@ AmdSevDxeEntryPoint ( IN EFI_SYSTEM_TABLE *SystemTable ) { - EFI_STATUS Status; - EFI_GCD_MEMORY_SPACE_DESCRIPTOR *AllDescMap; - UINTN NumEntries; - UINTN Index; + EFI_STATUS Status; + EFI_GCD_MEMORY_SPACE_DESCRIPTOR *AllDescMap; + UINTN NumEntries; + UINTN Index; + CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION *SnpBootDxeTable; =20 // // Do nothing when SEV is not enabled @@ -286,6 +308,18 @@ AmdSevDxeEntryPoint ( } } =20 + Status =3D AllocateConfidentialComputingBlob (&SnpBootDxeTable); + if (EFI_ERROR (Status)) { + DEBUG (( + DEBUG_ERROR, + "%a: AllocateConfidentialComputingBlob(): %r\n", + __FUNCTION__, + Status + )); + ASSERT (FALSE); + CpuDeadLoop (); + } + if (MemEncryptSevSnpIsEnabled ()) { // // Memory acceptance began being required in SEV-SNP, so install the @@ -323,7 +357,7 @@ AmdSevDxeEntryPoint ( // return gBS->InstallConfigurationTable ( &gConfidentialComputingSevSnpBlobGuid, - &mSnpBootDxeTable + SnpBootDxeTable ); } =20 --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101245): https://edk2.groups.io/g/devel/message/101245 Mute This Topic: https://groups.io/mt/97638492/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 25 00:42:49 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+101246+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1678917544308705.3531723598542; Wed, 15 Mar 2023 14:59:04 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id wEYDYY1788612xUEvh5D2J4N; Wed, 15 Mar 2023 14:59:03 -0700 X-Received: from NAM02-SN1-obe.outbound.protection.outlook.com (NAM02-SN1-obe.outbound.protection.outlook.com [40.107.96.50]) by mx.groups.io with SMTP id smtpd.web10.6879.1678917543315207006 for ; Wed, 15 Mar 2023 14:59:03 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M5RzF1syscCK+AcNm1jjG20ZWxsz9w4L5QrN31nAy0Ta5Hft+JU7OViDjDUGQ187lZoxrbefHT3DrgDECDP0xLtb3a8ALdmsRbMH3Ne/zyh+FVc1Yxck6Uf70E/AGS0S8CHG2PkTY6q+EF91ygiwSKTocyZt3BZfOoFmLZ4XXjG9hJV8hOeKGE3qHiKB5dTnRf0f4y58a73sbVVm5TIX569LTySOIn1CIVuORwsLiVZatVxkfHQSqCx3EQUgfYx7+h3aZBz9WBvGUnpr3Cli0vSYImIdqPaC2qPtMhfazQ4tZTqNa0+BXl1UM/SPZXLHctFfvX0z7h85b9wWFPmPLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=JtE+1dhxJaPKoWokZik5EUGKZzr+Fo7KqbMY0khrBaY=; b=mgiiK+T+ArZ7msKnuE+cob2TsJBP5R3T7ktP3ihjL3k1nyzi4WxIH7ACFn4sBu3q7zwcyJ4pRhJCeVj1sMZ9g22k769qaJoZi1le+CL9xl/eU/WGkz5S+Udz4nAVoXgaeGhE8b/g8rZbCq7y5O7gHieK/kQTZlCL5Dddc2jTwva3LEkJ8eMNMNY2bHRJqPCb4EedGppPOO/45o8LQSKpe4dVRAcuKpdLjx1Q0QPPzvL/KT5E6PVEdP3ULXz44xbh0nPUfUcXW4a2Z0ZE5dyOlxaPfuCTEWP3JgerEBfQNnS+w70abq2vttrT1asa3r19BFusaQ3J3qGk74q4inK9NQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none X-Received: from MW4PR04CA0287.namprd04.prod.outlook.com (2603:10b6:303:89::22) by PH8PR12MB6772.namprd12.prod.outlook.com (2603:10b6:510:1c7::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.24; Wed, 15 Mar 2023 21:59:01 +0000 X-Received: from CO1NAM11FT098.eop-nam11.prod.protection.outlook.com (2603:10b6:303:89:cafe::e9) by MW4PR04CA0287.outlook.office365.com (2603:10b6:303:89::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.26 via Frontend Transport; Wed, 15 Mar 2023 21:59:01 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+101246+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C X-Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT098.mail.protection.outlook.com (10.13.174.207) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6199.16 via Frontend Transport; Wed, 15 Mar 2023 21:59:00 +0000 X-Received: from localhost (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 15 Mar 2023 16:58:59 -0500 From: "Roth, Michael via groups.io" To: CC: Tom Lendacky , Jiewen Yao , , Gerd Hoffmann , Erdem Aktas , James Bottomley , Min Xu Subject: [edk2-devel] [PATCH RESEND 2/4] OvmfPkg/AmdSevDxe: Update ConfidentialComputing blob struct definition Date: Wed, 15 Mar 2023 16:57:45 -0500 Message-ID: <20230315215747.1543837-3-michael.roth@amd.com> In-Reply-To: <20230315215747.1543837-1-michael.roth@amd.com> References: <20230315215747.1543837-1-michael.roth@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT098:EE_|PH8PR12MB6772:EE_ X-MS-Office365-Filtering-Correlation-Id: 26a39ca3-6b62-4749-7af0-08db25a07c21 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: +uzSS9fmEaxPBUesJ5/lSc7McJqOR4hIUqMKG/UBtfBY6tTTDey4J+ZC81QEvCrbroBjSjs0EdOuSV7czYqJc/J+bRkxB0OO7ZsxZS8zoQNPplaXiQEovigprZw1yAg3/FlecFiejVPtftokzZXNdBvyJaqp3uCWuTNtJAJoWYgJ/fF6hTyeeJ58w0Sfesq/G1h2JBv1oZZtIvVCyH2hByJTX91c9CP4zqsOi1vYfnh40vja9R7uO9T7/dK/lRc+eXfuBmmJFtCPzSEUSZerBVABfS4C6bgcNJtyKAleftp8OUmkX33JDU6UbcKSfUwbVGpEVpO75Dgi4+cucLESN9lF2XqTJS/nN+IACTi7hS7EKJIX6Upy0hiqOuwpKaAJmOuc0xqiN+BZCQEz9J/I5yLB91UQpKklI9eJdDhLWfD8CDRAu9Khs6N2v+nat2jwGqAZ4fBny1qjbmwom1ITDR1nI1uxyY912iXaZPY4NCAulm3t7ylqiY1QG64/c13WpA1NzYUhHIB7SrbAQKP3B5dnoni7bZHhsttDtsOL4jrFE1bIAxcN8+yOpvOq+2Zkd3Cu3hJFDFwhaEl9o/ShxMOpQo9A5dRZJNsi3o6scoKRyVMY2UdJGnXG4WUC+bQBDDuMZz6VEgVMkc/kBIK0PaiMpeb+GVuuCLQ2RwrhkP34aca2F6lGrtvAmW5sp5vKKoC1a76uRhF+/uAWhKzbOF6eHJHNp42tc62NzcBetr0= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Mar 2023 21:59:00.7183 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 26a39ca3-6b62-4749-7af0-08db25a07c21 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT098.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR12MB6772 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,Michael.Roth@amd.com X-Gm-Message-State: ogxVls9XuVbHVDv2aMXhR6VSx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1678917543; bh=JjQtibEKw5+ROZ+79GQclQ7BYjvNSJhUUXy/sg1a60c=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=d0isnlS2+wzyAW5MHOh55tKbpABAb57A6dA7c/D4Md0QgezVID17Z/19eNh7B2pVdAJ c3ZdSy1YiM3zm33775ChV6YasqlAIyo4XBvvbwXyzf99F5ItZ5jjdsakck+KmiZXnE6Px Aor13rPy30SqCNvHQ2L6zyE/EVOGAy8ZaA8= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1678917546026100002 Content-Type: text/plain; charset="utf-8" The Confidential Computing blob defined here is intended to match the definition defined by linux guest kernel. Previously, both definitions relied on natural alignment, but that relies on both OVMF and kernel being compiled as 64-bit. While there aren't currently any plans to enable SNP support for 32-bit compilations, the kernel definition has since been updated to use explicit padding/reserved fields to avoid this dependency. Update OVMF to match that definition. While at it, also fix up the Reserved fields to match the numbering used in the kernel. No functional changes (for currently-supported environments, at least). Reviewed-by: Tom Lendacky Acked-by: Jiewen Yao Signed-off-by: Michael Roth Acked-by: Gerd Hoffmann --- OvmfPkg/AmdSevDxe/AmdSevDxe.c | 4 +++- OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/OvmfPkg/AmdSevDxe/AmdSevDxe.c b/OvmfPkg/AmdSevDxe/AmdSevDxe.c index 7250cc90e5..cf074f2c89 100644 --- a/OvmfPkg/AmdSevDxe/AmdSevDxe.c +++ b/OvmfPkg/AmdSevDxe/AmdSevDxe.c @@ -48,11 +48,13 @@ AllocateConfidentialComputingBlob ( =20 CcBlob->Header =3D SIGNATURE_32 ('A', 'M', 'D', 'E'); CcBlob->Version =3D 1; - CcBlob->Reserved1 =3D 0; + CcBlob->Reserved =3D 0; CcBlob->SecretsPhysicalAddress =3D (UINT64)(UINTN)FixedPcdGet32 (PcdOvmf= SnpSecretsBase); CcBlob->SecretsSize =3D FixedPcdGet32 (PcdOvmfSnpSecretsSize); + CcBlob->Reserved1 =3D 0; CcBlob->CpuidPhysicalAddress =3D (UINT64)(UINTN)FixedPcdGet32 (PcdOvmf= CpuidBase); CcBlob->CpuidLSize =3D FixedPcdGet32 (PcdOvmfCpuidSize); + CcBlob->Reserved2 =3D 0; =20 *CcBlobPtr =3D CcBlob; =20 diff --git a/OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h b/OvmfP= kg/Include/Guid/ConfidentialComputingSevSnpBlob.h index b328310fd0..83620e31b8 100644 --- a/OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h +++ b/OvmfPkg/Include/Guid/ConfidentialComputingSevSnpBlob.h @@ -18,14 +18,16 @@ { 0x85, 0x54, 0x93, 0xd7, 0x77, 0x91, 0x2d, 0x42 }, \ } =20 -typedef struct { +typedef PACKED struct { UINT32 Header; UINT16 Version; - UINT16 Reserved1; + UINT16 Reserved; UINT64 SecretsPhysicalAddress; UINT32 SecretsSize; + UINT32 Reserved1; UINT64 CpuidPhysicalAddress; UINT32 CpuidLSize; + UINT32 Reserved2; } CONFIDENTIAL_COMPUTING_SNP_BLOB_LOCATION; =20 extern EFI_GUID gConfidentialComputingSevSnpBlobGuid; --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101246): https://edk2.groups.io/g/devel/message/101246 Mute This Topic: https://groups.io/mt/97638497/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 25 00:42:49 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+101247+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1678917566889959.1159628514845; Wed, 15 Mar 2023 14:59:26 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id OkTBYY1788612x28RozHoozI; Wed, 15 Mar 2023 14:59:26 -0700 X-Received: from NAM11-DM6-obe.outbound.protection.outlook.com (NAM11-DM6-obe.outbound.protection.outlook.com [40.107.223.62]) by mx.groups.io with SMTP id smtpd.web11.6822.1678917565627619330 for ; Wed, 15 Mar 2023 14:59:25 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IjQ3EsCpMz1k2ENZBX+JFMSr+7/jp0g2GclpDQbvHoRJ8JIXDqHZgQAwJuu/zVcDUVIcbuW7g9YytLBzsrPLTch6fkV1038cZGIF6N71zWUI0fHw0UT1/keMYCrdUtrRMiMtAblPQ6dKOI5P9XuCPMWdlMWVuuhsM+JcWDbN/5e/8sH+DzJiOmyaTr/q9wW2DO6YOcArLm5et02qg852ofUduzs3/ED52GUmA3R0OeeAPUbNvqb1G1y+EzZ+jFnT15QIw768ANZR6NipanXhIlB/fztZieivG7nHJXOTOeFK/XuuGwtRaFisvo+ljEc3a38jBmtTs9Vs8Jg25xhdaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=b4ep7E86IGY5rBBOyiT/2dfBLHR2bhaof4monbShjXI=; b=E28xA8l75x2vyDRg+BRFhmxQzdjyygt/s9QgtrsyEdCWIBKlqDwavOKR8HwhOSOu891LVkbvz31u0wgWYwkKScwhICFo/kLaJ0mBpSA/VlXqLzXhM4Ff56Ilp0p3zE46vJhgGQAAmWUY1BARTkncrsaSi1y8W9YD+o7dWduDBhCUvleVs8bu3w1mmVfjFj3d/4Im9wtIdgZ3rzRlS54D5D1dkvSyMFxPNWx/vQ1lS013HCcyxdLjhAJ8nOXqNpV7gQ2w4xooA+sERXBcs8GSfebEuH4wlJ7NeEhpCW4ZjPo5e3pf16MaRqXS2Ti75rNJGZET4ERdGkr14OKR7DPBpg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none X-Received: from MW4PR04CA0216.namprd04.prod.outlook.com (2603:10b6:303:87::11) by DM4PR12MB6640.namprd12.prod.outlook.com (2603:10b6:8:8f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.24; Wed, 15 Mar 2023 21:59:22 +0000 X-Received: from CO1NAM11FT110.eop-nam11.prod.protection.outlook.com (2603:10b6:303:87:cafe::f7) by MW4PR04CA0216.outlook.office365.com (2603:10b6:303:87::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.30 via Frontend Transport; Wed, 15 Mar 2023 21:59:22 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+101247+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C X-Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT110.mail.protection.outlook.com (10.13.175.125) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6199.17 via Frontend Transport; Wed, 15 Mar 2023 21:59:21 +0000 X-Received: from localhost (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 15 Mar 2023 16:59:20 -0500 From: "Roth, Michael via groups.io" To: CC: Tom Lendacky , Jiewen Yao , , Gerd Hoffmann , Erdem Aktas , James Bottomley , Min Xu , Pavan Kumar Paluri Subject: [edk2-devel] [PATCH RESEND 3/4] OvmfPkg/CcExitLib: Fix SEV-SNP XSave area size calculation Date: Wed, 15 Mar 2023 16:57:46 -0500 Message-ID: <20230315215747.1543837-4-michael.roth@amd.com> In-Reply-To: <20230315215747.1543837-1-michael.roth@amd.com> References: <20230315215747.1543837-1-michael.roth@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT110:EE_|DM4PR12MB6640:EE_ X-MS-Office365-Filtering-Correlation-Id: fd4a4c56-5ff5-4795-aa73-08db25a088a1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: jJOiwyGV7lI2DB/isKxZ/bFSujFTJs1ctGgh3NZLFkKZiPTV84YLKiT+57W5ct+SLTxYSXsow+7jKiIPk747HJ7YrZwAW7PlEPcMsPhYWTs8Od7EpoKjTnJOa2pLnhx6rWdaYbbiMicEolm0dz/pKlE8R+K15ineJRZMmsxKEFbun8aS+0P3iOreJuYiwHnLJ++gYoCrLrOyLVDrpRUgm8gokNHKUqgKeLUL7Am+Byp89INQsMBQyckW8gVlOO9oQBSxiYJvW7zJoispk9uwYB4TM4Bkp8YtX4KAw0GCsQSThc4DluOBTszujmsW8nqZHraRgt2fgwLQ3zFsHupyjSeVTSxSouBrriMN2iSgh7FTWmL0wwdy+SBqNmLWaf9gWAdqYK/QYMV5hQWVx6URq44tfxObasc78Ycd7hTN9/Jcx3VNT8gh+toSOn1YHL2+WPd7EZolvjynGGGVQtPLGHtEYt3C2bA4+2ti1GA+9C+l906qz1OR3Kd7sXfkYldsLDqIsQwVZbLNZkAR8xvAdZQBKKTVfK6paX+kh2XdtMqYsOJK5NeARnkrPrYZS3wOK0X8cvMG458T5tgcffAT9MYh5gx3vBoABax9SBb27g1pg5huAX3ZKd/nWub45B5W/K+31S88JzCc2vJXEfonaXpiCHz8boT9J1Y7VnZCzXOHOOwSVvQtB3qtZDLfKhGdc3btuBBB9s3hJyZ2GwvLYimB5oXT5y5+WuPjff2LjyY= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Mar 2023 21:59:21.7379 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fd4a4c56-5ff5-4795-aa73-08db25a088a1 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT110.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB6640 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,Michael.Roth@amd.com X-Gm-Message-State: a6TSEPjRBLOZ3EoyEdOuzrwzx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1678917566; bh=uWdKsUTWnDyjdvcajjVVmuWGg/vb+mk5MEctClS2kV0=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=rNWZOvoOs+Bh3E7svBJSljYUWy78ryUvdnyIAi/y7nxf0/gl71FTnkF7v8zsXkS3Mjg AHtNHAFa3Thb2MLSn3AikAJc147vpDc13fbl3bAazI4VaB8CUhERwE2/NewqckHVTaTFI 6zmzyc2P9zhpzpeg9rAjiiXf09+GP+aY4z4= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1678917568132100002 Content-Type: text/plain; charset="utf-8" CPUID leaf 0xD sub-leafs 0x0 and 0x1 contain cumulative sizes for the enabled XSave areas. Those sizes are calculated by tallying up all the other sub-leafs that contain per-area size information for XSave areas that are currently enabled in XCr0/XSS. The current check has the logic inverted. Fix that. This doesn't seem to cause problems currently, but could in the future if OVMF made more extensive use of XSave areas. It was noticed while implementing SNP-related tests for KVM Unit Tests, which re-uses the OVMF #VC handler in some cases. Reported-by: Pavan Kumar Paluri Cc: Pavan Kumar Paluri Reviewed-by: Tom Lendacky Acked-by: Jiewen Yao Signed-off-by: Michael Roth Acked-by: Gerd Hoffmann --- OvmfPkg/Library/CcExitLib/CcExitVcHandler.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/OvmfPkg/Library/CcExitLib/CcExitVcHandler.c b/OvmfPkg/Library/= CcExitLib/CcExitVcHandler.c index 7fe11c5324..94f0c4872c 100644 --- a/OvmfPkg/Library/CcExitLib/CcExitVcHandler.c +++ b/OvmfPkg/Library/CcExitLib/CcExitVcHandler.c @@ -1145,9 +1145,7 @@ GetCpuidXSaveSize ( for (Idx =3D 0; Idx < CpuidInfo->Count; Idx++) { SEV_SNP_CPUID_FUNCTION *CpuidFn =3D &CpuidInfo->function[Idx]; =20 - if (!((CpuidFn->EaxIn =3D=3D 0xD) && - ((CpuidFn->EcxIn =3D=3D 0) || (CpuidFn->EcxIn =3D=3D 1)))) - { + if (!((CpuidFn->EaxIn =3D=3D 0xD) && (CpuidFn->EcxIn > 1))) { continue; } =20 --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101247): https://edk2.groups.io/g/devel/message/101247 Mute This Topic: https://groups.io/mt/97638507/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- From nobody Thu Apr 25 00:42:49 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+101248+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1678917590755935.9094513003887; Wed, 15 Mar 2023 14:59:50 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id V7ROYY1788612x0LTmm4I7Lf; Wed, 15 Mar 2023 14:59:49 -0700 X-Received: from NAM02-DM3-obe.outbound.protection.outlook.com (NAM02-DM3-obe.outbound.protection.outlook.com [40.107.95.62]) by mx.groups.io with SMTP id smtpd.web10.6889.1678917584945076997 for ; Wed, 15 Mar 2023 14:59:45 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b7Ea7uyXzUIkAthU8rcbsdx1Qo2ZsJ8vO/PhT+ZRXy/SSyE35NOysMVIgtPiCp1XT0fmHbjJ3fShtpB7/Aj2Kil9cYaU3Z/mFwf9UV/i9rHNFbzQMfWJk0v2zA3mc/ABA38A8tQt8klz/bvLa38Ogl3mVj1+1fwrbbnR/tPpjXfRfhqK83UHNoc7DECCvqfzBbaYEj1eVxvFCB6s3sUeFAK6oMNeyy+oc8XLMxl0ivXR8ZxZxsV3JTr8/1IYqMnz8pgURC4EHAlBFGIHyM8AVP6fVqjjQdVEg3ckcojSY8ClBVsCY13KlJuwVedrXB8Dlrt4hLNolU9AXvvsxKlV5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=OpyPEkvfxtzB+MRwFRdrlIIujSS/LR8jK6aZYleQqXI=; b=mKqGErP/T7Ka3Df6SZxTbR0Ds93yL0tz79uodNor+8jKKXY3y5BnVe5F+Hl1V0Qw3McGbBZ+a/Bt7IHMJBvtBh/y+0w7oWSXPkrh8cV6vNyjbtQzjrqebU0NVW0+FdtD387du3j5wx2FCZDRdlc//NlojKPzht63hwfr6Snd1IS9hGNa99cjD/FIKmB5WWnwzGgFpj8pbsHnt/caRNap23CGcmuB8hucPVhSM7k5+MLjBKi/KaSr/bw1SXb1mYiLLIyP0LjWHONA66n4oPHcThUSLBBlEfDZVP23x7gAsdOGMLoRTVt+wJtttwANsfxP1rsv/Ey7q4t7uGWdWQBpBQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none X-Received: from MW4PR04CA0046.namprd04.prod.outlook.com (2603:10b6:303:6a::21) by DM8PR12MB5431.namprd12.prod.outlook.com (2603:10b6:8:34::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.26; Wed, 15 Mar 2023 21:59:43 +0000 X-Received: from CO1NAM11FT078.eop-nam11.prod.protection.outlook.com (2603:10b6:303:6a:cafe::c) by MW4PR04CA0046.outlook.office365.com (2603:10b6:303:6a::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.26 via Frontend Transport; Wed, 15 Mar 2023 21:59:43 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+101248+1787277+3901457@groups.io; helo=mail02.groups.io; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C X-Received: from SATLEXMB04.amd.com (165.204.84.17) by CO1NAM11FT078.mail.protection.outlook.com (10.13.175.177) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.6199.11 via Frontend Transport; Wed, 15 Mar 2023 21:59:42 +0000 X-Received: from localhost (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Wed, 15 Mar 2023 16:59:41 -0500 From: "Roth, Michael via groups.io" To: CC: Tom Lendacky , Jiewen Yao , , Gerd Hoffmann , Erdem Aktas , James Bottomley , Min Xu Subject: [edk2-devel] [PATCH RESEND 4/4] OvmfPkg/CcExitLib: Use documented XSave area base size for SEV-SNP Date: Wed, 15 Mar 2023 16:57:47 -0500 Message-ID: <20230315215747.1543837-5-michael.roth@amd.com> In-Reply-To: <20230315215747.1543837-1-michael.roth@amd.com> References: <20230315215747.1543837-1-michael.roth@amd.com> MIME-Version: 1.0 X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1NAM11FT078:EE_|DM8PR12MB5431:EE_ X-MS-Office365-Filtering-Correlation-Id: 9342d301-1499-4258-b044-08db25a09522 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: hYtllo1/YYjRbrTvBQewJCGHoZENsaAy13NugnSttvHdX9mxDai95xvxuzI1sni6/+cgU3hsN+GOOlIPwVBIbQwp13gz154gBOES3O4as13usDz0fcH6KSkIPYjT5LdNCLwO4uZe0bhEsQAb6znQ+AxUcOOuo5/KbspZ7+CRkyzRtdIxYxKHy0tebF99EcSQfltLaQHTRN5DM+rA9Ll2FT0kh/E3wU3RBvML3hRtMn6BTQSoi6MM2UpmFEqORTzym04Yph7sELWpcMdR2lY8rCwkAnWxzejgDlhFcyQHK2K4fMjdmbABAs33htxxQyIqjjWvZQ3/VoosJYgEjVLGcqitW0EC2aFQp16Pmc/rqelCCyhCzYZPofNOhOJpQPojasG3CCpYDiyg2kSvnoW04Hjdx/ayRONJqVx8zVa6hrHOe8mwrAvj61Zrrey7m9jfsO/F5hhyT+K+zFHcgEpfq35Dd+/aG4TvJsnl2YiPWWRn12PzwlZIUCLfHgqrUd6XDXYJM0480gQLFB/VY8yzEF0CecaR6x3FFaftN55sr99ypQxsi7q04Az1JEGNuciqt62YDCAyCIGTN2wTF64knhqrw2AM+jT/SN77jc3VK0ia6yCV1hrRGr9p9/lJqgpge2GCEAp+iLzi6CjG0rhMmE8nrvtKTCgtJY1IQUdn/rm6ydVjAD6M5DN17CC6sy27Su5SnSbv35XR4UtMQfhfhLOl65iYjfN8GFpDfK0STNY= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Mar 2023 21:59:42.7162 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9342d301-1499-4258-b044-08db25a09522 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT078.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR12MB5431 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,Michael.Roth@amd.com X-Gm-Message-State: vsvLrZa5gYIpBBzHw95R38qex1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1678917589; bh=wZBhUCng8bvUpA5wCi6p7i6gKesvg7BKRQBo+gH9UOs=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=Q6c7afkJSn+IQTpXB5t80adc7iT5WDox6KhBr8O6lNjpRW/eb1ygIu2Z9jP1kNUlBTl J3asD3edmmYCq5M0OVN+oUczuGwxrqA4FyiBn0usycH1xk3Ee6Tuc4d+2cNgVO9k17lnG WlFl90sCY8FjGFstWyOI0rkOIAeYQ3wX7Mo= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1678917592217100002 Content-Type: text/plain; charset="utf-8" Currently OVMF tries to rely on the base size advertised via the CPUID table entries corresponding to leaf 0xD, sub-leafs 0x0/0x1. This will generally work for KVM guests, but might not for other SEV-SNP hypervisor implementations. Make the handling more robust by simply using the base area size documented by the APM. Reviewed-by: Tom Lendacky Acked-by: Jiewen Yao Signed-off-by: Michael Roth Acked-by: Gerd Hoffmann --- OvmfPkg/Library/CcExitLib/CcExitVcHandler.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/OvmfPkg/Library/CcExitLib/CcExitVcHandler.c b/OvmfPkg/Library/= CcExitLib/CcExitVcHandler.c index 94f0c4872c..0fc30f7bc4 100644 --- a/OvmfPkg/Library/CcExitLib/CcExitVcHandler.c +++ b/OvmfPkg/Library/CcExitLib/CcExitVcHandler.c @@ -1114,8 +1114,6 @@ SnpEnabled ( =20 @param[in] XFeaturesEnabled Bit-mask of enabled XSAVE features/are= as as indicated by XCR0/MSR_IA32_XSS bits - @param[in] XSaveBaseSize Base/legacy XSAVE area size (e.g. when - XCR0 is 1) @param[in, out] XSaveSize Pointer to storage for calculated XSAV= E area size @param[in] Compacted Whether or not the calculation is for = the @@ -1130,7 +1128,6 @@ STATIC BOOLEAN GetCpuidXSaveSize ( IN UINT64 XFeaturesEnabled, - IN UINT32 XSaveBaseSize, IN OUT UINT32 *XSaveSize, IN BOOLEAN Compacted ) @@ -1139,7 +1136,10 @@ GetCpuidXSaveSize ( UINT64 XFeaturesFound =3D 0; UINT32 Idx; =20 - *XSaveSize =3D XSaveBaseSize; + // + // The base/legacy XSave size is documented to be 0x240 in the APM. + // + *XSaveSize =3D 0x240; CpuidInfo =3D (SEV_SNP_CPUID_INFO *)(UINT64)PcdGet32 (PcdOvmfCpuidBase); =20 for (Idx =3D 0; Idx < CpuidInfo->Count; Idx++) { @@ -1355,7 +1355,6 @@ GetCpuidFw ( =20 if (!GetCpuidXSaveSize ( XCr0 | XssMsr.Uint64, - *Ebx, &XSaveSize, Compacted )) --=20 2.25.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101248): https://edk2.groups.io/g/devel/message/101248 Mute This Topic: https://groups.io/mt/97638519/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-