From nobody Sun Feb 8 17:13:40 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+50970+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 157428049950977.71914225705632; Wed, 20 Nov 2019 12:08:19 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id f6tGYY1788612xa2sXnsSqYJ; Wed, 20 Nov 2019 12:08:19 -0800 X-Received: from NAM02-CY1-obe.outbound.protection.outlook.com (NAM02-CY1-obe.outbound.protection.outlook.com [40.107.76.52]) by mx.groups.io with SMTP id smtpd.web11.13474.1574280498533258490 for ; Wed, 20 Nov 2019 12:08:18 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dkFoucy8ahXGicBWe9B62l/c3pg4hROtjTxsWVd4hUQeyxoY6O3Irhe18R5WdhZrkB9Le4+JgSphTUuhJPcHr2dXgLlxAaBD6cjvANM3yGerdIEi/i8wLD23qpI/bQNNcCmMBRNGqJbwFwFA6agZA29557BWVbKF0HT66FE85TgdIAJGMjz/kMt0pLegyLMCD2HotRGiOwtmoXMD+bzsNU50pP50Kar6AUnaqddDJHobFXRbCbUOwXyhtlGaFEpnqx6cltI9WDUrdhibpMloQqsrFqvjSVEeu45hQdbQA3X7Czzjril/3JatdJYuQzaNfLiiqTRaUfWfJJ4Si3UKaw== 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-SenderADCheck; bh=XSE5gddmR2/Fs/1TAs9+FBQaQY1dphBEgr9sNO2vrkM=; b=cDUKYpYc2e1+3TXrDgM9NS59fc4oLUKGEsVYEFCgTFASmX9/gzpy+Yo1OTUxZ9zaFP8aSNJqQGXOjTqIxAT7B9+SIuTF4uzRtwqQKCOxYD/DqOBYg73x9SJHH4153RNLLEPBDfJG+iockx8ITl8z3QVU8/4XwCZFzeRBC3K4xuTBSSVCpOQ2p9pAKBsNG90IuRj0+uXEhFfp9OnFfK2bfpPpWOqLo5U8OhI3RVHLO2zgWeFdpLth6ysmCIK3cNL/+1j84K6uWPCedbANchq/1d8fIyjNFBNku3u0VbRYXv/3Yc6d3UfDMrZB2l0NUzlwj19keVdL/vNeOH8Mwb00Bw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none X-Received: from DM6PR12MB3163.namprd12.prod.outlook.com (20.179.71.154) by DM6PR12MB3675.namprd12.prod.outlook.com (10.255.76.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2451.28; Wed, 20 Nov 2019 20:08:17 +0000 X-Received: from DM6PR12MB3163.namprd12.prod.outlook.com ([fe80::dd0c:8e53:4913:8ef4]) by DM6PR12MB3163.namprd12.prod.outlook.com ([fe80::dd0c:8e53:4913:8ef4%5]) with mapi id 15.20.2451.031; Wed, 20 Nov 2019 20:08:17 +0000 From: "Lendacky, Thomas" To: devel@edk2.groups.io Cc: Jordan Justen , Laszlo Ersek , Ard Biesheuvel , Michael D Kinney , Liming Gao , Eric Dong , Ray Ni , Brijesh Singh Subject: [edk2-devel] [RFC PATCH v3 30/43] OvmfPkg/Sec: Add #VC exception handling for Sec phase Date: Wed, 20 Nov 2019 14:06:52 -0600 Message-Id: <041cb6f6352c9e0f9982d316cd842c2daf57e7fa.1574280425.git.thomas.lendacky@amd.com> In-Reply-To: References: X-ClientProxiedBy: DM3PR12CA0087.namprd12.prod.outlook.com (2603:10b6:0:57::31) To DM6PR12MB3163.namprd12.prod.outlook.com (2603:10b6:5:15e::26) MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 1f637e9a-ddf6-47ec-8cc6-08d76df54fa0 X-MS-TrafficTypeDiagnostic: DM6PR12MB3675: X-MS-Exchange-PUrlCount: 1 X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; Received-SPF: pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+50970+1787277+3901457@groups.io; helo=web01.groups.io; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: 9JjI5LxAyhwRIePBcYn8mi4L1Zoou2erMAIDH1PXVoZ3PrwWp5/9ux1CVXTX7Z2K05yGhtzE17WUxovHya1gHUKsBkqnifx6RbidPZHl2U48UC8KNL19tfNf97QIdt8lvTKxKWmN7xhdmK4wsLMJFZ3/FAwz2Lblhks547jeC0xrbqyAVx3IkF3tZHYQ2pti2Gqdoh3Mxdo5XBdyNZwUltaOzntD7tgL5vhP8Rlh5Z3jr64c9Wt4TJUJ11Ma08iWQCUp6qICf4r7h7no/PYq3ft5QKcAMvO5agstR/KGLycTVouuF3LfWq+/7Pvv6F/GGO67JSPzXe5HFgqrz3qYURRfNrRHkY0Vb2CKld8rKuYr+UKG1RYnxaMs9fuS2TUmGTxI6+m+cYCoU3tAtAWPjHOKooGsTnhydXCNKiKry6f3Xf2w8oIQakEB4bRFuRSKMhz/uXMP6oiic8nft0v3nHbv7hbCwFwoYKrLlyo4pRw= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1f637e9a-ddf6-47ec-8cc6-08d76df54fa0 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Nov 2019 20:07:46.9879 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Ba5uxv5lJaTxaYJJUb+IskEnhVGUpCsM2wzQVnM1lPTvpwBJmzZQA+SdPr4cSLy+bYibQg7CZKhD5XKIe8NyDQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3675 Precedence: Bulk List-Unsubscribe: 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,thomas.lendacky@amd.com X-Gm-Message-State: iE6asgdHcWINqRyGhLd2WZL0x1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1574280499; bh=BYz2SZqjZcbjXWV5OakllJdre6pg24kpt1A07FmcoDk=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=UY/xWGFII89QdtmICEx0M/7/Uka0YqAE17usaCzU8GS0bhJmwQ22VRGR+Xr0uCEoT+Y o9wOhD7JcQxXWh/grRRm25L6maberpfPACeXEvTpQO4OkHMWlADmQ4I2eqdBjOU588Dph eBTr9og8rrWxf49+NvxRWxRBTjwVluvkKms= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2198 An SEV-ES guest will generate a #VC exception when it encounters a non-automatic exit (NAE) event. It is expected that the #VC exception handler will communicate with the hypervisor using the GHCB to handle the NAE event. NAE events can occur during the Sec phase, so initialize exception handling early in the OVMF Sec support. Cc: Jordan Justen Cc: Laszlo Ersek Cc: Ard Biesheuvel Signed-off-by: Tom Lendacky --- OvmfPkg/Sec/SecMain.inf | 1 + OvmfPkg/Sec/SecMain.c | 29 ++++++++++++++++------------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/OvmfPkg/Sec/SecMain.inf b/OvmfPkg/Sec/SecMain.inf index 63ba4cb555fb..7f53845f5436 100644 --- a/OvmfPkg/Sec/SecMain.inf +++ b/OvmfPkg/Sec/SecMain.inf @@ -50,6 +50,7 @@ [LibraryClasses] PeCoffExtraActionLib ExtractGuidedSectionLib LocalApicLib + CpuExceptionHandlerLib =20 [Ppis] gEfiTemporaryRamSupportPpiGuid # PPI ALWAYS_PRODUCED diff --git a/OvmfPkg/Sec/SecMain.c b/OvmfPkg/Sec/SecMain.c index bae9764577f0..db319030ee58 100644 --- a/OvmfPkg/Sec/SecMain.c +++ b/OvmfPkg/Sec/SecMain.c @@ -24,6 +24,7 @@ #include #include #include +#include =20 #include =20 @@ -737,6 +738,21 @@ SecCoreStartupWithStack ( Table[Index] =3D 0; } =20 + // + // Initialize IDT + // + IdtTableInStack.PeiService =3D NULL; + for (Index =3D 0; Index < SEC_IDT_ENTRY_COUNT; Index ++) { + CopyMem (&IdtTableInStack.IdtTable[Index], &mIdtEntryTemplate, sizeof = (mIdtEntryTemplate)); + } + + IdtDescriptor.Base =3D (UINTN)&IdtTableInStack.IdtTable; + IdtDescriptor.Limit =3D (UINT16)(sizeof (IdtTableInStack.IdtTable) - 1); + + AsmWriteIdtr (&IdtDescriptor); + + InitializeCpuExceptionHandlers (NULL); + ProcessLibraryConstructorList (NULL, NULL); =20 DEBUG ((EFI_D_INFO, @@ -751,19 +767,6 @@ SecCoreStartupWithStack ( // InitializeFloatingPointUnits (); =20 - // - // Initialize IDT - // - IdtTableInStack.PeiService =3D NULL; - for (Index =3D 0; Index < SEC_IDT_ENTRY_COUNT; Index ++) { - CopyMem (&IdtTableInStack.IdtTable[Index], &mIdtEntryTemplate, sizeof = (mIdtEntryTemplate)); - } - - IdtDescriptor.Base =3D (UINTN)&IdtTableInStack.IdtTable; - IdtDescriptor.Limit =3D (UINT16)(sizeof (IdtTableInStack.IdtTable) - 1); - - AsmWriteIdtr (&IdtDescriptor); - #if defined (MDE_CPU_X64) // // ASSERT that the Page Tables were set by the reset vector code to --=20 2.17.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 (#50970): https://edk2.groups.io/g/devel/message/50970 Mute This Topic: https://groups.io/mt/60973137/1787277 Mute #vc: https://groups.io/mk?hashtag=3Dvc&subid=3D3901457 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-