From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id EC9BCAC0311 for ; Wed, 3 Apr 2024 07:09:13 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=PLf3IsfJ4MQLl4q1qr1qwfFEJzpyPvP0Wb8NkKsxRWw=; c=relaxed/simple; d=groups.io; h=From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:msip_labels:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type; s=20240206; t=1712128152; v=1; b=YeBFNoCYmRTcjmknYKaPCr0R7qsZBzU03SOM49k9DbqjFZzmh4Z1HZASasHq89EO39Ja4Wn2 5gjviGlvSIxrmDxXhfx9t604jycTKSToDs494XwTTAWWswcTEo3eZCvZ50gLAaP2DKWjYYBdezc 4WbDSVZ0bGY4fDtSHtjLdeiPFtEc1AVfEbPGpK/Ot89HnzHC5w0w+U5O6btcvwa0ftdluAqY6eN 2a9ec/CVTjlIW8Pu9JuqLIA37vhm+hHFXhxO0h6QSTgBZJftI8qvKlRZH7N+0NMT4jZyxuJxMAw lG5Yw0VVeAXiuaYLzmXGdcoo+DRdlVn9miCfObIXONH+g== X-Received: by 127.0.0.2 with SMTP id 4RyMYY7687511x8vUJpUSS5Y; Wed, 03 Apr 2024 00:09:12 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mx.groups.io with SMTP id smtpd.web11.5410.1712128151964872101 for ; Wed, 03 Apr 2024 00:09:12 -0700 X-CSE-ConnectionGUID: o8VoZr7rRM++ZAevkPahHQ== X-CSE-MsgGUID: uRM1iMSvS8y7tWm5hxgt0A== X-IronPort-AV: E=McAfee;i="6600,9927,11032"; a="7562909" X-IronPort-AV: E=Sophos;i="6.07,176,1708416000"; d="scan'208,217";a="7562909" X-Received: from fmviesa004.fm.intel.com ([10.60.135.144]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Apr 2024 00:09:11 -0700 X-CSE-ConnectionGUID: FljmCOJLSA+1/dXqCWqvvA== X-CSE-MsgGUID: 0d+vFEBiSFGLgRO7lweleg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,176,1708416000"; d="scan'208,217";a="22971620" X-Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmviesa004.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 03 Apr 2024 00:09:11 -0700 X-Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Wed, 3 Apr 2024 00:09:10 -0700 X-Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Wed, 3 Apr 2024 00:09:10 -0700 X-Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.168) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Wed, 3 Apr 2024 00:09:09 -0700 X-Received: from MN6PR11MB8244.namprd11.prod.outlook.com (2603:10b6:208:470::14) by PH7PR11MB6401.namprd11.prod.outlook.com (2603:10b6:510:1fb::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7452.23; Wed, 3 Apr 2024 07:09:06 +0000 X-Received: from MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::2c31:82b7:9f26:5817]) by MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::2c31:82b7:9f26:5817%5]) with mapi id 15.20.7409.031; Wed, 3 Apr 2024 07:09:06 +0000 From: "Ni, Ray" To: "devel@edk2.groups.io" , "Yao, Jiewen" , Liming Gao , "Liu, Zhiguang" , "Kinney, Michael D" , "Guo, Gua" , "Dong, Guo" , "Lu, James" , "Rhodes, Sean" , "Kumar, Rahul R" , "thomas.lendacky@amd.com" CC: Ard Biesheuvel , "Aktas, Erdem" , Gerd Hoffmann , "Xu, Min M" , Michael Roth , Anatol Belski , Anthony Perard , =?iso-8859-1?Q?Corvin_K=F6hne?= , Jianyong Wu , Rebecca Cran Subject: Re: [edk2-devel] [PATCH v3 00/24] Provide SEV-SNP support for running under an SVSM Thread-Topic: [edk2-devel] [PATCH v3 00/24] Provide SEV-SNP support for running under an SVSM Thread-Index: AQHacW2RBhOdIxeoSECGhWHvJmTvZrFKdbQAgAr7JwCAANfAWA== Date: Wed, 3 Apr 2024 07:09:06 +0000 Message-ID: References: <6a19a0ef-6e4f-7375-b2a8-9790c7056709@amd.com> In-Reply-To: <6a19a0ef-6e4f-7375-b2a8-9790c7056709@amd.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN6PR11MB8244:EE_|PH7PR11MB6401:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: ErmguIfaYbxXH4TWH9KJ75oFUpLuEOQ9dIPLdAaKeqoJvnOSaWuyTLy/blvgXBH0FpTj8lk6okIHuf7SYM6LeKn66TT9Sh4JEbibcQovwXV9ulxfKsfxvYpM56g+IpjmWlOE+XvA9ZAYoA0Yj8VRpzOomraoRxPRG9EUCWlNoyl6DfPnIetvvsRB3yl7xVEuy6xnh80i/aUahDGPA5V7ZH35/qKjVRIEmpJ73i7JZBkNDIlpgUgmDN1mHsG+rWTQBIV0Vrvb8cCnUtwI7gU8377siSL1h8j0GSDkQtGx/1nR7JZ7YnflYJq0GDU8JBRQSTWpJdlPqcoJD9cKMkTld3ltHzRSim0vqasruzGcwdhCXcnnBWdkVtpG2eD4iiCFMr17hFBeCKck/7bANOkDPXxlyp6x7fIfkoNXM50n+9OwQUISXq4G2tQPYs7ZZrldq2tftvuaoKFsxTJA6O8V/ilZ9tSkGRu03vqIQugpQewOy+6glz9qGp4Pxmqh8Rq6SJDmCdF2xD3PD1UDPWHzn1XrY9yjvKjO1bEeLV0qxHRevSR/fH9sWUGp3QYqrHOZURWqArsq3mPFX5puyb6oW40frLufepS6e7qhPc3e7MOVF/npEAut295XV2bNmfLemXaOXM43mM7qF97CoGfYEearuUsWIdI4ndz7o7WKUOc= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?Ooif71Plajc47rQtfeQ7lUTiGNxgK1kgbra8dvR00wqF6uIPpJS5O6N+yL?= =?iso-8859-1?Q?AFaCPj2cm8etlPpn9lwX463iXrDq53YZEKkvHWzHscaJapzS7+4lE8Dp33?= =?iso-8859-1?Q?duEiDZrDMnkRtQTKIlLhSOdcFSkIq+YFlRS8iIofFfCZyWAx0ghAGhEN8/?= =?iso-8859-1?Q?fQK9TMQFeAZkvYn3jYRlyQkXYI3ZYmTNIjMZyU10mjmeFHgL891umhDxBG?= =?iso-8859-1?Q?PAjTp9QjPnCDgP26I3Q8f0sPfTXjHzGqEhzcwtlrLFFymUEuh/IUzxvz0W?= =?iso-8859-1?Q?fisp9INpd6kjo8qt9LqfbEMIDSW4CZFD2grDFokP0Sbn1jf+L02hCEVRzE?= =?iso-8859-1?Q?dle7nvFAP0oAQbysc1eDjDWbHZkXSAohpCEhHowY5KjxUhqKDjzYMjbkfQ?= =?iso-8859-1?Q?rP72UMmHDWomkReER+n2NEB8CGrhkanJpATg4za4zG/taQPXmNNuu0mG4t?= =?iso-8859-1?Q?vEYFiouAei0emtzrWCsM6FcJe/oqai65VcszT+OTJe3sy3Nd8Jx11kKyRS?= =?iso-8859-1?Q?TkSwO4IUNiEAZMhgkq2N0ryZxSLL/D4XVuT83yQjj7zoJ2GD3JT6QzRvZm?= =?iso-8859-1?Q?pdzseoBU5/Y/uyqngrFPVmL/NwndSQwlBlfPVREADIgrmtr9JoxFirgUVy?= =?iso-8859-1?Q?etn/mkBNblQD6DWsha1BF/VhL2wNhbptoOiSNCEJDC3U0KzGU/aONejPHZ?= =?iso-8859-1?Q?9cuTQHaeieXL05FmV7awF17SRw+aY5XRQrzH4Jd/+zYA6pLsoq1ebL6Cry?= =?iso-8859-1?Q?it330JmUBVMfWE+azAELmLvebBB0MSIPO3N10YmqcsvBW4NIf3d+CX1rx/?= =?iso-8859-1?Q?LVuzSGMCq226mZfd642L7LV/xLihkTdEibpxS63mJEhEio+pjoSecI9SkC?= =?iso-8859-1?Q?9cwMQzVeueYIDZjeI63/sDT0dv5PeiGqnSdj2C4SvG8LV+zy+o8zR4ut1f?= =?iso-8859-1?Q?WWJagtFtoD5UEPpwD/bdE5+p7ckAM8j/OsDUXW3rdZdxJ4ywSOdBs1C6CJ?= =?iso-8859-1?Q?poFw8PfdbzTt3RH4XQrOpye4HSq6YEBURS9U2D8azT2+st3FxYtDs2gLbN?= =?iso-8859-1?Q?obDzSxEQ6lmqhchd3kDyMxgX8thB/F33bKCZGqJO9kepbTSrgqDuFxkI9M?= =?iso-8859-1?Q?4KTiCUz/eSgpSSEu9rRP8kfjE0MTdLY4Chr9MySMmc0D8PIzs+Pu2GB9ix?= =?iso-8859-1?Q?1MQARr+4vFsbRFegzs6rzN0zhFkMb1yVr+V3m+nv60xp9dd88+KqzuwTSS?= =?iso-8859-1?Q?/lGsg7yg6Fc4PC20DSpRJSD9Q51BEM/Ct3ZZX18U/SCrD8XMOScX2IHhhg?= =?iso-8859-1?Q?GyP1hum3FwKLZoIH1LR4B9U7t9snFaGpeobVjK2JyWeet1kDFjDe9sRwXg?= =?iso-8859-1?Q?vvxNTsT53Z7SzzBPNuzNmjPfTyobPpm+LsDpZ660Zu7jW6rt/qtN7y8Wd/?= =?iso-8859-1?Q?XYhN90FOioMkFAju9x6xnUAfuPi/FseqwcEBttfAOgLCtO7Dv4f1pfpJzL?= =?iso-8859-1?Q?jQkvTXHCrHjIKZK/+xi/lo1rtWb5sF10j2y4f2If5WErHq/AM/FFhMZuGN?= =?iso-8859-1?Q?W19T2i2kCC2hacQ4j40/SCNCsfZLkJnvvWERpSEepLvuT8peeWeZcz7yYJ?= =?iso-8859-1?Q?jd0fkO5lgjEXI=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN6PR11MB8244.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 63c61a42-a5b8-4e52-f15f-08dc53acf39e X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Apr 2024 07:09:06.6491 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: s14YUku/If8IoIia1SdiQYmTR3exHmcqbR62heJLoPEH18i+KLZ99pZlf5GTVJ+TGpH/rwhYDBGdqa4yDvTWeQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR11MB6401 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Wed, 03 Apr 2024 00:09:12 -0700 Resent-From: ray.ni@intel.com Reply-To: devel@edk2.groups.io,ray.ni@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: kGBg8SnX7Yv6Tz6B7S0DJdu9x7686176AA= Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_MN6PR11MB8244110C79F107B39CD348548C3D2MN6PR11MB8244namp_" X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=YeBFNoCY; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io --_000_MN6PR11MB8244110C79F107B39CD348548C3D2MN6PR11MB8244namp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable I think I've acked all patches in UefiCpuPkg. Please let me know if any other patches need my review. Thanks, Ray ________________________________ From: devel@edk2.groups.io on behalf of Lendacky, Th= omas via groups.io Sent: Wednesday, April 3, 2024 2:16 To: devel@edk2.groups.io ; Yao, Jiewen ; Liming Gao ; Ni, Ray = ; Liu, Zhiguang ; Kinney, Michael D ; Guo, Gua ; Dong, Guo = ; Lu, James ; Rhodes, Sean ; Kum= ar, Rahul R Cc: Ard Biesheuvel ; Aktas, Erdem ; Gerd Hoffmann ; Xu, Min M ; Michael Roth ; Anatol Belski ; Anthony Perard ; Corvin K=F6hne ; Jianyong Wu ; Rebecca Cran Subject: Re: [edk2-devel] [PATCH v3 00/24] Provide SEV-SNP support for runn= ing under an SVSM Re-pinging the list/maintainers. Still awaiting feedback/reviews/acks on the changes. Thanks, Tom On 3/26/24 13:34, Tom Lendacky wrote: > Any issues with this version of the series? Still looking for > Reviewed-by's for the MdePkg, UefiCpuPkg and UefiPayloadPkg related > patches. > > Once I get those, I'll submit the edk2-platform patches to support the > new library as a response to these patches for a quick review. > > Thanks, > Tom > > On 3/8/24 09:29, Tom Lendacky wrote: >> >> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4654 >> >> This series adds SEV-SNP support for running OVMF under an Secure VM >> Service Module (SVSM) at a less privileged VM Privilege Level (VMPL). >> By running at a less priviledged VMPL, the SVSM can be used to provide >> services, e.g. a virtual TPM, for the guest OS within the SEV-SNP >> confidential VM (CVM) rather than trust such services from the >> hypervisor. >> >> Currently, OVMF expects to run at the highest VMPL, VMPL0, and there are >> certain SNP related operations that require that VMPL level. >> Specifically, >> the PVALIDATE instruction and the RMPADJUST instruction when setting the >> the VMSA attribute of a page (used when starting APs). >> >> If OVMF is to run at a less privileged VMPL, e.g. VMPL2, then it must >> use an SVSM (which is running at VMPL0) to perform the operations that >> it is no longer able to perform. >> >> When running under an SVSM, OVMF must know the APIC IDs of the vCPUs tha= t >> it will be starting. As a result, the GHCB APIC ID retrieval action must >> be performed. Since this service can also work with SEV-SNP running at >> VMPL0, the patches to make use of this feature are near the beginning of >> the series. >> >> How OVMF interacts with and uses the SVSM is documented in the SVSM >> specification [1] and the GHCB specification [2]. >> >> This support creates a new AmdSvsmLib library that is used by MpInitLib. >> The edk2-platforms repo requires updates/patches to add the new library >> requirement. To accomodate that, this series could be split between: >> >> patch number 12: >> UefiCpuPkg/AmdSvsmLib: Create the AmdSvsmLib library to support an >> SVSM >> >> and patch number 13: >> UefiPayloadPkg: Prepare UefiPayloadPkg to use the AmdSvsmLib library >> >> The updates to edk2-platforms can be applied at the split. >> >> This series introduces support to run OVMF under an SVSM. It consists >> of: >> - Retrieving the list of vCPU APIC IDs and starting up all APs withou= t >> performing a broadcast SIPI >> - Reorganizing the page state change support to not directly use the >> GHCB buffer since an SVSM will use the calling area buffer, instead >> - Detecting the presence of an SVSM >> - When not running at VMPL0, invoking the SVSM for page validation an= d >> VMSA page creation/deletion >> - Detecting and allowing OVMF to run in a VMPL other than 0 when an >> SVSM is present >> >> The series is based off of commit: >> >> e60529df58e4 ("UefiPayloadPkg: Make Dsc accomodative of other archs") >> >> [1] >> https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/spe= cifications/58019.pdf >> [2] >> https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/spe= cifications/56421.pdf >> >> Cc: Anatol Belski >> Cc: Anthony Perard >> Cc: Ard Biesheuvel >> Cc: Corvin K=F6hne >> Cc: Erdem Aktas >> Cc: Gerd Hoffmann >> Cc: Gua Guo >> Cc: Guo Dong >> Cc: James Lu >> Cc: Jianyong Wu >> Cc: Jiewen Yao >> Cc: Laszlo Ersek >> Cc: Liming Gao >> Cc: Michael D Kinney >> Cc: Michael Roth >> Cc: Min Xu >> Cc: Rahul Kumar >> Cc: Ray Ni >> Cc: Rebecca Cran >> Cc: Sean Rhodes >> Cc: Zhiguang Liu >> >> --- >> >> Changes in v3: >> - Renamed CcSvsmLib to a more AMD-specific AmdSvsmLib with corresponding >> function name changes >> - Moved the GHCB APIC ID list GUID definition from MdePkg to UefiCpuPkg >> and change the name from gEfiApicIdsGuid to gGhcbApicIdsGuid >> - Separated the OvmfPkg changes for the AmdSvsmLib into two patches: >> - First patch adds usage of the AmdSvsmLib NULL library >> - Second patch adds the OVMF AmdSvsmLib implementation >> - Updated the commit message for the OVMF AmdSvsmLib implementation to >> indicate that the base functionality for PVALIDATE and RMPADJUST was >> copied from the original locations in prep for converting those sites >> to using the library API. >> >> Changes in v2: >> - Move the APIC IDs retrieval support to the beginning of the patch >> series >> - Use a GUIDed HOB to hold the APIC ID list instead of a PCD >> - Split up Page State Change reorganization into multiple patches >> - Created CcSvsmLib library instead of extending CcExitLib >> - This will require a corresponding update to edk2-platform DSC >> files >> - Removed Ray Ni's Acked-by since it is not a minor change >> - Variable name changes and other misc changes >> >> Tom Lendacky (24): >> OvmfPkg/BaseMemEncryptLib: Fix error check from AsmRmpAdjust() >> MdePkg: GHCB APIC ID retrieval support definitions >> UefiCpuPkg/MpInitLib: Always use AP Create if GhcbApicIds HOB is >> present >> OvmfPkg/PlatformPei: Retrieve APIC IDs from the hypervisor >> OvmfPkg/BaseMemEncryptSevLib: Fix uncrustify errors >> OvmfPkg/BaseMemEncryptSevLib: Calculate memory size for Page State >> Change >> MdePkg: Avoid hardcoded value for number of Page State Change entries >> OvmfPkg/BaseMemEncryptSevLib: Re-organize page state change support >> OvmfPkg/BaseMemEncryptSevLib: Maximize Page State Change efficiency >> MdePkg/Register/Amd: Define the SVSM related information >> MdePkg/BaseLib: Add a new VMGEXIT instruction invocation for SVSM >> UefiCpuPkg/AmdSvsmLib: Create the AmdSvsmLib library to support an >> SVSM >> UefiPayloadPkg: Prepare UefiPayloadPkg to use the AmdSvsmLib library >> Ovmfpkg: Prepare OvmfPkg to use the AmdSvsmLib library >> Ovmfpkg/AmdSvsmLib: Create AmdSvsmLib to handle SVSM related services >> UefiCpuPkg/MpInitLib: Use AmdSvsmSnpVmsaRmpAdjust() to set/clear VMSA >> OvmfPkg/BaseMemEncryptSevLib: Use AmdSvsmSnpPvalidate() to validate >> pages >> OvmfPkg: Create a calling area used to communicate with the SVSM >> OvmfPkg/AmdSvsmLib: Add support for the SVSM_CORE_PVALIDATE call >> OvmfPkg/BaseMemEncryptSevLib: Maximize Page State Change efficiency >> OvmfPkg/AmdSvsmLib: Add support for the SVSM create/delete vCPU calls >> UefiCpuPkg/MpInitLib: AP creation support under an SVSM >> Ovmfpkg/CcExitLib: Provide SVSM discovery support >> OvmfPkg/BaseMemEncryptLib: Check for presence of an SVSM when not at >> VMPL0 >> >> >> OvmfPkg/OvmfPkg.dec >> | 4 + >> >> UefiCpuPkg/UefiCpuPkg.dec >> | 8 +- >> >> OvmfPkg/AmdSev/AmdSevX64.dsc >> | 1 + >> >> OvmfPkg/Bhyve/BhyveX64.dsc >> | 1 + >> >> OvmfPkg/CloudHv/CloudHvX64.dsc >> | 1 + >> >> OvmfPkg/IntelTdx/IntelTdxX64.dsc >> | 1 + >> >> OvmfPkg/Microvm/MicrovmX64.dsc >> | 1 + >> >> OvmfPkg/OvmfPkgIa32.dsc >> | 1 + >> >> OvmfPkg/OvmfPkgIa32X64.dsc >> | 3 +- >> >> OvmfPkg/OvmfPkgX64.dsc >> | 1 + >> >> OvmfPkg/OvmfXen.dsc >> | 1 + >> >> UefiCpuPkg/UefiCpuPkg.dsc >> | 4 +- >> >> UefiPayloadPkg/UefiPayloadPkg.dsc >> | 1 + >> >> OvmfPkg/AmdSev/AmdSevX64.fdf >> | 9 +- >> >> OvmfPkg/OvmfPkgX64.fdf >> | 3 + >> >> MdePkg/Library/BaseLib/BaseLib.inf >> | 2 + >> >> OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.inf >> | 38 ++ >> >> OvmfPkg/Library/BaseMemEncryptSevLib/DxeMemEncryptSevLib.inf >> | 3 +- >> >> OvmfPkg/Library/BaseMemEncryptSevLib/PeiMemEncryptSevLib.inf >> | 3 +- >> >> OvmfPkg/Library/BaseMemEncryptSevLib/SecMemEncryptSevLib.inf >> | 3 +- >> >> OvmfPkg/Library/CcExitLib/CcExitLib.inf >> | 3 +- >> >> OvmfPkg/Library/CcExitLib/SecCcExitLib.inf >> | 3 +- >> >> OvmfPkg/PlatformPei/PlatformPei.inf >> | 3 + >> >> OvmfPkg/ResetVector/ResetVector.inf >> | 2 + >> >> UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.inf >> | 27 ++ >> >> UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf >> | 2 + >> >> UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf >> | 2 + >> >> MdePkg/Include/Library/BaseLib.h >> | 39 ++ >> >> MdePkg/Include/Register/Amd/Fam17Msr.h >> | 19 +- >> >> MdePkg/Include/Register/Amd/Ghcb.h >> | 19 +- >> >> MdePkg/Include/Register/Amd/Msr.h >> | 3 +- >> >> MdePkg/Include/Register/Amd/Svsm.h >> | 101 ++++ >> >> MdePkg/Include/Register/Amd/SvsmMsr.h >> | 35 ++ >> >> OvmfPkg/Include/WorkArea.h >> | 9 +- >> >> OvmfPkg/Library/BaseMemEncryptSevLib/X64/SnpPageStateChange.h >> | 6 +- >> >> UefiCpuPkg/Include/Guid/GhcbApicIds.h >> | 17 + >> >> UefiCpuPkg/Include/Library/AmdSvsmLib.h >> | 101 ++++ >> >> UefiCpuPkg/Library/MpInitLib/MpLib.h >> | 29 +- >> >> OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.c >> | 500 ++++++++++++++++++++ >> >> OvmfPkg/Library/BaseMemEncryptSevLib/X64/DxeSnpSystemRamValidate.c >> | 11 +- >> >> OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c >> | 27 +- >> >> OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiSnpSystemRamValidate.c >> | 22 +- >> >> OvmfPkg/Library/BaseMemEncryptSevLib/X64/SecSnpSystemRamValidate.c >> | 31 +- >> >> OvmfPkg/Library/BaseMemEncryptSevLib/X64/SnpPageStateChangeInternal.c >> | 206 ++++---- >> >> OvmfPkg/Library/CcExitLib/CcExitVcHandler.c >> | 29 +- >> >> OvmfPkg/PlatformPei/AmdSev.c >> | 103 +++- >> >> UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.c >> | 108 +++++ >> >> UefiCpuPkg/Library/MpInitLib/Ia32/AmdSev.c >> | 21 +- >> >> UefiCpuPkg/Library/MpInitLib/MpLib.c >> | 9 +- >> >> UefiCpuPkg/Library/MpInitLib/X64/AmdSev.c >> | 134 ++++-- >> >> MdePkg/Library/BaseLib/Ia32/VmgExitSvsm.nasm >> | 39 ++ >> >> MdePkg/Library/BaseLib/X64/VmgExitSvsm.nasm >> | 94 ++++ >> >> OvmfPkg/ResetVector/ResetVector.nasmb >> | 6 +- >> >> OvmfPkg/ResetVector/X64/OvmfSevMetadata.asm >> | 11 +- >> >> UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.uni >> | 13 + >> 55 files changed, 1641 insertions(+), 232 deletions(-) >> create mode 100644 OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.inf >> create mode 100644 UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.in= f >> create mode 100644 MdePkg/Include/Register/Amd/Svsm.h >> create mode 100644 MdePkg/Include/Register/Amd/SvsmMsr.h >> create mode 100644 UefiCpuPkg/Include/Guid/GhcbApicIds.h >> create mode 100644 UefiCpuPkg/Include/Library/AmdSvsmLib.h >> create mode 100644 OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.c >> create mode 100644 UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.c >> create mode 100644 MdePkg/Library/BaseLib/Ia32/VmgExitSvsm.nasm >> create mode 100644 MdePkg/Library/BaseLib/X64/VmgExitSvsm.nasm >> create mode 100644 UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.un= i >> -=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 (#117346): https://edk2.groups.io/g/devel/message/117346 Mute This Topic: https://groups.io/mt/104810672/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- --_000_MN6PR11MB8244110C79F107B39CD348548C3D2MN6PR11MB8244namp_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
I think I've acked all patches in UefiCpuPkg.
Please let me know if any other patches need my review.

Thanks,
Ray

From: devel@edk2.groups.io = <devel@edk2.groups.io> on behalf of Lendacky, Thomas via groups.io &l= t;thomas.lendacky=3Damd.com@groups.io>
Sent: Wednesday, April 3, 2024 2:16
To: devel@edk2.groups.io <devel@edk2.groups.io>; Yao, Jiewen &= lt;jiewen.yao@intel.com>; Liming Gao <gaoliming@byosoft.com.cn>; N= i, Ray <ray.ni@intel.com>; Liu, Zhiguang <zhiguang.liu@intel.com&g= t;; Kinney, Michael D <michael.d.kinney@intel.com>; Guo, Gua <gua.= guo@intel.com>; Dong, Guo <guo.dong@intel.com>; Lu, James <james.lu@intel.com>= ; Rhodes, Sean <sean@starlabs.systems>; Kumar, Rahul R <rahul.r.ku= mar@intel.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>; Aktas, Erdem &= lt;erdemaktas@google.com>; Gerd Hoffmann <kraxel@redhat.com>; Xu, = Min M <min.m.xu@intel.com>; Michael Roth <michael.roth@amd.com>= ; Anatol Belski <anbelski@linux.microsoft.com>; Anthony Perard <anthony.perard@citrix.com>; Corvin K=F6hne <corvink@freebsd.org&= gt;; Jianyong Wu <jianyong.wu@arm.com>; Rebecca Cran <rebecca@bsdi= o.com>
Subject: Re: [edk2-devel] [PATCH v3 00/24] Provide SEV-SNP support f= or running under an SVSM
 
Re-pinging the list/maintainers. Still awaiting fe= edback/reviews/acks on
the changes.

Thanks,
Tom

On 3/26/24 13:34, Tom Lendacky wrote:
> Any issues with this version of the series? Still looking for
> Reviewed-by's for the MdePkg, UefiCpuPkg and UefiPayloadPkg related > patches.
>
> Once I get those, I'll submit the edk2-platform patches to support the=
> new library as a response to these patches for a quick review.
>
> Thanks,
> Tom
>
> On 3/8/24 09:29, Tom Lendacky wrote:
>>
>> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D4654
>>
>> This series adds SEV-SNP support for running OVMF under an Secure = VM
>> Service Module (SVSM) at a less privileged VM Privilege Level (VMP= L).
>> By running at a less priviledged VMPL, the SVSM can be used to pro= vide
>> services, e.g. a virtual TPM, for the guest OS within the SEV-SNP<= br> >> confidential VM (CVM) rather than trust such services from the >> hypervisor.
>>
>> Currently, OVMF expects to run at the highest VMPL, VMPL0, and the= re are
>> certain SNP related operations that require that VMPL level.
>> Specifically,
>> the PVALIDATE instruction and the RMPADJUST instruction when setti= ng the
>> the VMSA attribute of a page (used when starting APs).
>>
>> If OVMF is to run at a less privileged VMPL, e.g. VMPL2, then it m= ust
>> use an SVSM (which is running at VMPL0) to perform the operations = that
>> it is no longer able to perform.
>>
>> When running under an SVSM, OVMF must know the APIC IDs of the vCP= Us that
>> it will be starting. As a result, the GHCB APIC ID retrieval actio= n must
>> be performed. Since this service can also work with SEV-SNP runnin= g at
>> VMPL0, the patches to make use of this feature are near the beginn= ing of
>> the series.
>>
>> How OVMF interacts with and uses the SVSM is documented in the SVS= M
>> specification [1] and the GHCB specification [2].
>>
>> This support creates a new AmdSvsmLib library that is used by MpIn= itLib.
>> The edk2-platforms repo requires updates/patches to add the new li= brary
>> requirement. To accomodate that, this series could be split betwee= n:
>>
>> patch number 12:
>>    UefiCpuPkg/AmdSvsmLib: Create the AmdSvsmLib library = to support an
>> SVSM
>>
>> and patch number 13:
>>    UefiPayloadPkg: Prepare UefiPayloadPkg to use the Amd= SvsmLib library
>>
>> The updates to edk2-platforms can be applied at the split.
>>
>> This series introduces support to run OVMF under an SVSM. It consi= sts
>> of:
>>    - Retrieving the list of vCPU APIC IDs and starting u= p all APs without
>>      performing a broadcast SIPI
>>    - Reorganizing the page state change support to not d= irectly use the
>>      GHCB buffer since an SVSM will use the ca= lling area buffer, instead
>>    - Detecting the presence of an SVSM
>>    - When not running at VMPL0, invoking the SVSM for pa= ge validation and
>>      VMSA page creation/deletion
>>    - Detecting and allowing OVMF to run in a VMPL other = than 0 when an
>>      SVSM is present
>>
>> The series is based off of commit:
>>
>>    e60529df58e4 ("UefiPayloadPkg: Make Dsc accomoda= tive of other archs")
>>
>> [1]
>> https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/specif= ications/58019.pdf
>> [2]
>> https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/specif= ications/56421.pdf
>>
>> Cc: Anatol Belski <anbelski@linux.microsoft.com>
>> Cc: Anthony Perard <anthony.perard@citrix.com>
>> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
>> Cc: Corvin K=F6hne <corvink@freebsd.org>
>> Cc: Erdem Aktas <erdemaktas@google.com>
>> Cc: Gerd Hoffmann <kraxel@redhat.com>
>> Cc: Gua Guo <gua.guo@intel.com>
>> Cc: Guo Dong <guo.dong@intel.com>
>> Cc: James Lu <james.lu@intel.com>
>> Cc: Jianyong Wu <jianyong.wu@arm.com>
>> Cc: Jiewen Yao <jiewen.yao@intel.com>
>> Cc: Laszlo Ersek <lersek@redhat.com>
>> Cc: Liming Gao <gaoliming@byosoft.com.cn>
>> Cc: Michael D Kinney <michael.d.kinney@intel.com>
>> Cc: Michael Roth <michael.roth@amd.com>
>> Cc: Min Xu <min.m.xu@intel.com>
>> Cc: Rahul Kumar <rahul1.kumar@intel.com>
>> Cc: Ray Ni <ray.ni@intel.com>
>> Cc: Rebecca Cran <rebecca@bsdio.com>
>> Cc: Sean Rhodes <sean@starlabs.systems>
>> Cc: Zhiguang Liu <zhiguang.liu@intel.com>
>>
>> ---
>>
>> Changes in v3:
>> - Renamed CcSvsmLib to a more AMD-specific AmdSvsmLib with corresp= onding
>>    function name changes
>> - Moved the GHCB APIC ID list GUID definition from MdePkg to UefiC= puPkg
>>    and change the name from gEfiApicIdsGuid to gGhcbApic= IdsGuid
>> - Separated the OvmfPkg changes for the AmdSvsmLib into two patche= s:
>>    - First patch adds usage of the AmdSvsmLib NULL libra= ry
>>    - Second patch adds the OVMF AmdSvsmLib implementatio= n
>> - Updated the commit message for the OVMF AmdSvsmLib implementatio= n to
>>    indicate that the base functionality for PVALIDATE an= d RMPADJUST was
>>    copied from the original locations in prep for conver= ting those sites
>>    to using the library API.
>>
>> Changes in v2:
>> - Move the APIC IDs retrieval support to the beginning of the patc= h
>> series
>>      - Use a GUIDed HOB to hold the APIC ID li= st instead of a PCD
>> - Split up Page State Change reorganization into multiple patches<= br> >> - Created CcSvsmLib library instead of extending CcExitLib
>>      - This will require a corresponding updat= e to edk2-platform DSC
>> files
>>      - Removed Ray Ni's Acked-by since it is n= ot a minor change
>> - Variable name changes and other misc changes
>>
>> Tom Lendacky (24):
>>    OvmfPkg/BaseMemEncryptLib: Fix error check from AsmRm= pAdjust()
>>    MdePkg: GHCB APIC ID retrieval support definitions >>    UefiCpuPkg/MpInitLib: Always use AP Create if GhcbApi= cIds HOB is
>>      present
>>    OvmfPkg/PlatformPei: Retrieve APIC IDs from the hyper= visor
>>    OvmfPkg/BaseMemEncryptSevLib: Fix uncrustify errors >>    OvmfPkg/BaseMemEncryptSevLib: Calculate memory size f= or Page State
>>      Change
>>    MdePkg: Avoid hardcoded value for number of Page Stat= e Change entries
>>    OvmfPkg/BaseMemEncryptSevLib: Re-organize page state = change support
>>    OvmfPkg/BaseMemEncryptSevLib: Maximize Page State Cha= nge efficiency
>>    MdePkg/Register/Amd: Define the SVSM related informat= ion
>>    MdePkg/BaseLib: Add a new VMGEXIT instruction invocat= ion for SVSM
>>    UefiCpuPkg/AmdSvsmLib: Create the AmdSvsmLib library = to support an
>>      SVSM
>>    UefiPayloadPkg: Prepare UefiPayloadPkg to use the Amd= SvsmLib library
>>    Ovmfpkg: Prepare OvmfPkg to use the AmdSvsmLib librar= y
>>    Ovmfpkg/AmdSvsmLib: Create AmdSvsmLib to handle SVSM = related services
>>    UefiCpuPkg/MpInitLib: Use AmdSvsmSnpVmsaRmpAdjust() t= o set/clear VMSA
>>    OvmfPkg/BaseMemEncryptSevLib: Use AmdSvsmSnpPvalidate= () to validate
>>      pages
>>    OvmfPkg: Create a calling area used to communicate wi= th the SVSM
>>    OvmfPkg/AmdSvsmLib: Add support for the SVSM_CORE_PVA= LIDATE call
>>    OvmfPkg/BaseMemEncryptSevLib: Maximize Page State Cha= nge efficiency
>>    OvmfPkg/AmdSvsmLib: Add support for the SVSM create/d= elete vCPU calls
>>    UefiCpuPkg/MpInitLib: AP creation support under an SV= SM
>>    Ovmfpkg/CcExitLib: Provide SVSM discovery support
>>    OvmfPkg/BaseMemEncryptLib: Check for presence of an S= VSM when not at
>>      VMPL0
>>
>>  
>> OvmfPkg/OvmfPkg.dec        = ;            &n= bsp;            = ;            &n= bsp;    
>> |   4 +
>>  
>> UefiCpuPkg/UefiCpuPkg.dec       = ;            &n= bsp;            = ;             <= br> >> |   8 +-
>>  
>> OvmfPkg/AmdSev/AmdSevX64.dsc      &n= bsp;            = ;            &n= bsp;         
>> |   1 +
>>  
>> OvmfPkg/Bhyve/BhyveX64.dsc      &nbs= p;            &= nbsp;           &nbs= p;           
>> |   1 +
>>  
>> OvmfPkg/CloudHv/CloudHvX64.dsc      =             &nb= sp;            =         
>> |   1 +
>>  
>> OvmfPkg/IntelTdx/IntelTdxX64.dsc     &nbs= p;            &= nbsp;           &nbs= p;      
>> |   1 +
>>  
>> OvmfPkg/Microvm/MicrovmX64.dsc      =             &nb= sp;            =         
>> |   1 +
>>  
>> OvmfPkg/OvmfPkgIa32.dsc       &= nbsp;           &nbs= p;            &= nbsp;           &nbs= p; 
>> |   1 +
>>  
>> OvmfPkg/OvmfPkgIa32X64.dsc      &nbs= p;            &= nbsp;           &nbs= p;           
>> |   3 +-
>>  
>> OvmfPkg/OvmfPkgX64.dsc       &n= bsp;            = ;            &n= bsp;            = ;  
>> |   1 +
>>  
>> OvmfPkg/OvmfXen.dsc        = ;            &n= bsp;            = ;            &n= bsp;    
>> |   1 +
>>  
>> UefiCpuPkg/UefiCpuPkg.dsc       = ;            &n= bsp;            = ;             <= br> >> |   4 +-
>>  
>> UefiPayloadPkg/UefiPayloadPkg.dsc     &nb= sp;            =             &nb= sp;     
>> |   1 +
>>  
>> OvmfPkg/AmdSev/AmdSevX64.fdf      &n= bsp;            = ;            &n= bsp;         
>> |   9 +-
>>  
>> OvmfPkg/OvmfPkgX64.fdf       &n= bsp;            = ;            &n= bsp;            = ;  
>> |   3 +
>>  
>> MdePkg/Library/BaseLib/BaseLib.inf     &n= bsp;            = ;            &n= bsp;    
>> |   2 +
>>  
>> OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.inf    &= nbsp;           &nbs= p;           
>> |  38 ++
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/DxeMemEncryptSevLib.inf =         
>> |   3 +-
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/PeiMemEncryptSevLib.inf =         
>> |   3 +-
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/SecMemEncryptSevLib.inf =         
>> |   3 +-
>>  
>> OvmfPkg/Library/CcExitLib/CcExitLib.inf    &nb= sp;            =             &nb= sp;
>> |   3 +-
>>  
>> OvmfPkg/Library/CcExitLib/SecCcExitLib.inf    =             &nb= sp;          
>> |   3 +-
>>  
>> OvmfPkg/PlatformPei/PlatformPei.inf     &= nbsp;           &nbs= p;            &= nbsp;   
>> |   3 +
>>  
>> OvmfPkg/ResetVector/ResetVector.inf     &= nbsp;           &nbs= p;            &= nbsp;   
>> |   2 +
>>  
>> UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.inf  &n= bsp;            = ;  
>> |  27 ++
>>  
>> UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf   &nb= sp;            =         
>> |   2 +
>>  
>> UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf   &nb= sp;            =         
>> |   2 +
>>  
>> MdePkg/Include/Library/BaseLib.h     &nbs= p;            &= nbsp;           &nbs= p;      
>> |  39 ++
>>  
>> MdePkg/Include/Register/Amd/Fam17Msr.h    &nbs= p;            &= nbsp;           &nbs= p; 
>> |  19 +-
>>  
>> MdePkg/Include/Register/Amd/Ghcb.h     &n= bsp;            = ;            &n= bsp;    
>> |  19 +-
>>  
>> MdePkg/Include/Register/Amd/Msr.h     &nb= sp;            =             &nb= sp;     
>> |   3 +-
>>  
>> MdePkg/Include/Register/Amd/Svsm.h     &n= bsp;            = ;            &n= bsp;    
>> | 101 ++++
>>  
>> MdePkg/Include/Register/Amd/SvsmMsr.h     = ;            &n= bsp;            = ;  
>> |  35 ++
>>  
>> OvmfPkg/Include/WorkArea.h      &nbs= p;            &= nbsp;           &nbs= p;           
>> |   9 +-
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/X64/SnpPageStateChange.h = ;       
>> |   6 +-
>>  
>> UefiCpuPkg/Include/Guid/GhcbApicIds.h     = ;            &n= bsp;            = ;  
>> |  17 +
>>  
>> UefiCpuPkg/Include/Library/AmdSvsmLib.h    &nb= sp;            =             &nb= sp;
>> | 101 ++++
>>  
>> UefiCpuPkg/Library/MpInitLib/MpLib.h     =             &nb= sp;            =    
>> |  29 +-
>>  
>> OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.c    &nb= sp;            =             &nb= sp;
>> | 500 ++++++++++++++++++++
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/X64/DxeSnpSystemRamValidate.c=    
>> |  11 +-
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c&nbs= p;      
>> |  27 +-
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiSnpSystemRamValidate.c=    
>> |  22 +-
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/X64/SecSnpSystemRamValidate.c=    
>> |  31 +-
>>  
>> OvmfPkg/Library/BaseMemEncryptSevLib/X64/SnpPageStateChangeInterna= l.c
>> | 206 ++++----
>>  
>> OvmfPkg/Library/CcExitLib/CcExitVcHandler.c    = ;            &n= bsp;         
>> |  29 +-
>>  
>> OvmfPkg/PlatformPei/AmdSev.c      &n= bsp;            = ;            &n= bsp;         
>> | 103 +++-
>>  
>> UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.c  &nbs= p;            &= nbsp;   
>> | 108 +++++
>>  
>> UefiCpuPkg/Library/MpInitLib/Ia32/AmdSev.c    =             &nb= sp;          
>> |  21 +-
>>  
>> UefiCpuPkg/Library/MpInitLib/MpLib.c     =             &nb= sp;            =    
>> |   9 +-
>>  
>> UefiCpuPkg/Library/MpInitLib/X64/AmdSev.c    &= nbsp;           &nbs= p;           
>> | 134 ++++--
>>  
>> MdePkg/Library/BaseLib/Ia32/VmgExitSvsm.nasm   &nbs= p;            &= nbsp;        
>> |  39 ++
>>  
>> MdePkg/Library/BaseLib/X64/VmgExitSvsm.nasm    = ;            &n= bsp;         
>> |  94 ++++
>>  
>> OvmfPkg/ResetVector/ResetVector.nasmb     = ;            &n= bsp;            = ;  
>> |   6 +-
>>  
>> OvmfPkg/ResetVector/X64/OvmfSevMetadata.asm    = ;            &n= bsp;         
>> |  11 +-
>>  
>> UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvsmLibNull.uni  &n= bsp;            = ;  
>> |  13 +
>>   55 files changed, 1641 insertions(+), 232 deletions(-)
>>   create mode 100644 OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.in= f
>>   create mode 100644 UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvs= mLibNull.inf
>>   create mode 100644 MdePkg/Include/Register/Amd/Svsm.h
>>   create mode 100644 MdePkg/Include/Register/Amd/SvsmMsr.h >>   create mode 100644 UefiCpuPkg/Include/Guid/GhcbApicIds.h >>   create mode 100644 UefiCpuPkg/Include/Library/AmdSvsmLib.h<= br> >>   create mode 100644 OvmfPkg/Library/AmdSvsmLib/AmdSvsmLib.c<= br> >>   create mode 100644 UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvs= mLibNull.c
>>   create mode 100644 MdePkg/Library/BaseLib/Ia32/VmgExitSvsm.= nasm
>>   create mode 100644 MdePkg/Library/BaseLib/X64/VmgExitSvsm.n= asm
>>   create mode 100644 UefiCpuPkg/Library/AmdSvsmLibNull/AmdSvs= mLibNull.uni
>>





_._,_._,_

Groups.io Links:

=20 You receive all messages sent to this group. =20 =20

View/Reply Online (#117346) | =20 | Mute= This Topic | New Topic
Your Subscriptio= n | Contact Group Owner | Unsubscribe [rebecca@openfw.io]

_._,_._,_
--_000_MN6PR11MB8244110C79F107B39CD348548C3D2MN6PR11MB8244namp_--