From nobody Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74825+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74825+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419952258594.5591571346922; Fri, 7 May 2021 13:39:12 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id b7onYY1788612xnm5FlluyjO; Fri, 07 May 2021 13:39:11 -0700 X-Received: from NAM12-DM6-obe.outbound.protection.outlook.com (NAM12-DM6-obe.outbound.protection.outlook.com [40.107.243.57]) by mx.groups.io with SMTP id smtpd.web12.16146.1620419951079055253 for ; Fri, 07 May 2021 13:39:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YAZzMaVK9mzQ+17sCwEkZyDCiOIti2bgW2piVHtaOfWdmtufM1lrndTGx83Lc/7ibIdnV45d2CmjE0Sv7m+FsT+iQRX5ZK8c51weUGGuAyR53WAonVzjYLCOY0b4AyU1coswSn4ZeMnUz7U+AL42UPC08dSlLYo6tgaup/BhDzueQGwAvx2eKeOJ8ZB+vVVcbZkX47wgx1nLxYbGjV39Xv1fwgA72AYJ2REkYfrd8CxERrwbpRfLXxyxNS7QKHZT7t6TAUKlAPQ8hfVErWnCMPPRGmdHo9kzvDRXahLTFYyuwlJtBpsQbjR+bNO0wU3OUF+ULu3hroVr9Sz3zw1bpQ== 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=yJDB0RLxVLn/0teoF0eAyaZZIPxENIZExXU4wzfbqQ8=; b=BrB39csaElkHTOPqKYI288Gkd6HDlyC344XGx38IXj1Z25jrvjmjhHmrCvabtseHGQUcyaQ1HmTfEHH9Yp28tmNLhiWMr1d37onWmMa233/LsGCgN6w8+YAUglW7AC+fwXTuwMzzbTP6LYzManAUz1+Yv9uX9JKdaMJtzqeoOXUpFsrk6x0pSIWfx8Ldeq8SbuttcKlNYSewfShDgTekQgpcmeEJ/DvuMl4HPt7DRUF4EsoQ7rgd4M6kFwh4RkdN5JW2PVJKovZMYVy3rzjPiNL4IeMxl/OzS65eXtak1kScLSgbUuZ7xgCPHc7U5J16HxRqKtGDsnfprZ3AM0DRRA== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN6PR12MB2829.namprd12.prod.outlook.com (2603:10b6:805:e8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:08 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:08 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu Subject: [edk2-devel] [PATCH 01/13] MdePkg/Register/Amd: expand the SEV MSR to include the SNP definition Date: Fri, 7 May 2021 15:38:26 -0500 Message-ID: <20210507203838.23706-2-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:08 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4b96fc18-7dda-4fb3-0844-08d9119829d6 X-MS-TrafficTypeDiagnostic: SN6PR12MB2829: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:813; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: jEQ2UggyCzuyxY9zg7y0Hwew8glFtLILI1J9qVO2s6VGembySG4/r5H+JlUZlAbH2V+YEphg8SvPykZnvklne/ZwfzbdC3FAMlGr8bVD0R56KHApdZzIPzUBOSwMlcLaKLroIR7oG3oBXF8MkucfM4FvLBnLWN6xNFb0dy758/5ocUquhmUsuTGjBgUTCqu8qqVhd08dda9Yt+aBQGMbHdG18LedAC+2ntliyXvkEps46toxoC3cIbu9GuNcazSJ0FbHIYV9t5OhBLvOhUXclJq6l/h+mAaZpO/WugUoxuEWIETDKv+Fb0uzw98aY5IYNWxL9e/8h69GkrBegda7ILLXzKbsfkERlXYlRoWA/oZ83lxnpujBozF2jiPS39EdXK6JwgTnzwbvTz84zfmegefrEX0BxMk7hJmaYTjZV1KjF5IitqZSaeBzYCpo2f5RXQ9Dg/n40L1HlCPFd3lpuwrTWeQY6n9wFhhtKdqykXFCum26aoV66aep83/b9TOdJa88p92CMK7sTLnWYTZiXtrqdaoWUc5h88FnLxcM2sna0HL0pYa85AJqFxxk5TS+vrR+su3npNHdF59YdvyAe4FXm/RCaZ7l6Gp+RiTOCwFXWNnp5Bnw4ydm04oaPi6OxQhgcEf1tnqso9e5PSBrkGKDrKLuHIXFsrA2Uq7oXENmsxemlpJE0ITVjgdq2F1tvhAvZfss7SrNRNOIRV1iwaEBI7Mpgx20dAo5HJy2r2WRcw0WfDKHoc4GYQrA/enn X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?cKozXLC3SYpN3jEoNJ5KVCReQ4ew6s66ms0dgmcydAviAOMp0zRWF9+TpR2X?= =?us-ascii?Q?gYWsXAI5CMp/BbcJ/yGdRLHy5NYiUY6p1rK5wzhwVbOlogd2W8+0F58WQZBU?= =?us-ascii?Q?wiuTINqcKVMVhv67L2De40gzvUbHeYRPE7JX8GUBIKZg72KQEKNv4jb08taq?= =?us-ascii?Q?gAzppG4hqNUAIuPw3/Q3N0aZyCF+MdOzsvXw/9JbBeOfi7yjqrj6HbUn/EC4?= =?us-ascii?Q?3MuAfJsYOnymbGImqyimP5CV87w22eQl78nrgxiEA+qqLVMtXPsuqeMHLkE7?= =?us-ascii?Q?hAx7QFE1hldAPsmJ0HLz8u5Vfkfy6hSzQwx7AQGBtXv2mq60IBGlPYDl/dNj?= =?us-ascii?Q?rMvzh7x866RzTOpN5D4gzxCByasspahNeNnweU30e1roiPto2L4MFtoWN7Zl?= =?us-ascii?Q?TmnMi64Kku8T7Fi9xvpkGnnUNRr/SKUAGFaolSLpBRUFDn+eFkMDwssu+D4N?= =?us-ascii?Q?Q4X/pJ0QVGNrqO1KPlzlHBdYb5ksk7cX7IwZuGCorn0Uyav6+gUa2opgG9UJ?= =?us-ascii?Q?Aa2f0l8CMraz3hl/tpKjU0dYzLL6UOVPhw8B6blhD2cTcRtTFmrw++1GMaBj?= =?us-ascii?Q?z1NqLbNQ7X7N3adCOHqsuxd8RAyUtSONfGU64QRLsjbr6quCEZhcN0oU0dw/?= =?us-ascii?Q?cdu2WCMdzZI7pHI40C1tXaYPM7vRutCRsi+4e4v0OE84TFTbiA1LxykWViqD?= =?us-ascii?Q?SZsBO9utcenkrPhXe2rZtieuYZLvxSKfdHj5XnAeZBFp0oZTevsfZ+NjcIWq?= =?us-ascii?Q?86vO8mE/b7O6tNPJJiXlhB/YR6zVF0eXKSiB+4UC+9dOMcDjXoZP0qjbZuIO?= =?us-ascii?Q?j3RCSkdtP0aYOimye9rNOujB/BdQvKuRCMWZvIYIwDMkSyFc7qPgi0sC4v3f?= =?us-ascii?Q?eTaOdRQ5N12Cs3XjZeZPBkA1DhR9VcY4eTFbDXGUvzQ4P1JngZg4LNSING6+?= =?us-ascii?Q?W9/QHNHsYY1Rw93DTS69xTFNoQ4MDupDbSbPT4wz6gJlObHpu5YgYSrHiLxn?= =?us-ascii?Q?S2uKJ9PP3li1HgnMus5i/T+8wi0tCceuVnDH/Vhc+YY01oZz90qmJi93sAcx?= =?us-ascii?Q?/q8yVvrZW1LLq1etgaNgUM1He6njtoI42U4y7y5/VO3pBGPIno/ALK1J1g40?= =?us-ascii?Q?CIxcNYd6nh8tkL0E6OtMbUswhQhO67eUWFia6i/dCyENcFoL6G9/GGxEMyg3?= =?us-ascii?Q?S1CYGrRFPfb6HaPR2Lz3mOTsPhC30kV+N5Wq15KKy1J09h219RX2vdWLCol3?= =?us-ascii?Q?HwYsIz+ebgUCiV4BDTye5ZksXWw4dHmA3b0r+k3aCMAurA+gF0jJiRdmxz0Z?= =?us-ascii?Q?0LQ0NPhamDtK5mtMmfgKOK1S?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b96fc18-7dda-4fb3-0844-08d9119829d6 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:08.6658 (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: sAk64hcx98sDOL4RPal/J+3rNiX31/pdq6YaQuMXnE2tiVpBidDlcY6TQqRoRc9Yyv2SajBWDwq6iT9pjsgjkQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2829 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,brijesh.singh@amd.com X-Gm-Message-State: mmWqfj8np0N58R8PtF0NQAiLx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419951; bh=/wVlFBJTyDje6xSZd5PtnsyafxPhzEZcukfxkyChh9o=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=V3GI/P8RWrft0BGqq7ht0SH3oRYTPoV4vH7uILanWKm9pz2fhFmDzjd/lH9wgtP1za6 f+W6U3wQLfelQIkrkQqt3SK2ehWhJvNbTLzMDD/VicnQIDCPOkSZPd8TgNqjdyUy66hJz PCwcgobf/tzXxINbRovSgHkoHi0IZj1Oid0= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 Define the SEV-SNP MSR bits. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- MdePkg/Include/Register/Amd/Fam17Msr.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/MdePkg/Include/Register/Amd/Fam17Msr.h b/MdePkg/Include/Regist= er/Amd/Fam17Msr.h index e4db09c5184c..716d52fd508d 100644 --- a/MdePkg/Include/Register/Amd/Fam17Msr.h +++ b/MdePkg/Include/Register/Amd/Fam17Msr.h @@ -87,7 +87,12 @@ typedef union { /// UINT32 SevEsBit:1; =20 - UINT32 Reserved:30; + /// + /// [Bit 2] Secure Nested Paging (SevSnp) is enabled + /// + UINT32 SevSnpBit:1; + + UINT32 Reserved2:29; } Bits; /// /// All bit fields as a 32-bit value --=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 (#74825): https://edk2.groups.io/g/devel/message/74825 Mute This Topic: https://groups.io/mt/82665180/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74824+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74824+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419958196555.2292553181693; Fri, 7 May 2021 13:39:18 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Z3aMYY1788612xaUJeV0mDpK; Fri, 07 May 2021 13:39:16 -0700 X-Received: from NAM11-BN8-obe.outbound.protection.outlook.com (NAM11-BN8-obe.outbound.protection.outlook.com [40.107.236.72]) by mx.groups.io with SMTP id smtpd.web11.16077.1620419951004614240 for ; Fri, 07 May 2021 13:39:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bLy9/bj4arinVSbBVCh2qpETEGVmuUTrBGQWkfjHYbAqx5tFSn857xMuKqZbmNHKybgLISfxKlr/kKCaw3v3a0Dh+pWkgYwFde3E4QWgjNvgvPcqnTDnwbrQwGefp5kVns6/P2m6GYjn7ZkiO28D1RXjRe9Zs7oCu5vS9vy+TSi0kDWUw3T95+tOJwW4s5sr1uPzgizmIeVbOy0YuyMeR9je2xodhV1gxH1+d5GkQalNWx2Klg6mC0bAxQMp4RDnXb4ZGopFpgV6XGVN9PF0kePDbq3zNZKYVR2zfgf7pVR/4FdZFRO0TQfhmQJp/164EcqVNDKQVfobdU5RyU2RyQ== 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=c2eDXRR6EAmPBYTP3q17gZaIoAQMLq/wmps9p6jjPCk=; b=hRxVcx5toguVWs3LiT2zWtrYwgH93m2wjfpdSnR28axG3NjZoyz7ySxA3QxFDQVEUnLUk9E/dmFmlARqwI5KgXnIfpO5JUMhSPmyDbwXMNsktZClgkE06HI3czy2XXmzVhFGSagomcf3UtL6imMM9XC5lt12qkk+6B8A8oRYSkU+R2DMN+54EGlYki1Rz/47KMhms4X5HCYY1PMwvqjrNxkkYM6g0kIaFFWGdv/5eC7Zi6v6ufwQC40l+Fs3AaO9xhAIH5OuUcB5bIG+cxYiTMr1PuQ0IUAJvNQSRxNbL5YjTDZa2w2sSVGQ9dUmB8/qg1QilktZ/Y/ow/b8YOMk6g== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SA0PR12MB4415.namprd12.prod.outlook.com (2603:10b6:806:70::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.26; Fri, 7 May 2021 20:39:09 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:09 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu Subject: [edk2-devel] [PATCH 02/13] MdePkg/Amd: add white spaces to retain alignment for future expansion Date: Fri, 7 May 2021 15:38:27 -0500 Message-ID: <20210507203838.23706-3-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:08 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4d2e2178-63df-445e-cc2c-08d911982a47 X-MS-TrafficTypeDiagnostic: SA0PR12MB4415: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6108; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: 0SV+AGm5w/2U12rlV/0lkMkCecnycQpseBRbTxtJXdc2TFuLTerklO883XKtSOgWWbPSyD9qigLrMdEANsFaGJBsGOIGw9H9F8wOqcXbrJNyqvAeNK5uXDMaTrRYHCFtYJfcbNKxOkiluWsog1V3cFVmlxLa0EAmvo5Ae1vDWfCNDwJNrg4bZvr6K94qluDw1s/jEFSuRj8w3AT7+Fx2oyAKgXVeX1okv4dUgakVgNcvBzHwfSe4cYinzS8fRkskkYQp4tuAZ4O2QUQ+1TOCytKx6hoUMvj7KJwrmS9lrWN6LuWYpwnh7pRd0cnrrNCJLM4ZyJjM6IQgR2paQJHVStdwiDXXVSdUyvq7cx+WzD3V1Cd1uwmze2PYGYh7ljgmZg8wY/WbYOU/VeCxekjLwcpsHBHTb0mnRBpA3i0dkLgtDKrAP4fwn43sN8nW63r6qWz6tDggZt4nXl5CJkTi0lDScK8JeUTnlbxkESYZu6//lRE5yuoiYG/c8CzzkvPtvfMTPlzhLOo6WD8JckhBiFmeLjZwVroA7kV+kplU00WGzR1h3e+BJcAlvp/rMk0Huxq5fqiKoV3DU/sayye7nAz4/wAfPWrkH4eTf4+JEzrnnv2Tz2yJhZBMI6pJ/I3IC//fjNXloPduqBSgedH3TPKrnCpIeC5cqBC8KL4n/+iTQeObosPh8KWvC43EzwhbAcsxgxDB98DFz1M8iLUyrLrNEhoI6ozAwrYPewlW8SsQFn8r7QayvmtqOVZZeHWy X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?Bwf/4krQCINUSqsYP9IJEv0QsZWZSUEoMAhKkMmdPvJjepXjRo9F+KJ9uICK?= =?us-ascii?Q?9dsR43VAZ+uM7mJyqK2SBvpoime11Cf+mLZWpR/t265OrJWdZo8wXAVv0ZBN?= =?us-ascii?Q?lj5pgAP+YoTRgb4H7nUdxGU/OQT7eeyKCk1E9hmYb1bDb3az7EQp48c4fSIW?= =?us-ascii?Q?SkuMnUpbn7n7bAm55MxRF921vfdNJ8MuzaXiIROD99yiqNARPtEG0pDnAFS0?= =?us-ascii?Q?3finqhJI3IT9FMIuNZ3wYks/0mt+lbNQycZMSB3pIT2g+b+kFfHsu24rC/GQ?= =?us-ascii?Q?qehY2n8RixmlYA7quKQKJVIhlP3536ohz3uwI1WK4kziIIEsD00OBKdtAjOD?= =?us-ascii?Q?0sTf38LiMksZmbyU1rS1w8+WK9ZYeD7NRyjxKEsIgv9YbHg6g/Jhtk8cwneC?= =?us-ascii?Q?QS7dweP3xbTnU2ecMZK8tQMVUn04pE6W0OKC12OGESZPAB8cHlkUfNfRH1+8?= =?us-ascii?Q?wJE6s0EJ1vtRDDjMkbnqvF896+xv+KeMoYwRofYrLWUKKEHptLlCgKAPbtbb?= =?us-ascii?Q?VtRG2RvEPi5WOncTwDJVkNeZFCvrl++H5nJg++/xWYQ8NosVhU10vV0eniVr?= =?us-ascii?Q?uS26bPBiuGZgFDYqezXuZlOK+4SGII6nQIg+2MVVJSIh7jHn0zOSjn0g3XTa?= =?us-ascii?Q?4y6y2YlEIaAQWvD8xWq/CRDvjhz2tqIl8QaMbyzTpDg9DMSSCTDewc8HUuGT?= =?us-ascii?Q?h9j76GmdjN6EldqM/zOcRATChyOossQyKwuDipeoElXPvw0TL2OKe+k+U9oX?= =?us-ascii?Q?LkbV9c0QFFTBJrARMOpSY8muH1hpBgXBgzn3UCjaMV+QYM7lxTlEa2xRtk9h?= =?us-ascii?Q?Jfe915OrW6N9SVv9qAd2LQmQjK/MEA1E6NHPt/wsxsVnbXPYKoLIw3qB+yrJ?= =?us-ascii?Q?MtVnrZfJ83PKUfzgxJCKqr43U1MdY9myzoqAYBlMckbK4ene0FahXPey0sMr?= =?us-ascii?Q?fDJee/d4tgSTJD/leTw+yLwSfk5ke9CIqYZMw1rQXzRT/7sE+cQqmCi0Vxqv?= =?us-ascii?Q?UKeRMOtlr/0knHR2bsyhmIC1n9+HR3qgwI4nmGfiFVNY/vvNR9h7QSCmzwN3?= =?us-ascii?Q?9uXRk4tAEouYHVzZeKhtmxMvCuN07FhpapqH8v6mfHksOZgnNhWBxCCdoWSW?= =?us-ascii?Q?O5DV70Uc2rx3FPYKMRHlSsYdguLeMj6HoBYyKsNW06coQ+DnTktoEeJYv5l3?= =?us-ascii?Q?ioqKQsuNImjrJ18apXgiNZtSjJ2E68ZH5oCH9RZhZcklP5cBWusY2MqyvRNX?= =?us-ascii?Q?YLzj4GN/oEVwq9Wd0tu83qUtbCDgN9uwjpQheMEawgwKHzapWjs1Di075oIi?= =?us-ascii?Q?6FKL7t51qCrssUsQAJ2dw2tG?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4d2e2178-63df-445e-cc2c-08d911982a47 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:09.3064 (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: HCE7GT5OblRXwem0o9Us2NRmAGzdJUlUJBocWTfnzOgYL2sGJQCSf6ef+Tndtj/fma94UwF6PIJpUVq4XOmyzQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4415 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,brijesh.singh@amd.com X-Gm-Message-State: DYmZ0192n4nyXXCXpWoWuXCYx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419956; bh=kvvINDMf+n17T0TYJf1uYrHa/d9H5KDEmXaiVlVRAwo=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=mYkX66dJAUqJicTNBKVmFjci+Jjv9zfzSS2FHlLMQTTIwIieiAdRFo56wcrC96v8lYM t0qJ/r0F/veFjTVOsHt/KHEMLqaCFZyrm2W6h+BPjD+rSKejgGwWDGi/qpFF0DqtAp3CK dTAkX3mqOe01piTVTPZ0lOBvnVJD/pZW4N8= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 Version 2 of the GHCB spec introduces several new SNP-specific NAEs. Unfortunately, the names for those NAEs break the alignment. Add some white spaces so that the SNP support patches do not break the alignment. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- MdePkg/Include/Register/Amd/Fam17Msr.h | 10 +++++----- MdePkg/Include/Register/Amd/Ghcb.h | 12 ++++++------ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/MdePkg/Include/Register/Amd/Fam17Msr.h b/MdePkg/Include/Regist= er/Amd/Fam17Msr.h index 716d52fd508d..7368ce7af02a 100644 --- a/MdePkg/Include/Register/Amd/Fam17Msr.h +++ b/MdePkg/Include/Register/Amd/Fam17Msr.h @@ -53,11 +53,11 @@ typedef union { UINT64 GhcbPhysicalAddress; } MSR_SEV_ES_GHCB_REGISTER; =20 -#define GHCB_INFO_SEV_INFO 1 -#define GHCB_INFO_SEV_INFO_GET 2 -#define GHCB_INFO_CPUID_REQUEST 4 -#define GHCB_INFO_CPUID_RESPONSE 5 -#define GHCB_INFO_TERMINATE_REQUEST 256 +#define GHCB_INFO_SEV_INFO 1 +#define GHCB_INFO_SEV_INFO_GET 2 +#define GHCB_INFO_CPUID_REQUEST 4 +#define GHCB_INFO_CPUID_RESPONSE 5 +#define GHCB_INFO_TERMINATE_REQUEST 256 =20 #define GHCB_TERMINATE_GHCB 0 #define GHCB_TERMINATE_GHCB_GENERAL 0 diff --git a/MdePkg/Include/Register/Amd/Ghcb.h b/MdePkg/Include/Register/A= md/Ghcb.h index ccdb662af7a7..712dc8e769c0 100644 --- a/MdePkg/Include/Register/Amd/Ghcb.h +++ b/MdePkg/Include/Register/Amd/Ghcb.h @@ -49,12 +49,12 @@ // // VMG Special Exit Codes // -#define SVM_EXIT_MMIO_READ 0x80000001ULL -#define SVM_EXIT_MMIO_WRITE 0x80000002ULL -#define SVM_EXIT_NMI_COMPLETE 0x80000003ULL -#define SVM_EXIT_AP_RESET_HOLD 0x80000004ULL -#define SVM_EXIT_AP_JUMP_TABLE 0x80000005ULL -#define SVM_EXIT_UNSUPPORTED 0x8000FFFFULL +#define SVM_EXIT_MMIO_READ 0x80000001ULL +#define SVM_EXIT_MMIO_WRITE 0x80000002ULL +#define SVM_EXIT_NMI_COMPLETE 0x80000003ULL +#define SVM_EXIT_AP_RESET_HOLD 0x80000004ULL +#define SVM_EXIT_AP_JUMP_TABLE 0x80000005ULL +#define SVM_EXIT_UNSUPPORTED 0x8000FFFFULL =20 // // IOIO Exit Information --=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 (#74824): https://edk2.groups.io/g/devel/message/74824 Mute This Topic: https://groups.io/mt/82665179/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74826+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74826+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419954628423.1075371377069; Fri, 7 May 2021 13:39:14 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id TJnqYY1788612xndzUHMR5G4; Fri, 07 May 2021 13:39:14 -0700 X-Received: from NAM11-BN8-obe.outbound.protection.outlook.com (NAM11-BN8-obe.outbound.protection.outlook.com []) by mx.groups.io with SMTP id smtpd.web11.16077.1620419951004614240 for ; Fri, 07 May 2021 13:39:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=g2f9eiA+dQ13sSYxR8FaiVVhfEarXl4mIYfTSSMhJTzUZXUvn3fAVhz3xF6gENTXPNyQn3ccHXIpt5BJpybK8zrqGnMd++ayiPF3psaxarHEi+NbeFSUalphpUC0Q49ZCoR9yyGxjd+IxkoxyDNEFytQMLxL1ihD7skltv7yjknWxh1zM9nSmDt+iPVUJUQXk0kA0/5hx9xa7n7SOWy7KoFDrYrZ46HgrK6AZP2kycD5N9zUzPmirBGGru75ATwbuyj17ZPt0vX/lemRfbroHufTLL4vernAJipMnlyImFVu8f8uyBXqAQjDaRcKm6zkpbFKlLcDokHKClMIzHDbAw== 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=J7yCjuLA3oO3sIGMjgfq6upfmEXVSiEPDbtreE1t3Jg=; b=ShS54UDB95eIge/TpKOBwjm9NEL9q0bmvU+Hdt+xQEQ6ywnd6H8cRmiZuc93/EeYIZEyKYTIUPGqSISdptV/wDxwHi+HtBurwsMLNVrsHIWEaFt4k/cBfDA/BvN2RtaqEmpnoqG3y92OYX2uVHlZV+v1CEEIrb4NQf9IlNgt//bin+M4ZQkTH1HUBfp6ZNNItRuto8HOSpZdKStDKCn2WocLznsu3wx4kSupuVTPIeZkgYi8fMaAnPxEdejGFnje4zgXanvE5xj9I2LQVAfnicKNnmMzFIws5R/dB07fDPHD6cRNkNz0x/AwQHV5b/qXlf1dvzH+2HP2sJCysNWrXw== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SA0PR12MB4415.namprd12.prod.outlook.com (2603:10b6:806:70::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.26; Fri, 7 May 2021 20:39:10 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:09 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu Subject: [edk2-devel] [PATCH 03/13] MdePkg/Register/Amd: define GHCB macros for hypervisor feature detection Date: Fri, 7 May 2021 15:38:28 -0500 Message-ID: <20210507203838.23706-4-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:09 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1c4dfb9b-01fe-467f-3679-08d911982aa4 X-MS-TrafficTypeDiagnostic: SA0PR12MB4415: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4125; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: R5j+j7//HagpfCAmg30PrAZ1Xp6d3WBp4K1C4wWE+V4TBx2zbX1/XxDBqmdIV5QkrYaEKD9GGjd7phdEuVIh61CPS3cs020j+Z8D+xFU9GHa8I0WBxMuElyKPIDLGGbzYzEXR9VirpNNsmznRLdn4JLrKDkePmfcS739sLA4L0Oe9zu+xbZMBXoX9/XsDfnlX5TXN0nRNSfUp8vh6A91E9CmKx6Me/OtaOObwFQiJCt7Mu1AtXaiC0PtLsWHbv+g8P2SUiDqa9wmFBJvcFCFb9EGujbdL441eLjTpE55b7Jj9QNP9wmMJGF7zqykD4b6VGFVHBfSbIVOVkQyL4kugy7RlScFYkaUnuEMPPUNByhkmc3hUGq+NX7pzqs/AqGNwaSTUDOPuQEIqt6F4LGMcONy9M8818h4PGsqB11Rm3R88cLcQCvowJxOp3w9d1Sp4GMKu+8jnQ/IFG0OWJEqV/8GIPbnb6HQ95/df7Qg5BOiq+ityiqrBTuQubryHuMEuxPkLwLmurhCtF6P3S6Yzxa40sqbcKtNnY+qAt0M5y8QxY39GRcLU+OmS4yR8LkEJ1hJfN9mQAVlxEf0oDWOyTt6bQBVIG6eWv0srnkOHZuZHl26SAZ3R3gA5/8XfZF83G2Z8ZGc0iM2gNKqWzGeUW11WrxyROHiER27h108HHHKE/Im/PC0uuucNVeLBRev9CJqQXumTsQOuaNNeNOgTR9TAsIrfO9Au/lyWznvh9A= X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?cUHnsirEmi5LXDwKVGLwWijwVbEqDHFwIMm5sI8eW5KJB+hFbamkIsuak7N0?= =?us-ascii?Q?XPEFgOzUc3uHeaaF7D2lF68yWyvzaIw9u1pywgyjt9IQI2eI1yVDD2rUsoL7?= =?us-ascii?Q?s+PvgwwWWyUX+BbX0ZQb0xTXm/nmQqqCOhW143o15n4qRBlcML4zjI+gp93N?= =?us-ascii?Q?A8z50V00jPbbZNWX1kupo924DP6OoBnmbt4yxJgdtGvWqTFmuhD+ltl7c7d2?= =?us-ascii?Q?/aOEomKoWtjJnxShnRhuRMbhzm0LPP29c9EGfc5XkKruY6f5RTrDhweYVh9Q?= =?us-ascii?Q?lzTEQMd6kBooAOSOgWPseqNKezliTHqjOpqAzwAXwT+fA6XY4BUPPCX2bD2c?= =?us-ascii?Q?B0GyraZ4va+1xKuSvtFvwNToVr/ZnwXTK16dybWn+XwrbVfCZrqlcGH807sT?= =?us-ascii?Q?rK5HX7oDwBuu/OYf8figFuGS/cYyzm7LfdJ5bFjQumx60TRu4cWQlZ8/YP+X?= =?us-ascii?Q?lg7lGS1UE4VuSQFf82O6A4Nv1hSUDhrL4NueVxb5Id8VrJl6siNR96tyKJxJ?= =?us-ascii?Q?OVM8Q0mSnXd7sEsSeLw1DVCGLnP7anLYcJcskm1r8joDV3jjk96N1iKYWtC7?= =?us-ascii?Q?Np/9f27c2UNab/0+5pFEBLS7SG/APdSZGegIDLtBbCsICSTLWUhvLktMjbn7?= =?us-ascii?Q?OdmNKXZV/rImIba0/3Bu2SNlQmNjjxs0i1K1Wjvyop0ubJRU4TpE4dmUcEVN?= =?us-ascii?Q?/0z9sWaVxtnGb8KP1v5XLwES54RNrAb+KnVC4MZMcMVB8wCX2eP4pqNqzhQj?= =?us-ascii?Q?x8/CnY5mO9EMLF8KX1R8QJXZ7gccICZtO9m6YOSM6ONg4IUe9DXkV58mCHKi?= =?us-ascii?Q?VLoWpUf/rLmYNtFkZSMJm7N7GEQUTI/2CNeyfPC12/xnxaQ1tu22rwCoWsBp?= =?us-ascii?Q?14Tq40q73AZ45eNJF+8eAVuikzTVOkZMr/ObSbLWQlSHxhy6N5ly4StfhItt?= =?us-ascii?Q?JKtCHI98QV+JNha9cTMsMK7Oo1U5AUuNxy3M/Rq3JVl75TGOnb1iJpJOmqax?= =?us-ascii?Q?2kit6t4Zionq6KqZGD1NqUoxV6qoHLGXCM0Wfl7ERpEU+6F2s1mGka7P8tYN?= =?us-ascii?Q?4KFyZ6hJdoItOMLsCbHc8RKVMrIDhPkTgcpqvi+qf2AMK0csAkJ8mThzqZg5?= =?us-ascii?Q?ItXXalvOCtgP8IcfuPIYoobtnbzh7yEGJvNZsF7GSolm46i1glECqnArQIuw?= =?us-ascii?Q?2EQ6AfOYAGu1AqIcbegavECR8qr4yMeoffX2tM+TeUDjo9TWk7WuGXik5Y0j?= =?us-ascii?Q?DezT2y4F6YhtQM7/6NCg5ID0uBIUvogZqR3pR9uEsbvyGKYfXVQEaf2r3wXV?= =?us-ascii?Q?mrFAozrl1ML23xa0epPl+z2s?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c4dfb9b-01fe-467f-3679-08d911982aa4 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:09.8971 (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: 27YfhNxYTUWxNijOc4umuBoT15xY6sf6qfHi+/AW9p27nJYuGrbIHwRSITrb/TGFi78rXKPHZmV6R5zdxPNIEg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4415 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,brijesh.singh@amd.com X-Gm-Message-State: hCMe5Ff1x5JaHoFaaS1vLD08x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419954; bh=UrCZYmMmxmE3UIxAv/TOFuvAHYQm/chYZD5rZ+iir74=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=OVgpEl4frpkvPKm4AOt+9r2BM6QrNSJq9kf1iEd9S2/AqDUch0cFs293u+iJShSUM0N kx99GOZLSOP0TyOtaMZBHBHymQo4DLJre3XNa1ra306vyDmSycCZPDQJ1TU2gBdG4pSLK x4MPEwMu3tl596ad1LsyCxci8w36i/BxikI= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 Version 2 of GHCB introduces advertisement of features that are supported by the hypervisor. See the GHCB spec section 2.2 for an additional details. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Reviewd-by: Laszlo Ersek Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- MdePkg/Include/Register/Amd/Fam17Msr.h | 7 +++++++ MdePkg/Include/Register/Amd/Ghcb.h | 8 ++++++++ 2 files changed, 15 insertions(+) diff --git a/MdePkg/Include/Register/Amd/Fam17Msr.h b/MdePkg/Include/Regist= er/Amd/Fam17Msr.h index 7368ce7af02a..cdb8f588ccf8 100644 --- a/MdePkg/Include/Register/Amd/Fam17Msr.h +++ b/MdePkg/Include/Register/Amd/Fam17Msr.h @@ -48,6 +48,11 @@ typedef union { UINT32 Reserved2:32; } GhcbTerminate; =20 + struct { + UINT64 Function:12; + UINT64 Features:52; + } GhcbHypervisorFeatures; + VOID *Ghcb; =20 UINT64 GhcbPhysicalAddress; @@ -57,6 +62,8 @@ typedef union { #define GHCB_INFO_SEV_INFO_GET 2 #define GHCB_INFO_CPUID_REQUEST 4 #define GHCB_INFO_CPUID_RESPONSE 5 +#define GHCB_HYPERVISOR_FEATURES_REQUEST 128 +#define GHCB_HYPERVISOR_FEATURES_RESPONSE 129 #define GHCB_INFO_TERMINATE_REQUEST 256 =20 #define GHCB_TERMINATE_GHCB 0 diff --git a/MdePkg/Include/Register/Amd/Ghcb.h b/MdePkg/Include/Register/A= md/Ghcb.h index 712dc8e769c0..326b11479779 100644 --- a/MdePkg/Include/Register/Amd/Ghcb.h +++ b/MdePkg/Include/Register/Amd/Ghcb.h @@ -54,6 +54,7 @@ #define SVM_EXIT_NMI_COMPLETE 0x80000003ULL #define SVM_EXIT_AP_RESET_HOLD 0x80000004ULL #define SVM_EXIT_AP_JUMP_TABLE 0x80000005ULL +#define SVM_EXIT_HYPERVISOR_FEATURES 0x8000FFFDULL #define SVM_EXIT_UNSUPPORTED 0x8000FFFFULL =20 // @@ -154,4 +155,11 @@ typedef union { #define GHCB_EVENT_INJECTION_TYPE_EXCEPTION 3 #define GHCB_EVENT_INJECTION_TYPE_SOFT_INT 4 =20 +// +// Hypervisor features dections +// +#define GHCB_HV_FEATURES_SNP BIT0 +#define GHCB_HV_FEATURES_SNP_AP_CREATE (GHCB_HV_FEATURE= S_SNP | BIT1) +#define GHCB_HV_FEATURES_SNP_RESTRICTED_INJECTION (GHCB_HV_FEATURE= S_SNP_AP_CREATE | BIT2) +#define GHCB_HV_FEATURES_SNP_RESTRICTED_INJECTION_TIMER (GHCB_HV_FEATURE= S_SNP_RESTRICTED_INJECTION | BIT3) #endif --=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 (#74826): https://edk2.groups.io/g/devel/message/74826 Mute This Topic: https://groups.io/mt/82665182/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74827+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74827+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419960493168.32730686762886; Fri, 7 May 2021 13:39:20 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id kHhiYY1788612x05lqHSNqW5; Fri, 07 May 2021 13:39:20 -0700 X-Received: from NAM11-BN8-obe.outbound.protection.outlook.com (NAM11-BN8-obe.outbound.protection.outlook.com []) by mx.groups.io with SMTP id smtpd.web11.16077.1620419951004614240 for ; Fri, 07 May 2021 13:39:12 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NIO0eLmjEf0taQuC1DeEAhYPTDsO68Fwhw6ZbIKN5GkNwqjH3AwDEi2pMZfoS4b7UoPEGu/Fdd9LaCUqRteXxi8n/Sl54iTCnq5O13T/wuFBukwFxrlyHrSDpNck9KvM61iMsVsTFyHdAAmLjHOysZ9491JpmpToOrXFKGEn9F+BMpukGzH82wxoITWMT3mDJ3xQhmERGJVtbUj+W9uxw3pjg9pnnIknsr32h/WPkPmaqAu6HoN1hIuzP8XtTMEAj82V4R7cqggoEDo+10f5nKPycy0Lsuw05nlExI2pZueAI+2tp63i5MShQy2rvvRW0bGWdb4mz+LJl0sCxRSTVQ== 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=Y29K8Qh5qIU1qwlyku2o7Jsp1QDTyTn1zYVm6fspmZ4=; b=D8tqS6/20K8Pdn0FAbPHagPmAxWRhFFkkVkTAGcviRb99tFgxA3mCTcz+xbZpkYEPYON4SJcKRO0anXfW36rO98924WgigK0xfnJYy/yHkQYKVtAvsAt/zTqXvywmZ8Yh+Jz76TC87w5RKlmmzGjZ3fweN0Zcsr2xCJupwh2jb+lQhNtLzn/nnFSj2P3guGOH/cTJY8dcGBGjncRcSOYwhljdoLJoAH3ipgWUn48vegI14oGoubLAoRoR9XLs89fdJfvrQR9iHnr57zxsljPgnJgslJADRxQp5eKqU8/J0gO5BMA4Lxp9nS3XeeK22QuQjt879bro9pHeJilGFj/wA== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SA0PR12MB4415.namprd12.prod.outlook.com (2603:10b6:806:70::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.26; Fri, 7 May 2021 20:39:10 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:10 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu Subject: [edk2-devel] [PATCH 04/13] MdePkg/Register/Amd: define GHCB macro for Register GPA structure Date: Fri, 7 May 2021 15:38:29 -0500 Message-ID: <20210507203838.23706-5-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:10 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 397e1cbc-8e51-4791-5a5f-08d911982b0e X-MS-TrafficTypeDiagnostic: SA0PR12MB4415: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5797; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: bT4C2M0sdgGCONGQjhf+00Pf+FXybb0DHqMmONF0dX/fE3smnRjaQdeByFJT2DgHunQA/cydQNYsjccEcUCYooh0XOKqfokxLwV6o9bs5ILt6dDgF5ICC+daEYMlhQ4aXUbJdYmfCbRtWHsxJ6jupaLmwc/dYctOy/3vdSJbk6rg2H3nnhx7GBe9rviw++VaSMFhNSzaTDYuSxVu8tVwlTh0DEuIVexL43fA5Uo7wgRDT39zP4SqJKIOuB+rpx/Kp1PQB6EXxxlqMw5j0Hc4OVdF23zhzCiCA4eOsxGKrCvCjAcBEmpyhfirSYK0jJkOsQnwpPPreKkiNztOjunxwnSFhaaY/6UFULOiXQa+MoaUKrKSUl9yWK6SUVtUzhKMhqvE/RbQkbXp/ARBPnxOsIP0IqsH4yOAuU1eR8UIbK5sVKAgKkvVs5MwlZMeU7lAz8vyBjspLZLWRtsTfiQNkRfWo0v3tOu84kWHpTMMCPM8m8N7WXXPKfeYnWVr0TlD/oYSRIi0khJJOhY51MilIwdYgS2RkWwCY4mQTbRvDkiJGzrWjQCsSo2t+hQNyY3YKlatSJoHSR+7TH8O/urx4BvFJwYhqiJjyIIIaD92xAlHCoTwX6cySS0t+KbLBTDLYh8PTrnTnZ86dnoZSy/kYUPD9VuisQhbLV3Kn9OlCVCERlZaXHKHqpjGTuYViat6X1swb+YK31P+AusmB36djr12gDklXNKlnSBWlL0Niyc= X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?dTWurZrzq9JYRAzE+ei1bensPGQjm/iITEpScodpYZwdkV1hvccSliIvlHt5?= =?us-ascii?Q?WxwQjCg1yYM7mANl7M5Xk2qpWzZpmqYPWBF++1zVu2mQIwxtbvnljShuryF1?= =?us-ascii?Q?1O7JQbQS5lwpHa6pjBRKrLOtRe0uOsKvGG1C7VgEI2B/pj0ydTKaY0FF2IY/?= =?us-ascii?Q?PY0ueSlxdv1P2UVHJHI/YkhUU1wkSJ0727BMVkGoxh3Rwv/YMYD60qrdl2fq?= =?us-ascii?Q?s8ac5i7n/+u8yA0S4BdQTicxkhGNuy882HpdIpMjbV5KUpIa5hhjUiR6IVPK?= =?us-ascii?Q?HrOeKuUhdWkK8mafPwFRtMAHXst4O0rEshXa8CCxvWGf9ipBvfQeiXNjVry6?= =?us-ascii?Q?ftI5mRzPN6jNW60kJ07BvNIST/Jt71V3RaRtsZoOnyYJZPl4m58tHP5kdOSX?= =?us-ascii?Q?WC8MpZr3jougGSSaOBqYdVFOyDIYKZTUEixaGg/rcmSB5pWZbDuI9u9yiEtb?= =?us-ascii?Q?nWFQc5QwdtlvjkNCngdN4ImdWAOZyuad5ZTtw2R0ko7vDwFZ44SZCLfGZqmy?= =?us-ascii?Q?Beb147LOmUhYxsm1Ox+ZtjmwRahMtgTyD/0pQYcfgmQPRUWJjTvWdaV6qUap?= =?us-ascii?Q?v5SoEE66K2aind/1uAmGctXVJMzyHgUxFy+y7KUHLmWkVCSHKCPKksHM2HHg?= =?us-ascii?Q?M/IVfBBkjxD907usV8oUOdgl0J0AQ8J7dDayK+ZE0IYL+9ok4S0FRbAOXQkg?= =?us-ascii?Q?MxmlsgED8MlP+yboFz2XEuK6CH/SdXsoyagIWERGvmOwg1PPpO68T/ST+f4h?= =?us-ascii?Q?rMbidKsdGkLaoIf05H5jezlYL3Wgp+Rx9oibbF3Ob3JcBJaq666830TNhtr+?= =?us-ascii?Q?K3q7rtpEIVb+FZmhu0cbIoGZoFrr/qzCwMCAcufiXJOPQzcwuBPcD3oL3ZiD?= =?us-ascii?Q?QgEnNuVelGh7IqP5+G0xWJFdRoZfx6FwNs9rUihr+fPImjOF45VmVhtSO9/Z?= =?us-ascii?Q?tOLeOlwIT5ZnSbZmhdxAW0iaiViaDT7KzT7WTLjXjZQIcft0mI7FLSQNFQVU?= =?us-ascii?Q?oR/7Yw2Vx4hcF4B0RMN+AV68IQfCV+O0YJQMU0uduiKx27ubv4iIcTnE5c52?= =?us-ascii?Q?aWLfHzWetrBU48HYISAbS0pPbg7ao1Tn0ExQ9UKvMMaYfkuOMcXipjuVboXv?= =?us-ascii?Q?gzDBRj0S6GWzkJb6o2oXoH4wKa0SK6sIXio42PvAHyX4PF1VA18a7t0+my9V?= =?us-ascii?Q?9MwUf58NkJTGTCoBL1JjPfSTvet1nQNZ0zSR7R6fLDXX9qt1RjNUk70FoOWF?= =?us-ascii?Q?U/Emk34oDH8fUJ2l20PPlZ1aWoyWeG/6bKypnPO8NJGKXeubN4vs5MeeaJf0?= =?us-ascii?Q?w9vt3NuqdYYptFxThuva2iio?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 397e1cbc-8e51-4791-5a5f-08d911982b0e X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:10.6347 (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: YuKggo9MjWpjB1tb2wxUXvEpo9epoVZoA3xPfWShkCdwGYbjFVvVYh0kAUMKed+6RT5oVJ3sUdp+DSp7XJGHcQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB4415 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,brijesh.singh@amd.com X-Gm-Message-State: kmA8MKF8NrAJTtnIEv5dClokx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419960; bh=ne/EoubMvfU5dHvI7GvI/ps1B+hDM5a6FZ/rvoTulsI=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=bb4oxuYKwoiGQcnRnp1zzXCTBAncK424KiFm5GkdVtgBnaInmsR26XBjpMK/GRggTrm Z9eIhymEslu2yTbSpvhebsokaTuzl7j+EE1nW+oDKuh0oOmjfAnafoqtNMuU5vclbEnAw 9TcviqCNGF3KKHNqoFbLC8BrNyfTNXhjQ4M= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 An SEV-SNP guest is required to perform the GHCB GPA registration. See the GHCB specification for further details. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Reviewed-by: Laszlo Ersek Signed-off-by: Brijesh Singh --- MdePkg/Include/Register/Amd/Fam17Msr.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/MdePkg/Include/Register/Amd/Fam17Msr.h b/MdePkg/Include/Regist= er/Amd/Fam17Msr.h index cdb8f588ccf8..542e4cdf4782 100644 --- a/MdePkg/Include/Register/Amd/Fam17Msr.h +++ b/MdePkg/Include/Register/Amd/Fam17Msr.h @@ -53,6 +53,11 @@ typedef union { UINT64 Features:52; } GhcbHypervisorFeatures; =20 + struct { + UINT64 Function:12; + UINT64 GuestFrameNumber:52; + } GhcbGpaRegister; + VOID *Ghcb; =20 UINT64 GhcbPhysicalAddress; @@ -62,6 +67,8 @@ typedef union { #define GHCB_INFO_SEV_INFO_GET 2 #define GHCB_INFO_CPUID_REQUEST 4 #define GHCB_INFO_CPUID_RESPONSE 5 +#define GHCB_INFO_GHCB_GPA_REGISTER_REQUEST 18 +#define GHCB_INFO_GHCB_GPA_REGISTER_RESPONSE 19 #define GHCB_HYPERVISOR_FEATURES_REQUEST 128 #define GHCB_HYPERVISOR_FEATURES_RESPONSE 129 #define GHCB_INFO_TERMINATE_REQUEST 256 --=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 (#74827): https://edk2.groups.io/g/devel/message/74827 Mute This Topic: https://groups.io/mt/82665183/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74828+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74828+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419960285159.41072545702696; Fri, 7 May 2021 13:39:20 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id lrkYYY1788612xDsI6RAFlmr; Fri, 07 May 2021 13:39:19 -0700 X-Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com [40.107.220.85]) by mx.groups.io with SMTP id smtpd.web08.16264.1620419953315168995 for ; Fri, 07 May 2021 13:39:13 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EvKmGGfmHx+MvW78qL6jjL2dw7BXOyCZufFkE7VNYn1gcInuVEvjag7I3JP8FDh6uU8bcCzOZSqQCVlBWnlAupI4sZZf5QAYsqLK0qWKEF9bXl67abVhfaYLzo+Ea6DbjggitOm68zBcEjfP23GZ3nNnjVlFrw6hVu6YhVrULKycVzvSRZ9H/CS5BRAhT7+ghDQzF11ckxKvER3LtQ98T9dN6KZDjgmYOljJb1b7CiHxJycFGg655W2+/ktSBOYjSfUMXDAL5St0iRo4lPPXkcXvM/nTmn1jFSDQ9e3l25ACAv1DDVAiujADkeouNP3sqQFemZYgulxKC3trfxyyBg== 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=FjgmwKSOBHp+Zb1QHXoIlUhzD4Bw88yez9FDt5i4ccQ=; b=afwADJl77WOdHx8dbKnulaaAxdi5RV63MwI4olwji/56D0yivqdYOHgJXvdEQEegShjWq8y+UyG4N0wgA8g9oNQ5p5XobHZuAM5omtHjOk91akuwv4EKsLH1Gi+Q56hVGvPN4FHSLGpr4d/Z5hhwWsOKAqrC+mokouIeciFpWkJkFxf/mTeozQjV87UV2dlk64GV9hq4gjh/iSnNQIRCXn3NbyHIhFAaqdmrJGhswSXBOuTm3QRFSxoayHBwLesTQ2NO0+AMyAj88vnZ99V07MnS54pobbK/eif6z5yujBuds3093zevMGSiSTzVVZDX1NumRudlMN43aa9d7nsTNg== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN6PR12MB2829.namprd12.prod.outlook.com (2603:10b6:805:e8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:11 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:11 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu Subject: [edk2-devel] [PATCH 05/13] MdePkg/Register/Amd: define GHCB macro for the Page State Change Date: Fri, 7 May 2021 15:38:30 -0500 Message-ID: <20210507203838.23706-6-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:10 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c88da2ab-a70c-4b82-a0d3-08d911982b7a X-MS-TrafficTypeDiagnostic: SN6PR12MB2829: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8273; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: aUZ8Nopt1A1Uaj++8XA+jk3YWvYLfcAb/wDGOKQh3SnDZqRq2Xd/n+AveDmyJZY5JI7dZk7iYYB6LWeTNt1jU3Eb2bCI/+6HS3FMlfOPSeyUc0RNUiWmhycffFxsd2YOsOs67Pii6+Ee7Se8Jl/6lEGZe9rwAKLIqA3Ifh5ngZ5E/7SkBWiQz2l96e3Lcp4SL+ZHxI9e3E9zdrkauiTzpHNKco8nNrdWH2bU5SdnjH96AT9wREoj0xJNwZbDznj1bIM6/2pJvh3QXZuopAU9sCzVkO63Qf0l+oR8mIpuouPlLRYilOmFfrf3pqUs/MCROyurtcokCO8aKDITI5PzGLMuTYOR4e9Z+lu8neKELeO9tQaSMfYLtpBfLNOgaYdrnBJApRds8sDKHPvnr7JWX6Q6/95swr0uXFxFxq1IIvEF+lyIU9yI9GqTvx1jw1pyVJ3w40iJ2mbjCUCQK1NPeys0Lqyd6yqcii7QsCYL5DfeNtEFDh1dw/pd8CGwVJcAfzXSMyZNGBoQ6pog6dZjQV9pTxWrA1Xkzg2GEjzF6C1w3aHSiNB1U/f1dZBS5aHiL/iEJ17UB/et4yrtK2rZguQk9LNZ6vQZvMkMKCwtYXQxLhSJjSQ6AmsXRVKksa0aBO5gtulm6ye6g0MPfRovEe9OfiO2lCf/A3sZBePulcaCubBONhVr5jsn7wy2/w38qlH+vtC1/kSVR2DXjBFThnqUOx2c/2fXF6EslrW+UOI= X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?/9Md2mi+R8oGh8XA+zMOG8PorAOmGWHvi2nJRbTgXEB1VXCbjx0VuxL9EHDF?= =?us-ascii?Q?EckEIc5xXdTIKB+lAPHYqWySd3ejLXGK+XTMUOfaLb+dSMz0J+zdOyJGkcAK?= =?us-ascii?Q?oUkYIJT0W1fz5vpa/2T68eSjxzYyJzn9VW5v3B/dSH5eCRPGrxDEl0FGrnZ6?= =?us-ascii?Q?89JJ1zioBZB+cNZtZ8kcBtTpU/BfL3gLKAgtKPC5R3vuCXR1nglMIapvShsG?= =?us-ascii?Q?t3tjJxp0TsA5GweVUqBnddt2jz6X1roUAJJ4hjVDqialGtNIV37txZSpXSiv?= =?us-ascii?Q?NHB9ycSc6XXYlgJDoQ7Hi9UYlVkQAEK1oNVLjejoQkl/cWDsAYqgqiP03cOB?= =?us-ascii?Q?KxNZ9zOQ1cCG3g+hwlXHIBw1fwcvaJQSP1+WRD4W0SlSAgErR2iyjTlpbhX7?= =?us-ascii?Q?hPLaDMTosbiV5/VPJ8MlLw8ooXTG/faLU03bYU8SULLVefVRhFGal0O6Q6Pl?= =?us-ascii?Q?wMz/zBE5Xs8tVBLkppbh3Y86dwNITiDxb2Vhh+MwqcJLHNsQ1+LiQJmHqyxV?= =?us-ascii?Q?CjfH6Y6kZcAz4MzLsBwU46dZW2er642xm57AruEqZez4zhJoUsfMShMlLFfu?= =?us-ascii?Q?gH7BU7qMC8MNlr7i6tVEo+ODJTFNtqSbOJZasJ8hpbhozF+i7r+kc/R6q6hb?= =?us-ascii?Q?f4bd/V+Hh9Uv6BxNWtYYAFBmStzmubkYNwRvOPqC5PGvAtgaKwDlNLB2Fa6B?= =?us-ascii?Q?K1FpSPApHjs/iIWxFgt7vaH/J7p/04A9voI2j4cGOFDn16FTK+ondErUAf1Y?= =?us-ascii?Q?JfyXedjqMpYbHYtoz3fhsdo8Fzy98o8o4LQmCKaxxTYzbnrOpMwiz34GomyK?= =?us-ascii?Q?S1W47WG4pQAUZCp6oqBIzz+OWWS+Fnamo3XRFPNJC2bfeiVQN6OqKeKa8t+N?= =?us-ascii?Q?Z27o3fne/8/hYCre3XSul9GZAHBwZ7M6dBmVHaoqbHDzVA7/jemSWfIijESs?= =?us-ascii?Q?2q1PRCa81PI6biTU/K1DZgpO/ulTE7mdK43JruFA6Xy0Ybc4xGw9GERXAal6?= =?us-ascii?Q?Ul7x/72g+Z0elQLLQ9XiSl0ZeGFjtRsvSOtUDqVRzJyYhIyhZehLqhIWS2BL?= =?us-ascii?Q?wW4uYByZPlMzOsdjdJmYHadUkTqTBLhF5efcEQXRai5ZrGANDJoOkt52TTDX?= =?us-ascii?Q?SdqujJeD5HRj/n2D1JQA42v9sl2VjghJ+jQpF7MKsAHP3JVtJCNP35cfLVOM?= =?us-ascii?Q?s2rv39S9iVR6m5jWfJkNAqlmS66XDRY+VcbpC2YlnSx4VoLsfPrylere6OhR?= =?us-ascii?Q?1jVddnsEYCkolmboHOgnZqLigNQ6/bNOutsyEOPVRZVgGkjsTQKmRv2P1JC6?= =?us-ascii?Q?yf3CYNA08dWtnKM/EISKtaLm?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: c88da2ab-a70c-4b82-a0d3-08d911982b7a X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:11.4072 (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: 9GRZiaXvkwK7aMjX0BCsMP0DCKaa97W8Y8Zob1VxGg/dC/SgUcf25W+z2Np3DZ97jJ9638j5/fM/ImY+a2rc/Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2829 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,brijesh.singh@amd.com X-Gm-Message-State: POeCGzpJvv0p3O46vGO3Owh0x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419959; bh=Xq/iOjAcDbGGlSReNxBw357jnPVZTp97SSsqcDTXkRM=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=hiW5IkEfUTpFQTKkIflBZGm5ZKn3MUel7WfE0Ji1wq34WPyF23g+hVSNe5RzMLO3f7W +U9F7jW1phHkZkpKLfdjwcfCPdw5nBFgXnknLhSxanmFxdFIV/9CH8jgKdOpmUps/poOA F7kI7lkCU14oKy2u3zZx7jnsRUjk7Sei2L0= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 The Page State Change NAE exit will be used by the SEV-SNP guest to request a page state change using the GHCB protocol. See the GHCB spec section 4.1.6 and 2.3.1 for more detail on the structure definitions. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- MdePkg/Include/Register/Amd/Fam17Msr.h | 15 ++++++++++++ MdePkg/Include/Register/Amd/Ghcb.h | 33 ++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/MdePkg/Include/Register/Amd/Fam17Msr.h b/MdePkg/Include/Regist= er/Amd/Fam17Msr.h index 542e4cdf4782..62014854d9b7 100644 --- a/MdePkg/Include/Register/Amd/Fam17Msr.h +++ b/MdePkg/Include/Register/Amd/Fam17Msr.h @@ -58,6 +58,19 @@ typedef union { UINT64 GuestFrameNumber:52; } GhcbGpaRegister; =20 + struct { + UINT64 Function:12; + UINT64 GuestFrameNumber:40; + UINT64 Operation:4; + UINT64 Reserved:8; + } SnpPageStateChangeRequest; + + struct { + UINT32 Function:12; + UINT32 Reserved:20; + UINT32 ErrorCode; + } SnpPageStateChangeResponse; + VOID *Ghcb; =20 UINT64 GhcbPhysicalAddress; @@ -69,6 +82,8 @@ typedef union { #define GHCB_INFO_CPUID_RESPONSE 5 #define GHCB_INFO_GHCB_GPA_REGISTER_REQUEST 18 #define GHCB_INFO_GHCB_GPA_REGISTER_RESPONSE 19 +#define GHCB_INFO_SNP_PAGE_STATE_CHANGE_REQUEST 20 +#define GHCB_INFO_SNP_PAGE_STATE_CHANGE_RESPONSE 21 #define GHCB_HYPERVISOR_FEATURES_REQUEST 128 #define GHCB_HYPERVISOR_FEATURES_RESPONSE 129 #define GHCB_INFO_TERMINATE_REQUEST 256 diff --git a/MdePkg/Include/Register/Amd/Ghcb.h b/MdePkg/Include/Register/A= md/Ghcb.h index 326b11479779..a15b4b7e2760 100644 --- a/MdePkg/Include/Register/Amd/Ghcb.h +++ b/MdePkg/Include/Register/Amd/Ghcb.h @@ -54,6 +54,7 @@ #define SVM_EXIT_NMI_COMPLETE 0x80000003ULL #define SVM_EXIT_AP_RESET_HOLD 0x80000004ULL #define SVM_EXIT_AP_JUMP_TABLE 0x80000005ULL +#define SVM_EXIT_SNP_PAGE_STATE_CHANGE 0x80000010ULL #define SVM_EXIT_HYPERVISOR_FEATURES 0x8000FFFDULL #define SVM_EXIT_UNSUPPORTED 0x8000FFFFULL =20 @@ -162,4 +163,36 @@ typedef union { #define GHCB_HV_FEATURES_SNP_AP_CREATE (GHCB_HV_FEATURE= S_SNP | BIT1) #define GHCB_HV_FEATURES_SNP_RESTRICTED_INJECTION (GHCB_HV_FEATURE= S_SNP_AP_CREATE | BIT2) #define GHCB_HV_FEATURES_SNP_RESTRICTED_INJECTION_TIMER (GHCB_HV_FEATURE= S_SNP_RESTRICTED_INJECTION | BIT3) + +// +// SNP Page State Change. +// +// Note that the PSMASH and UNSMASH operations are not supported when usin= g the MSR protocol. +// +#define SNP_PAGE_STATE_PRIVATE 1 +#define SNP_PAGE_STATE_SHARED 2 +#define SNP_PAGE_STATE_PSMASH 3 +#define SNP_PAGE_STATE_UNSMASH 4 + +typedef struct { + UINT64 CurrentPage:12; + UINT64 GuestFrameNumber:40; + UINT64 Operation:4; + UINT64 PageSize:1; + UINT64 Reserved: 7; +} SNP_PAGE_STATE_ENTRY; + +typedef struct { + UINT16 CurrentEntry; + UINT16 EndEntry; + UINT32 Reserved; +} SNP_PAGE_STATE_HEADER; + +#define SNP_PAGE_STATE_MAX_ENTRY 253 + +typedef struct { + SNP_PAGE_STATE_HEADER Header; + SNP_PAGE_STATE_ENTRY Entry[SNP_PAGE_STATE_MAX_ENTRY]; +} SNP_PAGE_STATE_CHANGE_INFO; + #endif --=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 (#74828): https://edk2.groups.io/g/devel/message/74828 Mute This Topic: https://groups.io/mt/82665184/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74829+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74829+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419961563375.3678440090546; Fri, 7 May 2021 13:39:21 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id 8on3YY1788612x2qpnJecuxY; Fri, 07 May 2021 13:39:21 -0700 X-Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com []) by mx.groups.io with SMTP id smtpd.web08.16264.1620419953315168995 for ; Fri, 07 May 2021 13:39:13 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gW/roDXkeXeJzyXQl4hbUOTCKzkah2Sotl4YK+6FWTnh6sFXcNdxFll39o0KknRihrguJsC1X40hNzIfmryTiMHM9dw6gzbQP501x8IYdIYF3GhRL9FlSBU4burb78TKQl4ulOz0vS1eewrFlFkaTEDXhnu1H3ojb8bp/2bDEb51x8uJjEO+b4L312W8diiA+BJSvF1nfH9n3Pj4rizg1X8QFswuPl9NSYVpvtTiG46nJNJfTPZntxL9KlayL3ygStXsHcOWpSi36jU9OIenO7K0t3zJy6Aqla9pXbUF2fCRZrkNp2Z+mdFYKo+ENEiwwe/nqFOHIYzKdLMyLx+WQQ== 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=o6p3M6HqSrvyXEOFkhLXVQIRtNXzULF0qxBqy3x9l78=; b=V4t3sfUYD3Wl+/INDNApWpjRY0NTBx6IruhSR7rPqL0gxqqOFwkxwnQmzvtKsBoTjvk6uljREOA3rzPtrtafxV9asYsFsO/3Ar0lCkJCG9aNqPZ4IouyItfyqeCe1I1jpUxeYCgmZa9/Xmbsm2HkHa9F7kQC3ofAuv14iHdxShgVu+e+CidrxH9A/nFa5ztFqdisX9tlBt/zX9rWPu+p8BV2617illSHyeH/yzZUH/LCnjwAwkbyOmBbNRFAdo0geGro8/pdysr0dFlywDOtNcWv1yRr/SxK8/Xvnwf5CIM0yBlFNMcOhGleFO4+XvPGNrjNgNJWaFZq85vgtWgRlQ== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN6PR12MB2829.namprd12.prod.outlook.com (2603:10b6:805:e8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:12 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:12 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Tom Lendacky , James Bottomley , Min Xu , Jiewen Yao , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu , Brijesh Singh Subject: [edk2-devel] [PATCH 06/13] MdePkg/Register/Amd: define GHCB macros for SNP AP creation Date: Fri, 7 May 2021 15:38:31 -0500 Message-ID: <20210507203838.23706-7-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:11 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a6113fbf-2c4f-4844-2b26-08d911982bfd X-MS-TrafficTypeDiagnostic: SN6PR12MB2829: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: RSYSfPyl2Ei4ouogkol7Ct2q3mMTSrHzKfE3AJTzkY+/8UKG4Pze2OVgxlY2N9wvp2al7N9Tm5aVM0yYpOXA+5DxS7fH4aPiY8+r28qP7O/ZE7rmLt7erpwLsTEzL+MQDnUIaQen6I6I/Li9vj1GlH5RpJZGQgO3Bla1JRGqMUoxbakrXyc+ojGvyoOwt0wske080cXWWjsPP9YxCwe2gLXo6LSECcOFYvB13KQ+1GhmkLTaFSInAuJa5auOSDgG6GN48CTxm06+2EM2stEt+fp8w2FOakCFGpqLPzfUS6IHz9o8CsH0qMux++t5tQBf0oli8Mpz5E9cpJQP2O80DyGMPfR+TfR4CItZd4h38dre0m923PldtgGkzDUPPTpzDcYWvHsAv0eA9xY7TJWesHQE4J3aNDwBjEhbETMXYF6OYDK3LmNxhtiFtmvkM0us2TwgI4R1S+MHbacTfImVt0UYmPBL1CHv6k3UOoRD1daCfn+1df0ZI4ifLISEo0LmfuMCMPrRuxunUg21KI7/Gx8mBpGRwJ8CV1JoUB1cC8mhg2bXaaOZfno5DD6p/wKaLbyaulfMSUL3WNMRLz//fnLTXMv2MRO1Muo27+yjOvEjfhcalUfU3quPxI5mHXBjxOzmJWNmoqUU8ySe5zoql+xl15HDLpj8oDrDYvtgyL4lsdx/eyJRbDCOarj9P4VJMTj+FVuUf7B1QdOJH1x/+D40nAvw3VbAyHRZZM9lgOY= X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?AAkFw7aWa8pa5zIeli4Nbn0pL5jXXzioKeSMWLr1/jIUok7tItd4/QXOsq/Z?= =?us-ascii?Q?78mXWKO3/ObBPY5N8zWCIX6yARBNCaB1LX0Oz35fg7r9eswlP6oqIPaD+cdz?= =?us-ascii?Q?s6scnmVuhxdaSCk7xxiZenTgmd7wYYgCU0g0XyisZojVsqtM6trkbqllzIxH?= =?us-ascii?Q?QN0n3i21rP527ucFakCZQyXP3QV2BjnnFVwsb/VYVZbXgRoCrCHdS0oR+rc8?= =?us-ascii?Q?NipWoE56Fv80Q5xLr9iUkO6gRsriUrTHMUeQofXZPHN81nH3IlqR96AABnZD?= =?us-ascii?Q?qlnjQYMX5QgTBNMEJvopGtpJWSbOejCuV6N9TViTXiJ7VJYEhM693pLO0/fe?= =?us-ascii?Q?2V/i7EBVbu35z1tYc3Ki7NggbdlIvHW5ZXvSY3zNV8iOnFSM3TO1iG8kZk47?= =?us-ascii?Q?tPgth7umky/P5mbL0l/QMAedcteBBXI4ua0ShFhUUHbEG3HYAldv3q66fIan?= =?us-ascii?Q?igCsbcNWbxMH4JimzYZGGtGHBiEi0o07fGVHu2lBZdEa3H958Xtg5H1rVs0U?= =?us-ascii?Q?6L32bDhe4db2j9CVyp4Sf4oi2nWE6H7nfxsCzHH9ijxaduBsnsd+2HBM2Ubo?= =?us-ascii?Q?PxWfsmOabw1rctfitzN29YiktAZwch3hlDKQsws9cXZNUO6nz85f6+It4dls?= =?us-ascii?Q?HVkQjV5hOboiEBkCA6gPz1qDpGLTWl5dBbyOreCiEvnJcQVbnnDCuwonoEpp?= =?us-ascii?Q?/djcIBQPQ3B/nLYuJ2Y7ANLJKsaazDhn5DW3rSRZ1etTeu9Gu23i6ATztwh2?= =?us-ascii?Q?HxbtWprU+kty/JIDYW33qlkhcNTemlmRJuBn/tSX0bai1Jm6acQuDEn1iKzR?= =?us-ascii?Q?xHsPPyZVU+GYn9d/Qe9vIkfI9RbROtZMhoRSFuRi2FMirJJEph2N/IBdmdGr?= =?us-ascii?Q?tJuFAzrdLUrOzXHBAhLZs0bNLg1xMDFn3d3ZKHwZvWmbOxJfFrvJ45DML1JG?= =?us-ascii?Q?rYO6/kFtnyFQ69JpmDstrf3F5Cs7cCS/fzb68uAENYAxAUowGHeDABQN3AR6?= =?us-ascii?Q?fNcCRs7yEXi5xbIjAPmK2qFULa8T8694yNZaEhQsW8oDU1cRHJ8vunEraQVo?= =?us-ascii?Q?Sf974FlFhzYImX15lK+omZDj6qREXuzy/q3XmGuZszkYRmGAJFKj6FqA0TNe?= =?us-ascii?Q?KU0FYs0j1HpqbA+kpF5VscscZsuQY/u210p0fcplWUu3jwoBTAMR/h6yNht0?= =?us-ascii?Q?zzhK5F/AGK5aN+ymJ53em3yv6w0ZJ1Adq1FXZf83qUc4BiB8s0Ub2cZe1CiF?= =?us-ascii?Q?N7axgkLn1pdvUoxf9HXbcilJmasIC48rTrkPg3k+wzhQObAGUZXEj8Kdd315?= =?us-ascii?Q?QqJzV5JhZ1/JJpad3awmc9SW?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6113fbf-2c4f-4844-2b26-08d911982bfd X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:12.2727 (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: OtCQILYhic/7m5K7vB+u5K7nuGiO7H3JOF9nr3HLnl7mo5AU8Ikxc2epy9gh7hwUJan7C6MTz6mfmept2Lfvxg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2829 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,brijesh.singh@amd.com X-Gm-Message-State: k75XvSZU2kvzCg0RkZnroxIqx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419961; bh=Qy5wJ09kBw1Wbe+93X31rtiFbqonQ+I+itoeBGKRATc=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=GuQkLe0jCRuYl4+IigvDa4iKh6aPnrEVkfEcCe/uts0lKsYE06QCjrTjaqyM3t5DFEb P92/BRFLDeNQt7/Bv3wpgpqOdO1egGZ/A/lvMYUyesLik0sBzUbURKbu27avAL9xCibJA PW6TlAcB79kXrcteemAfQpZ4VdxwOpIsvoU= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Tom Lendacky BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 Version 2 of GHCB introduces NAE for creating AP when SEV-SNP is enabled in the guest VM. See the GHCB spec section for additional details. While at it, define the VMSA state save area that are required for creating the AP. The save area format is defined in AMD APM volume 2 (Table B-4). Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Signed-off-by: Tom Lendacky Signed-off-by: Brijesh Singh --- MdePkg/Include/Register/Amd/Ghcb.h | 70 ++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/MdePkg/Include/Register/Amd/Ghcb.h b/MdePkg/Include/Register/A= md/Ghcb.h index a15b4b7e2760..956cefbc003c 100644 --- a/MdePkg/Include/Register/Amd/Ghcb.h +++ b/MdePkg/Include/Register/Amd/Ghcb.h @@ -55,6 +55,7 @@ #define SVM_EXIT_AP_RESET_HOLD 0x80000004ULL #define SVM_EXIT_AP_JUMP_TABLE 0x80000005ULL #define SVM_EXIT_SNP_PAGE_STATE_CHANGE 0x80000010ULL +#define SVM_EXIT_SNP_AP_CREATION 0x80000013ULL #define SVM_EXIT_HYPERVISOR_FEATURES 0x8000FFFDULL #define SVM_EXIT_UNSUPPORTED 0x8000FFFFULL =20 @@ -83,6 +84,12 @@ #define IOIO_SEG_ES 0 #define IOIO_SEG_DS (BIT11 | BIT10) =20 +// +// AP Creation Information +// +#define SVM_VMGEXIT_SNP_AP_CREATE_ON_INIT 0 +#define SVM_VMGEXIT_SNP_AP_CREATE 1 +#define SVM_VMGEXIT_SNP_AP_DESTROY 2 =20 typedef PACKED struct { UINT8 Reserved1[203]; @@ -195,4 +202,67 @@ typedef struct { SNP_PAGE_STATE_ENTRY Entry[SNP_PAGE_STATE_MAX_ENTRY]; } SNP_PAGE_STATE_CHANGE_INFO; =20 +// +// SEV-ES save area mapping structures used for SEV-SNP AP Creation. +// Only the fields required to be set to a non-zero value are defined. +// +#pragma pack(1) +typedef struct { + UINT16 Selector; + UINT16 Attributes; + UINT32 Limit; + UINT64 Base; +} SEV_ES_SEGMENT_REGISTER; +#pragma pack() + +#define SEV_ES_RESET_CS_ATTRIBUTES (BIT7 | BIT4 | BIT3 | BIT1) +#define SEV_ES_RESET_DS_ATTRIBUTES (BIT7 | BIT4 | BIT1) +#define SEV_ES_RESET_ES_ATTRIBUTES SEV_ES_RESET_DS_ATTRIBUTES +#define SEV_ES_RESET_FS_ATTRIBUTES SEV_ES_RESET_DS_ATTRIBUTES +#define SEV_ES_RESET_GS_ATTRIBUTES SEV_ES_RESET_DS_ATTRIBUTES +#define SEV_ES_RESET_SS_ATTRIBUTES SEV_ES_RESET_DS_ATTRIBUTES + +#define SEV_ES_RESET_GDTR_ATTRIBUTES 0 +#define SEV_ES_RESET_LDTR_ATTRIBUTES (BIT7 | 2) +#define SEV_ES_RESET_IDTR_ATTRIBUTES 0 +#define SEV_ES_RESET_TR_ATTRIBUTES (BIT7 | 3) + +#pragma pack(1) +typedef struct { + SEV_ES_SEGMENT_REGISTER Es; + SEV_ES_SEGMENT_REGISTER Cs; + SEV_ES_SEGMENT_REGISTER Ss; + SEV_ES_SEGMENT_REGISTER Ds; + SEV_ES_SEGMENT_REGISTER Fs; + SEV_ES_SEGMENT_REGISTER Gs; + SEV_ES_SEGMENT_REGISTER Gdtr; + SEV_ES_SEGMENT_REGISTER Ldtr; + SEV_ES_SEGMENT_REGISTER Idtr; + SEV_ES_SEGMENT_REGISTER Tr; + UINT8 Reserved1[42]; + UINT8 Vmpl; + UINT8 Reserved2[5]; + UINT64 Efer; + UINT8 Reserved3[112]; + UINT64 Cr4; + UINT8 Reserved4[8]; + UINT64 Cr0; + UINT64 Dr7; + UINT64 Dr6; + UINT64 Rflags; + UINT64 Rip; + UINT8 Reserved5[232]; + UINT64 GPat; + UINT8 Reserved6[320]; + UINT64 SevFeatures; + UINT8 Reserved7[48]; + UINT64 XCr0; + UINT8 Reserved8[24]; + UINT32 Mxcsr; + UINT64 X87Ftw; + UINT64 Reserved9[8]; + UINT64 X87Fcw; +} SEV_ES_SAVE_AREA; +#pragma pack() + #endif --=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 (#74829): https://edk2.groups.io/g/devel/message/74829 Mute This Topic: https://groups.io/mt/82665185/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74830+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74830+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419962736522.2553720810758; Fri, 7 May 2021 13:39:22 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id GcXTYY1788612x4NgcTmi9LR; Fri, 07 May 2021 13:39:22 -0700 X-Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com [40.107.220.81]) by mx.groups.io with SMTP id smtpd.web12.16147.1620419954580423372 for ; Fri, 07 May 2021 13:39:14 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dhSyYbwb5CH9qh1f1JKHmK1dNtGv5qFZ42uu8r957IkOJ2q/Mruc17v+ix3WM5QYNgxxF6rb1BETrRZZLBcp6qZluI3zuppdEhjzYzllRXNTulC0grX5XFirpOmFHibNU9GdJW9zInLhn4/wiNfGGvdCzPf5cOODyDacVhgDvplctzunSb7wwkkIIbApbiDFuUJn7w4ZLsvyN7XKeSbeCiP+0HkqEz1Tg1+cdStA4Bygsm85rQen8rmDtH3qUtSKmI+XRDaoKnfr7r4VqySmXVH62Zn21ewnMcyog3TkqQsVxWqqFcSFq1o5r0T+1OpQpriCR9mxO70tM8bEV2gpXg== 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=N0t72K4f956Hzlhb0PoYdd8GO1jJ4uaLgrHF3/+vS2M=; b=BZ5Iz/rLkm3JIbprDLxkeBBm2f4dFnJ0c/ODtjoCyrYwicBss8WKeKIxJexgGwQmvT8u+uaQmqnqBxnPPqHFDqHfs5XPyHZow7QwaeEj0d/+++7BMTAqGmGXDU5iw3/A5ulac26o6vZD/wpcv0l/Bp6v/y+tInb9x2qRcHUuapOueDvU4Yhg7hRhOJ7wjIuLKp/XdTkNh3Lr5XsAK6YySVeNxzOHRUBUtrAwrxWt0pLBpsl0nKP/u7Ks+ecfCir5MkTWsIMnCB3crBnqxP5Mh40JvjaEUh0J9FpJ1v8VgmcSTehVpbq4nQuv9GIQf54c/SQy8MiAS4u8cenTJJslFg== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN6PR12MB2829.namprd12.prod.outlook.com (2603:10b6:805:e8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:13 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:13 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu Subject: [edk2-devel] [PATCH 07/13] MdePkg/BaseLib: add support for PVALIDATE instruction Date: Fri, 7 May 2021 15:38:32 -0500 Message-ID: <20210507203838.23706-8-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:12 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 522b6da7-3dd1-479d-861c-08d911982c7a X-MS-TrafficTypeDiagnostic: SN6PR12MB2829: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6108; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: MEc65lDYb2kxFTQ2RnS4YmERGFOyIGCl4tfwAkQm0T16d2yNYACQwfIabp4KGL+C38JkehfuxuJRf3IHAWs5yIz0E+UUa3LiW0jGnYUntExnJ9ISEE6AQRw8IWAWTCsr01buFaSQKEdWeZQ2Hly4YYvMxhT49xJdpOAtbhgyEtTYtL5nmclxOuPn4nEjZDEUuMsM/nSPc7QIljasy+KH4DXlpdGQ7/6XENQksZ3F2c467d+PB/zwLXkrA9BfiQ2BImt8tgY8Adlj+0IjsKyDbjcStj/gbA/dEXE5Uk1BqS/xvWVmMaWGxPowqNoiHkfCHK6mnzA2xNFzfyFVGmkv2WJvKF3smgkByMwW+EFQGMAsda1uRmVOwfeMHrhobEvuW4rCFKUsrsSqo1y/FSY7zhlssVp4RfxvQn7G8cZ9PYkr78Y7PpYFLcI2mOaLHOaEIsWC/gzUpBzPYpJvMVg7Dcm+UmV9hn4wy5qGsyRRxrX/BWTQMLEmvdEQvUpfcEN2v61pdOBSDZiMigixxh7G6FuEge8Ok6f/s6E2fzcrx26F5QyTI0dp6VQufnvIcZs7CBeOjAqz6AkBSMmoXtCcOw6hBlq7esfaB1WUUh+x134rYNMD09AejhWAYDgeQs4470hua9NEyWql1KBciHCbFN1bO1kEkgVXM95kTXGT9fsn139lb/VshB1qawPfv8XBbJl02RJqE4p5fxJOUnXNsYsx6KvEuH5MOLYJhCQ5+ek= X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?ecS/rH9lUetN67zTILpl1adg/OHdb1QnwtnaXqwLaD7OUx+o2jN+wSc63CYc?= =?us-ascii?Q?CEXp7/AW2yKiCmPzH1+FNpZ4fbezIcu2CmCf4d2TXQv3DFUNffjoGT61yPPS?= =?us-ascii?Q?tX6HephdgnXNnqiWpxCmkH698+z6vLaVi29HY2jzAB5HafbMq13O3V5YZHPO?= =?us-ascii?Q?zHU6wwi4D7jAxRCVL/0EwA1sXsMyFMRk29gfjXrysifJwXXNE04Nxp83gkiT?= =?us-ascii?Q?9juaaOgY1dHu2NRFqT6VZypg/PEuqNfGR378SX7RLo3xCXqEMLUmQGNvkLCv?= =?us-ascii?Q?x3+CL/F3KwO+2MrODKjGwPoc+I7xPzDzW10tEnnPl8zv/zyV/V3doF/YHVtj?= =?us-ascii?Q?jWjnkekSien98LPdKmhyBVUc7fzjuF2LtoMM9XF5872YaLqmgNTP93RWg5EK?= =?us-ascii?Q?v5spHI49mWcvBx53g6wFjHnRVOf83Wec7rfiIH2wXpyGqcabZSYn0+EaLC03?= =?us-ascii?Q?rKZXjnZvzkT91E9KZ1Y42VaykGpulZrgXZ2BI83/RY/g67TD+6meD45rHmuM?= =?us-ascii?Q?UYCUpG4rv4jEDlqNGH4FBV7ZUTgfcszI7WCQGD4UmNv5B9NyZaoX6VZPNEu7?= =?us-ascii?Q?jFO02OR2o+nU/7y3xTSezRfS6b3Jr1k1w0Jb51Lm+cCJJUdisCOuizsFxlOM?= =?us-ascii?Q?iUJ1Q7SgoKdVf978q7L4i/C3Yr2PZsgcu3FBNA4zjKUEN6JT/9G5Bm4C3rKW?= =?us-ascii?Q?aU5ZUHC8n2EcWnwJoPi2kgNCjfZrVi5X+SFzdup2wEHJq+KtmrZ7RHVtqO96?= =?us-ascii?Q?j7e33uvKxeS7QEqMXVmtQjvk9kxlnQSfNpkicODASxdawS2XfBgfaBIBSo+O?= =?us-ascii?Q?4mV85AIsszERqdGYLDlqomVvnfuN6F+LfNGp5zIb90+wx1SBligIMb6IOUS8?= =?us-ascii?Q?dYWF9gev8tcvhePJIcOYB5bjdYvzb0qlijb0PEGKCbuA43TD4gt/D9a5iIKS?= =?us-ascii?Q?jqZ8T4UepMvZ/r1fmaP4eKnhSxNKuSLg9DHD2un+lwn4rJRC/YjkLjKBkHJB?= =?us-ascii?Q?VoJAqLlupgSY0muqF/uB37oKk38X5m55YaA6E0leZ8qm7mgE4DzuHMsJblXL?= =?us-ascii?Q?rVYtFHCvo3n5L4P7xUz2nPEbpehZ1pFx5BN3T3PpFzQlqVrNCX4m/OBISR1e?= =?us-ascii?Q?unmk+ISSvcPppHOwWnmcvQJru868lLq7LDNCYey8fmXDwcuAFScHFyGQHUEW?= =?us-ascii?Q?m5xQqepF8CvG2021fZhjF9TewVVvChsg0CjFFT8yQ1TkWC5f0MjPpTisGpWl?= =?us-ascii?Q?r+ASeosZZRlm7NllRxSrcB6dHBRl6xdHcOeFwO8TaXaB4fmi5gojWRqckriD?= =?us-ascii?Q?4p7tXs87jFZz1ukGdXDAfiFl?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 522b6da7-3dd1-479d-861c-08d911982c7a X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:13.0343 (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: 7NgXXzFJptf/kmFKCyLul0YPo4PkYqWFDrMAK0p9oyQJ6U2rOuQmsJKBEuNvaxH5vwy+ZWyqNLdXjDnpzTP/kw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2829 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,brijesh.singh@amd.com X-Gm-Message-State: IRmrrelQn3IXEHQAhnM2XCYbx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419962; bh=CR8Wjh+rVeioj/K2x57me2YaZBqAttH+FVTU8A+PeZA=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=Ha9bD3Bc3xMwafAm6gk1Ir+N4zuSUlqwbX1O5tFmwXUm2GBdqDqCdNvvYqN+ZXVQEV0 uHazykrP8EhrMqZPymmZ2FePHfKJzzTkpw2VaQVJMvs4aV1yaXrjfEti8ad4xrkAMbFBb vcHQpK88WVPyiakcPMlb2Q53p7JGdPr5ZNE= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 The PVALIDATE instruction validates or rescinds validation of a guest page RMP entry. Upon completion, a return code is stored in EAX, rFLAGS bits OF, ZF, AF, PF and SF are set based on this return code. If the instruction completed succesfully, the rFLAGS bit CF indicates if the contents of the RMP entry were changed or not. For more information about the instruction see AMD APM volume 3. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Signed-off-by: Brijesh Singh --- MdePkg/Library/BaseLib/BaseLib.inf | 1 + MdePkg/Include/Library/BaseLib.h | 46 +++++++++++++++++++++++ MdePkg/Include/X64/Nasm.inc | 8 ++++ MdePkg/Library/BaseLib/X64/Pvalidate.nasm | 42 +++++++++++++++++++++ 4 files changed, 97 insertions(+) create mode 100644 MdePkg/Library/BaseLib/X64/Pvalidate.nasm diff --git a/MdePkg/Library/BaseLib/BaseLib.inf b/MdePkg/Library/BaseLib/Ba= seLib.inf index b76f3af380ea..89a52f72c08a 100644 --- a/MdePkg/Library/BaseLib/BaseLib.inf +++ b/MdePkg/Library/BaseLib/BaseLib.inf @@ -317,6 +317,7 @@ [Sources.X64] X64/GccInlinePriv.c | GCC X64/EnableDisableInterrupts.nasm X64/DisablePaging64.nasm + X64/Pvalidate.nasm X64/RdRand.nasm X64/XGetBv.nasm X64/XSetBv.nasm diff --git a/MdePkg/Include/Library/BaseLib.h b/MdePkg/Include/Library/Base= Lib.h index 7253997a6f8c..f177034af6a1 100644 --- a/MdePkg/Include/Library/BaseLib.h +++ b/MdePkg/Include/Library/BaseLib.h @@ -4813,6 +4813,52 @@ SpeculationBarrier ( VOID ); =20 +#if defined (MDE_CPU_X64) +// +// The page size for the PVALIDATE instruction +// +typedef enum { + PvalidatePageSize4K =3D 0, + PvalidatePageSize2MB, +} PVALIDATE_PAGE_SIZE; + +// +// PVALIDATE Return Code. +// +#define PVALIDATE_RET_SUCCESS 0 +#define PVALIDATE_RET_FAIL_INPUT 1 +#define PVALIDATE_RET_SIZE_MISMATCH 6 + +// +// The PVALIDATE instruction did not made any changes to the RMP entry. +// +#define PVALIDATE_RET_NO_RMPUPDATE 255 + +/** + Execute a PVALIDATE instruction to validate or rescinds validation of a g= uest + page's RMP entry. + + The instruction is available only when CPUID Fn8000_001F_EAX[SNP]=3D1. + + The function is available on X64. + + @param[in] PageSize The page size to use. + @param[in] Validate Validate or rescinds. + @param[in] Address The guest virtual address to validate. + + @retval The return value from the PVALIDATE instruction, and + PVALIDATE_RET_NO_RMPUPDATE when there was no change in + the RMP entry. +**/ +UINTN +EFIAPI +AsmPvalidate ( + IN PVALIDATE_PAGE_SIZE PageSize, + IN BOOLEAN Validate, + IN PHYSICAL_ADDRESS Address + ); +#endif + =20 #if defined (MDE_CPU_IA32) || defined (MDE_CPU_X64) /// diff --git a/MdePkg/Include/X64/Nasm.inc b/MdePkg/Include/X64/Nasm.inc index 527f71e9eb4d..528bb3385609 100644 --- a/MdePkg/Include/X64/Nasm.inc +++ b/MdePkg/Include/X64/Nasm.inc @@ -33,6 +33,14 @@ DB 0xF3, 0x48, 0x0F, 0xAE, 0xE8 %endmacro =20 +; +; Macro for the PVALIDATE instruction, defined in AMD APM volume 3. +; NASM feature request URL: https://bugzilla.nasm.us/show_bug.cgi?id=3D339= 2753 +; +%macro PVALIDATE 0 + DB 0xF2, 0x0F, 0x01, 0xFF +%endmacro + ; NASM provides built-in macros STRUC and ENDSTRUC for structure definitio= n. ; For example, to define a structure called mytype containing a longword, ; a word, a byte and a string of bytes, you might code diff --git a/MdePkg/Library/BaseLib/X64/Pvalidate.nasm b/MdePkg/Library/Bas= eLib/X64/Pvalidate.nasm new file mode 100644 index 000000000000..b20dac7e6831 --- /dev/null +++ b/MdePkg/Library/BaseLib/X64/Pvalidate.nasm @@ -0,0 +1,42 @@ +;-------------------------------------------------------------------------= ---- +; +; Copyright (c) 2021, AMD. All rights reserved.
+; SPDX-License-Identifier: BSD-2-Clause-Patent +; +;-------------------------------------------------------------------------= ---- + +%include "Nasm.inc" + + SECTION .text + +;-------------------------------------------------------------------------= ---- +; UINTN +; EFIAPI +; AsmPvalidate ( +; IN UINT32 RmpPageSize +; IN UINT32 Validate, +; IN PHYSICAL_ADDRESS Address +; ) +;-------------------------------------------------------------------------= ---- +global ASM_PFX(AsmPvalidate) +ASM_PFX(AsmPvalidate): + mov rax, r8 + + PVALIDATE + + ; Save the carry flag. + setb dl + + ; The PVALIDATE instruction returns the status in rax register. + cmp rax, 0 + jne PvalidateExit + + ; Check the carry flag to determine if RMP entry was updated. + cmp dl, 0 + jz PvalidateExit + + ; Return the PVALIDATE_RET_NO_RMPUPDATE. + mov rax, 255 + +PvalidateExit: + ret --=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 (#74830): https://edk2.groups.io/g/devel/message/74830 Mute This Topic: https://groups.io/mt/82665186/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74831+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74831+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 162041995622236.067073326655986; Fri, 7 May 2021 13:39:16 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id Q90kYY1788612xKOIz3h22Ja; Fri, 07 May 2021 13:39:15 -0700 X-Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com []) by mx.groups.io with SMTP id smtpd.web12.16147.1620419954580423372 for ; Fri, 07 May 2021 13:39:15 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N6RwndFX9+0GePkt7BcmCBSEN+JGb0YeNb/PMdlvg4Q0xURRRH6czm3wzK7WNDGFZKzHG4TT7GFKSq64Seh4xZUr4hJdIWfXh6XYBuJrfQM1yWNMWbeURxYaJ7EcAtjut9peFJa4v4akwo9cf/5jreaJ7+rZIhbZp1CTmsnLZIQ3U4PPHbEAZaIsOsXnDOPremz42Pe5RQpL9oSdK0Pp2xcZ12BZ7a0gjCBOg0ogthbmBUfoPP5Vn85Qe1PxvvJ3zawADP8N/6yPq5G51qy5nUk0wBPQo1guan9wRsbpGnMRkwqpHcPEZ1q1o7OK7QKXSoYEvqPEA7aug469mTRXlw== 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=kV7iQVmNNE0WPrplP+62FogHa5eaNom2qGKrp/tRQw0=; b=YW2Y7zage2Vf3zeqKUFyFB8x5IHtzl3SaHXpNlulPNcselUgcyBTNKDFeUNBpAqKmbKAsZum3H2xdaFoGp6eBMVblF52J6GQ3PJuTuWKEo6QWpoybDgH+7nePtDQ2gO0uYhRfMX3vXNlvxVLng15zJejz+ylTzpa8HB8rUhtrKAb2+5MmP5mpFfJKSnIWebkehew5AIO7Y4A4UUwXtH0EF88vAWZZnESkJuXjuOmYuQHPJy267D2OfXXoGZRGlhNyya8IiEJ2QfNZZGOu3qawvl9eFTYGsYfDNCsJoOdzbARk/+i8FZJkdpbH8d/aAd/bHkXw5nbyIK6xqjCe76JLg== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN6PR12MB2829.namprd12.prod.outlook.com (2603:10b6:805:e8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:13 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:13 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Tom Lendacky , James Bottomley , Min Xu , Jiewen Yao , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas , Michael D Kinney , Liming Gao , Zhiguang Liu , Brijesh Singh Subject: [edk2-devel] [PATCH 08/13] MdePkg/BaseLib: add support for RMPADJUST instruction Date: Fri, 7 May 2021 15:38:33 -0500 Message-ID: <20210507203838.23706-9-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:13 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d0f6e52c-01ef-4111-8398-08d911982cdb X-MS-TrafficTypeDiagnostic: SN6PR12MB2829: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5797; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: qJXGX38Pv4QmJyH0Zrj8QieVBA3eSTlbjEFZsrm7B6KsveUAuORfxEGGHr0HGYYMwJ5vKECELkOPZfm6tOvVMc+KYLw7eFzMHgAQ/WnjuTNANOiGzuF8TH0X5KLYGKwymd9WOaQNEySgHCL8/2cSmsU6uDxPBPo4nE073TRBd/ulnsgtZQZp3x8iX8NFUpgKSgvGy1ZAVwuqmfRRO4gjp9cYJ1Cj0pOXpnJqASJlop7XZeMDqxxACuqA/mVm0qHkuLDKKOGVJncbXjz/ws8uu7yxOw9f1Ev1VSkVjCoIpbUAG/TZ15FAujm/bhvG4XQxbLwoLXSY17QFp+ZEvVzRYGTZVI7h3M+R+iK54BTT+E+v2zfi1V4w0AYohthHuic7zoybPnIZdn56Cci6Q71qPgN4zSTrWnen9BLcCdyUMH/xzmkwJ6jLDATJz6A2u5w3IYTr9ruH7JDESRwqzouMmCGcyPb7GDm8iYlfNatUXrI1sBT7n0HsyzhpuiggKUf86pv1guLqu4MOzomg4361twkehvlieqXjkWArveM9WEAeUNPcfHYMgGf6UySaWy67Tw1YpoYc0u8QaC2f4LlDKTzw1JxtCPfl6TRcHq/leLk1P3c5siW+tuk3gbVblseGlkFuLSBdA1hqGIy2riWEZMeMXinreL39PbaNG6oU+NeHR3vlin4c7CdZmY0BtIVSvSj+9ZzR31mkjomYnQi2LaFS3RT53nkE4PUPmeJE0PI= X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?UyXZO5G7jWxmYGfZCURpiDWTRs5ZA0F9XxIm+wsbxXgWyY2uAg6N9pJ/PjF6?= =?us-ascii?Q?8QQD0K1V/7nRvihGECdSpxLUbXRatZUa/gThHk41plzGUDnBOb1scmyLWLGN?= =?us-ascii?Q?Z04BLvO97I5e0R//B02aT5vvsDI4SZgYuytlFWzZDOTSRUWC58qXk1ecutd7?= =?us-ascii?Q?CARJVc+7X8qKF1LHQLp7/qJqYuxpDA4tImydiynoPlfeDTiq6Hab5Bun70MS?= =?us-ascii?Q?MxtEMGpkMFP/q8HAaMHz1UhYiA+zXzcwrGRhBf++3A1GhDiH93bECeE1rrYg?= =?us-ascii?Q?8gb5InjCzSc0Lim+w4IL+JbliKLb7yW4atj96EVHgNaGSiMG4a8NSRSRi6AP?= =?us-ascii?Q?ROuNWX40IPpZCN89nVSM3LvSiLj3QtGVL34x/f5WaPiY/mpNFW6gYp8cG8P6?= =?us-ascii?Q?oBe6cMktoB2etebOLTNLsCmQIAC/hme3/fUoVY2H0DidAaQJQmzrUc2ArVVF?= =?us-ascii?Q?lTZTcHDkIJUiARiuuab71eYcvQrlorExRu4pX+8K0WyXaUQUugWnMxGcs7VR?= =?us-ascii?Q?pdShwJt1lrw7PZYlSYYG8E7Z+ke6mwI59c0c3aB4oZDlmqyn0xc6MnZLThw5?= =?us-ascii?Q?VNoGO8zq2Pnb1kKVWisXnOd44e2i9/zGDGL9AVxiL2OYY0gGzV3j8aLr8QXp?= =?us-ascii?Q?xvfiR0Uy74T8J3p3aTLybiJMElDmPg6bO8IuLDBFBwZa3BAKZNrbVCCZWh5R?= =?us-ascii?Q?XJhKvsPgEhhal41fVPuQq3CMe7lYe1fq7Ymhu512+NgbiNaLBDXw27VtZeXY?= =?us-ascii?Q?Ha18iqp+D121sOS8MfdJE+YgnBPsqTKqIjpztAEW41sSQHLEfHiQXtelv3Bw?= =?us-ascii?Q?35Dk3nuU0zcG4VXOkzCmVRXlnbEJkIgK9AOGkDHfGtDvMJ8smbXBCJic/9H6?= =?us-ascii?Q?4Ns5axF2YLPcY/XCF9oudeJC7iJRnT/VULZQJiNEP9sfddpmVuiP81bh27v2?= =?us-ascii?Q?iEdbrjHg/0HffGDskYQV+QG8mT3GOwm1bZFOV1QPzC+1EVcKDEXB4UT36RY1?= =?us-ascii?Q?ivYDucuTuXudzGIoTvrWAKato8br1khyUZCMHQ7GnqQyxPME64SEulqhPDoS?= =?us-ascii?Q?ahRtt9yVaEdzng+PMPU76APHRjbztrm1EY9moKvd9heuGfXUtKjqchUXJ5Ld?= =?us-ascii?Q?4eB2pBuwX6CcGPLBG5WuPGTlJIHqrGvNeWMOQyuyF7QAXnRlab1fl67ufonV?= =?us-ascii?Q?odhm+T48KO2MDYrTLNgPVa3CydDS1N3tGcx7L+lbbkrvRSXqbFzZsTZ74FBf?= =?us-ascii?Q?1wXKXPlyHq3SkJ2KYnrlxeFKJp34RPzkmDXJDczC4JpvNcxjkALxRQEnDk6Y?= =?us-ascii?Q?dh8wUHylBZlLCQcnDub4AzGL?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: d0f6e52c-01ef-4111-8398-08d911982cdb X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:13.6499 (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: q+PhG6qMNTwnG/PglDrgwYHfVdbexhrk02a0hiwcY+5hvJQiFhwnXJd7TeIhqsSZ+EAOf5hJiU1hanM9f8cG/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2829 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,brijesh.singh@amd.com X-Gm-Message-State: DULDi4cUreDxQz1355nHJXJgx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419955; bh=EizmkMRwV9D3tL96HAEp51+CDmOiAw8uGnsjkGBZFrk=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=Qe4J7LufWRodeyv0mr4qU1GTnlzVYhGG+TC99ZgRUHmzIQe7JuY3gUZdUz6vOmKiB0n rJg9Yk4g+0d7evUO5LoZRznNV1KOAkW8kdPw5/3G9HI4YYIzLLLeYbFLweFxQganIsDs0 FtA1IsfvDHvd3I9yxFGmY9RisgrUTp1c0K4= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" From: Tom Lendacky BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 The RMPADJUST instruction will be used by the SEV-SNP guest to modify the RMP permissions for a guest page. See AMD APM volume 3 for further details. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Signed-off-by: Tom Lendacky Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- MdePkg/Library/BaseLib/BaseLib.inf | 1 + MdePkg/Include/Library/BaseLib.h | 36 +++++++++++++++++++- MdePkg/Include/X64/Nasm.inc | 8 +++++ MdePkg/Library/BaseLib/X64/RmpAdjust.nasm | 40 +++++++++++++++++++++++ 4 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 MdePkg/Library/BaseLib/X64/RmpAdjust.nasm diff --git a/MdePkg/Library/BaseLib/BaseLib.inf b/MdePkg/Library/BaseLib/Ba= seLib.inf index 89a52f72c08a..6ccb8997b7e8 100644 --- a/MdePkg/Library/BaseLib/BaseLib.inf +++ b/MdePkg/Library/BaseLib/BaseLib.inf @@ -319,6 +319,7 @@ [Sources.X64] X64/DisablePaging64.nasm X64/Pvalidate.nasm X64/RdRand.nasm + X64/RmpAdjust.nasm X64/XGetBv.nasm X64/XSetBv.nasm X64/VmgExit.nasm diff --git a/MdePkg/Include/Library/BaseLib.h b/MdePkg/Include/Library/Base= Lib.h index f177034af6a1..04e58f995b9a 100644 --- a/MdePkg/Include/Library/BaseLib.h +++ b/MdePkg/Include/Library/BaseLib.h @@ -4857,9 +4857,43 @@ AsmPvalidate ( IN BOOLEAN Validate, IN PHYSICAL_ADDRESS Address ); + +// +// RDX settings for RMPADJUST +// +#define RMPADJUST_VMPL_MAX 3 +#define RMPADJUST_VMPL_MASK 0xFF +#define RMPADJUST_VMPL_SHIFT 0 +#define RMPADJUST_PERMISSION_MASK_MASK 0xFF +#define RMPADJUST_PERMISSION_MASK_SHIFT 8 +#define RMPADJUST_VMSA_PAGE_BIT BIT16 + +/** + Adjusts the permissions of an SEV-SNP guest page. + + Executes a RMPADJUST instruction with the register state specified by Ra= x, + Rcx and Rdx. Returns Eax. This function is only available x64. + + The instruction is available only when CPUID Fn8000_001F_EAX[SNP]=3D1. + + @param[in] Rax The value to load into RAX before executing the RMPADJ= UST + instruction. + @param[in] Rcx The value to load into RCX before executing the RMPADJ= UST + instruction. + @param[in] Rdx The value to load into RDX before executing the RMPADJ= UST + instruction. + + @return Eax +**/ +UINTN +EFIAPI +AsmRmpAdjust ( + IN UINTN Rax, + IN UINTN Rcx, + IN UINTN Rdx + ); #endif =20 - #if defined (MDE_CPU_IA32) || defined (MDE_CPU_X64) /// /// IA32 and x64 Specific Functions. diff --git a/MdePkg/Include/X64/Nasm.inc b/MdePkg/Include/X64/Nasm.inc index 528bb3385609..cfb14edc9449 100644 --- a/MdePkg/Include/X64/Nasm.inc +++ b/MdePkg/Include/X64/Nasm.inc @@ -41,6 +41,14 @@ DB 0xF2, 0x0F, 0x01, 0xFF %endmacro =20 +; +; Macro for the RMPADJUST instruction, defined in AMD APM volume 3. +; NASM feature request URL: https://bugzilla.nasm.us/show_bug.cgi?id=3D339= 2754 +; +%macro RMPADJUST 0 + DB 0xF3, 0x0F, 0x01, 0xFE +%endmacro + ; NASM provides built-in macros STRUC and ENDSTRUC for structure definitio= n. ; For example, to define a structure called mytype containing a longword, ; a word, a byte and a string of bytes, you might code diff --git a/MdePkg/Library/BaseLib/X64/RmpAdjust.nasm b/MdePkg/Library/Bas= eLib/X64/RmpAdjust.nasm new file mode 100644 index 000000000000..f2c295b67c9c --- /dev/null +++ b/MdePkg/Library/BaseLib/X64/RmpAdjust.nasm @@ -0,0 +1,40 @@ +;-------------------------------------------------------------------------= ---- +; +; Copyright (c) 2021, Advanced Micro Devices, Inc. All rights reserved.
+; SPDX-License-Identifier: BSD-2-Clause-Patent +; +; Module Name: +; +; RmpAdjust.Asm +; +; Abstract: +; +; AsmRmpAdjust function +; +; Notes: +; +;-------------------------------------------------------------------------= ---- + +%include "Nasm.inc" + + SECTION .text + +;-------------------------------------------------------------------------= ---- +; UINTN +; EFIAPI +; AsmRmpAdjust ( +; IN UINTN Rax, +; IN UINTN Rcx, +; IN UINTN Rdx +; ) +;-------------------------------------------------------------------------= ---- +global ASM_PFX(AsmRmpAdjust) +ASM_PFX(AsmRmpAdjust): + mov rax, rcx ; Input Rax is in RCX by calling convention + mov rcx, rdx ; Input Rcx is in RDX by calling convention + mov rdx, r8 ; Input Rdx is in R8 by calling convention + + RMPADJUST + + ; RMPADJUST returns the status in the EAX register. + ret --=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 (#74831): https://edk2.groups.io/g/devel/message/74831 Mute This Topic: https://groups.io/mt/82665188/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74832+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74832+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419956791816.243443665517; Fri, 7 May 2021 13:39:16 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id fErGYY1788612xSNpK1j13oz; Fri, 07 May 2021 13:39:16 -0700 X-Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com []) by mx.groups.io with SMTP id smtpd.web12.16147.1620419954580423372 for ; Fri, 07 May 2021 13:39:15 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FyDNXdiGaFUWulU6Qj00DX96KJxvNUmT0GseQqvIaZPNd3sBBn6/wzqBWO1rothmd2NHXnWeFU2oSwyPAUH8gJqJY8g9MPxNbrVK66UyhCLE+RLB04aL7oIWqZiyjuRUPZRDyagjPw7Yu2gDxNfLaKjzL8yCRlVIDuewKoYsSrFZS88sMoNBN4vzsmLTRl1CrEXjibVuHtH4DzC+04G52BQxM5twAExOkAMCRoNzWS4QjhWtnh+pWHPa6qCHgCNFCR27TiFYBsWLYZKZC45EABhUvTnstVPtTQ7l4g0QP00Q81rGNdi4seyFHimkSu1tQtQzjnc81VRRUaLSSU+YiA== 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=a5LDNPkPybCfl+Jy7a4VeUk/EFwxHswnit1m7bw3mtU=; b=VbNUCeTEH+nx/ojpxFuPQnJxcrSJ1oLy/JmxV86EhKr1SUeI2rOH0Ao8We83EkIwfmVTuRbrxD/TnblEZZ6IHykHekE60yFRFA7WAANxxwJugxNQiqQf7lG+1sY+ipWNBekBECzUQj15+PaqN5yrmX9aJU88Ye0QOO8v1CuyfvBIba5/c/dF8cn1K2GI6u+GQgV9AdvW9EcqedAZCuX5FLey5xF0Y/j0npuUCFM4nWSnKKptl/vJ9MTC2O9O3JotliOBhm5DkP4o0ax66Owj42qfU0bSxTn+hhsze9fOMkuZlMADAoMSwboWoKoEs2K3IGP2x8E+6tLXG+F+fQw1wA== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN6PR12MB2829.namprd12.prod.outlook.com (2603:10b6:805:e8::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:14 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:14 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas Subject: [edk2-devel] [PATCH 09/13] OvmfPkg/BaseMemEncryptSevLib: introduce MemEncryptSevClearMmioPageEncMask() Date: Fri, 7 May 2021 15:38:34 -0500 Message-ID: <20210507203838.23706-10-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:13 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: dc5d5ed6-6c29-4693-78c7-08d911982d37 X-MS-TrafficTypeDiagnostic: SN6PR12MB2829: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6790; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: NxTtj16iiE2+BkofrmzT3fO7m3Sgj11Mr5gIWDnEkgdIkDepbvvjIq8J8r7zavRM+es3eWRIKkZ8Cq71IX5CxW38/JyVcXqm6QDNW4QlXrRySDyX0N1ou3Wcu39WSrr29/b0g8TanFNhqr4IZ0b/A+ZMo0tishDTVAoju1AY2yIxCzFEbBb4eK2xxtb7t5U8IRs9nuUZ2VTmTp3Y7p6s9btNdfAf2AV9z/ig3z4+o/2OAsMQc0P252ll5PB7C9FW/l1dthQ00PihfXbFAe6ikUjSwCIc7KvESVecAQNwIAOXSkeDtYTMm4OWGB925vmQGwFQCgaFywV9xFETTbTaS8TyM20wPqxrVBKWG5s2jujKdmEFQx52qAKwSyIps+yPZGIgocFM3BudSHEWv2zVGchXjxaY1vx+HpjM3brBOTR/Q7iZ2BhGJNvumsjioPVXw8ZiV1ZOR89HidZ/VMu/QkwndZ4CDxUml56anFCTYdcLHsO4nlqh/TEqmaMO58VblruYji4164xQnYF1rEfVT8Xth7z1Tx6Ti2I185fc7auLlnrdz4w+zi2aCa5Sf6nQUxttiqYazZ4qUZDwsYbMOEjQps5YJbH4BoWEplHUU5UWb9ePxXwA1UKlu/ADiYsh8a8kSiqtA1VSBD4NNzJVcQIHCm5RjlNtyD/IcciR2xKLNoqSwojUTyPanilXKGxRqi6vHZRf6enn9cdtT1ozprYRJ8QdbGuDBzkM7xGepUjKjQD6zl1PRITM4DUUvoGv X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?gWmM2r1Hju7l7SAscmIao1xARMiOoj+QtSXWEIHRQp2MqhqT8RA04zPXZPlv?= =?us-ascii?Q?NOJTSL9Prz0hKiOSTLyW5PkjeNQSVygh9cAvW15S2QNC1iCXJy/WeD5TpYlG?= =?us-ascii?Q?REiaD2/zrQY86Y6ZrfjEu12NDg5JOZDOoI0Xus8hKRRJtZPYGAHxMFJYbVBc?= =?us-ascii?Q?zcw9dVRGfgl7mvJ19S7b7HEOO0hR4q1VItYVxhJwapZ15nxTsM21ddxLFP4K?= =?us-ascii?Q?tVqV+WWxHm53xOkBHV3kYWlVe1HI7uz8Eh6my1f2dELrxsQ/jOaQTIopiwYY?= =?us-ascii?Q?gBgVXU5FwubLIX0hKwKcQ+SGCVUGaT4a5WJi6UrZpxPdRBwzsbjeIEeseK57?= =?us-ascii?Q?m8/JNJ2P5mhBikFaYqakLscyVvtTunqm+d0OnRvMhZMWpBSyToXUTuJp9Hug?= =?us-ascii?Q?zclOMqY5sJdaCkKseK1eYGJ6GLqMdQghf24+pqvwv+Z4P702uWTT3WcCj9GO?= =?us-ascii?Q?bPyiKQXPcgW9wPFqkMIxG+cE2U7YibaUlGpR/xs52uyTFKNJTNuLOK+GtfCf?= =?us-ascii?Q?hOA1HzHdrJHrwH25zYyF/hlpQYnHPMPMZetgP7t/k/DPjU3xURivLXQEV+YT?= =?us-ascii?Q?TPpsusRKF4GNQn7kJVyrfdG5lmYoILydXOQ+CFzTk5fmMM5o9SGyqCqvTka/?= =?us-ascii?Q?XNIgICEQioRuC7f6nFyo4pzyuHvMwJdoTAHKQLbnXLlGFtTvhydrYhfaUqXC?= =?us-ascii?Q?jyrt78DzKgzhX33s3j1vJrvzqF4E0w4MBubPFNgLlZfTWtJuxX6MGrO87Kvx?= =?us-ascii?Q?ygHRaD49VsCGu65g/DAe+qocHXMyvF8hEI956P5yP8w3QygRPpTYzPMbn4Av?= =?us-ascii?Q?FF+m3mFG56dF4vvZ8BojOGa1R9vS4LPh5LLlea1eMnQbNdeLoxWyrb2lWwGV?= =?us-ascii?Q?JBM+rrQrYXi9OH4Ivgd2hz4+dhjrb0Yf61fSilwIzc5RSpNx0lEt6C6c908c?= =?us-ascii?Q?Xyqi2BGzj+ZnrnF8X5gM3gNKzU0fBtcUY7ZSO3OKoTOFdc0+4P9v7yf4iN9E?= =?us-ascii?Q?Mjjn3s3Qi/Y4MOCJqW3QJfZFUMwN084W7T1CWRSHrjR6qo0ZPeXcafy0mo8z?= =?us-ascii?Q?MvTBenISEcOfuTTFL+w25cFx+yoXl5qlYXrh24gWZ1CCD3WbQney2jWiV37f?= =?us-ascii?Q?9/vCMn9g4ceSYriWt4CYb2ob27rkDQEDS73E76V+77pCgibEYDsY67SQgwPA?= =?us-ascii?Q?jQVyJcWhSOd5Oane0aWh/uYIBBc45XDeZFPq1Me8w66bOvd0PvenKOu83yLq?= =?us-ascii?Q?fLJ9iZEZJLvrKQlUefquzZCjsf3p4eb51o7eIxpV8j9/4JcXmUW5eNhbrucq?= =?us-ascii?Q?lU2cQ9FROWoKDwY0zSqFwGLM?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: dc5d5ed6-6c29-4693-78c7-08d911982d37 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:14.2516 (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: NnWVgKyyRSXsjcK5gk10ISWBOUSnb5VcBNtVjXuoSqr599C1DP8oGapvuDGA5NreRDPCv2AYa5KTvBI/vOzGdQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2829 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,brijesh.singh@amd.com X-Gm-Message-State: wwoKo8eAVhlICWCqK1cNTvkxx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419956; bh=FrntmBE+cLKmxOc13/qfUv5GKDE0f4u4cJ5iA6XcIfk=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=RDTiTVAAjXi609IHjeiHc7ABEUL4lrjbuYxScsMsetBiCLaMlhLr7HRvkx+BpgBDY6r leKpB/s66yEB6Li4N44ErIfNLL2wTW6dUZLaG9z8ddSkjPHlM6gfLkG2x//4i8J9BxWkg OP0KcU5qsYjwNJtOcxqDywWLwRV1qDDO+Ds= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 The MemEncryptSevClearMmioPageEncMask() helper can be used for clearing the memory encryption mask for the Mmio region. The MemEncryptSevClearMmioPageEncMask() is a simplifies version of MemEncryptSevClearPageEncMask() -- it does not flush the caches after clearing the page encryption mask. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- OvmfPkg/Include/Library/MemEncryptSevLib.h | 25 ++++++++++++++ .../BaseMemEncryptSevLib/X64/VirtualMemory.h | 23 +++++++++++++ .../Ia32/MemEncryptSevLib.c | 31 +++++++++++++++++ .../X64/MemEncryptSevLib.c | 33 +++++++++++++++++++ .../X64/PeiDxeVirtualMemory.c | 33 +++++++++++++++++++ 5 files changed, 145 insertions(+) diff --git a/OvmfPkg/Include/Library/MemEncryptSevLib.h b/OvmfPkg/Include/L= ibrary/MemEncryptSevLib.h index 99f15a7d1271..b91490d5d44d 100644 --- a/OvmfPkg/Include/Library/MemEncryptSevLib.h +++ b/OvmfPkg/Include/Library/MemEncryptSevLib.h @@ -203,4 +203,29 @@ MemEncryptSevGetAddressRangeState ( IN UINTN Length ); =20 +/** + This function clears memory encryption bit for the MMIO region specified= by + BaseAddress and NumPages. + + @param[in] Cr3BaseAddress Cr3 Base Address (if zero then use + current CR3) + @param[in] BaseAddress The physical address that is the sta= rt + address of a MMIO region. + @param[in] NumPages The number of pages from start memory + region. + + @retval RETURN_SUCCESS The attributes were cleared for the + memory region. + @retval RETURN_INVALID_PARAMETER Number of pages is zero. + @retval RETURN_UNSUPPORTED Clearing the memory encryption attri= bute + is not supported +**/ +RETURN_STATUS +EFIAPI +MemEncryptSevClearMmioPageEncMask ( + IN PHYSICAL_ADDRESS Cr3BaseAddress, + IN PHYSICAL_ADDRESS BaseAddress, + IN UINTN NumPages + ); + #endif // _MEM_ENCRYPT_SEV_LIB_H_ diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/Ovm= fPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h index fe2a0b2826cd..8dc39e647b90 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h @@ -126,4 +126,27 @@ InternalMemEncryptSevGetAddressRangeState ( IN UINTN Length ); =20 +/** + This function clears memory encryption bit for the MMIO region specified= by + PhysicalAddress and Length. + + @param[in] Cr3BaseAddress Cr3 Base Address (if zero then use + current CR3) + @param[in] PhysicalAddress The physical address that is the sta= rt + address of a MMIO region. + @param[in] Length The length of memory region + + @retval RETURN_SUCCESS The attributes were cleared for the + memory region. + @retval RETURN_INVALID_PARAMETER Length is zero. + @retval RETURN_UNSUPPORTED Clearing the memory encyrption attri= bute + is not supported +**/ +RETURN_STATUS +EFIAPI +InternalMemEncryptSevClearMmioPageEncMask ( + IN PHYSICAL_ADDRESS Cr3BaseAddress, + IN PHYSICAL_ADDRESS PhysicalAddress, + IN UINTN Length + ); #endif diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c b= /OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c index 12a5bf495bd7..169d3118e44f 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c @@ -111,3 +111,34 @@ MemEncryptSevGetAddressRangeState ( // return MemEncryptSevAddressRangeEncrypted; } + +/** + This function clears memory encryption bit for the MMIO region specified= by + BaseAddress and NumPages. + + @param[in] Cr3BaseAddress Cr3 Base Address (if zero then use + current CR3) + @param[in] BaseAddress The physical address that is the sta= rt + address of a MMIO region. + @param[in] NumPages The number of pages from start memory + region. + + @retval RETURN_SUCCESS The attributes were cleared for the + memory region. + @retval RETURN_INVALID_PARAMETER Number of pages is zero. + @retval RETURN_UNSUPPORTED Clearing the memory encryption attri= bute + is not supported +**/ +RETURN_STATUS +EFIAPI +MemEncryptSevClearMmioPageEncMask ( + IN PHYSICAL_ADDRESS Cr3BaseAddress, + IN PHYSICAL_ADDRESS BaseAddress, + IN UINTN NumPages + ) +{ + // + // Memory encryption bit is not accessible in 32-bit mode + // + return RETURN_UNSUPPORTED; +} diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c b/= OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c index 4fea6a6be0ac..a2bf698bcde7 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c @@ -118,3 +118,36 @@ MemEncryptSevGetAddressRangeState ( Length ); } + +/** + This function clears memory encryption bit for the mmio region specified= by + BaseAddress and NumPages. + + @param[in] Cr3BaseAddress Cr3 Base Address (if zero then use + current CR3) + @param[in] BaseAddress The physical address that is the sta= rt + address of a mmio region. + @param[in] NumPages The number of pages from start memory + region. + + @retval RETURN_SUCCESS The attributes were cleared for the + memory region. + @retval RETURN_INVALID_PARAMETER Number of pages is zero. + @retval RETURN_UNSUPPORTED Clearing the memory encryption attri= bute + is not supported +**/ +RETURN_STATUS +EFIAPI +MemEncryptSevClearMmioPageEncMask ( + IN PHYSICAL_ADDRESS Cr3BaseAddress, + IN PHYSICAL_ADDRESS BaseAddress, + IN UINTN NumPages + ) +{ + return InternalMemEncryptSevClearMmioPageEncMask ( + Cr3BaseAddress, + BaseAddress, + EFI_PAGES_TO_SIZE (NumPages) + ); + +} diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c= b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c index d3455e812bd1..a18d336a8789 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c @@ -891,3 +891,36 @@ InternalMemEncryptSevSetMemoryEncrypted ( Flush ); } + +/** + This function clears memory encryption bit for the MMIO region specified= by + PhysicalAddress and Length. + + @param[in] Cr3BaseAddress Cr3 Base Address (if zero then use + current CR3) + @param[in] PhysicalAddress The physical address that is the sta= rt + address of a MMIO region. + @param[in] Length The length of memory region + + @retval RETURN_SUCCESS The attributes were cleared for the + memory region. + @retval RETURN_INVALID_PARAMETER Length is zero. + @retval RETURN_UNSUPPORTED Clearing the memory encyrption attri= bute + is not supported +**/ +RETURN_STATUS +EFIAPI +InternalMemEncryptSevClearMmioPageEncMask ( + IN PHYSICAL_ADDRESS Cr3BaseAddress, + IN PHYSICAL_ADDRESS PhysicalAddress, + IN UINTN Length + ) +{ + return SetMemoryEncDec ( + Cr3BaseAddress, + PhysicalAddress, + Length, + ClearCBit, + FALSE + ); +} --=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 (#74832): https://edk2.groups.io/g/devel/message/74832 Mute This Topic: https://groups.io/mt/82665189/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74833+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74833+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419963658421.6438286716401; Fri, 7 May 2021 13:39:23 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id rupvYY1788612x4za62uKUGA; Fri, 07 May 2021 13:39:23 -0700 X-Received: from NAM02-SN1-obe.outbound.protection.outlook.com (NAM02-SN1-obe.outbound.protection.outlook.com [40.107.77.85]) by mx.groups.io with SMTP id smtpd.web12.16149.1620419956704136651 for ; Fri, 07 May 2021 13:39:16 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Z5LQWO/ez0ji05dtRVKTOxWzUwFrwVBUo8WraLyUHwy4e4Gl/eQdluFjEojibxo3kBlDduM/D7LF4iQJcuGUZffGLaXOsbCjwK1mEhaa4gIJhLxWMaJR/7kaAptcTcl7eOArJfBtlo+rrsAB/45p3XqgJwvyt219bGw1e6CUXlfTBF3Hs/unvQV1HWtXaeDQX69x8tnNH6l4FJyOOtNs8U2KrwSzA1lh0DdLcL8cjHy9LIFIw3tju4u2638EKVtzayvFYY5IDa2jN00sdSDAOkfAXK1gDJusZ2wb96+nuigMBhrtYkrd26XN1wXD8djiTNr8O/wE/E1qsdItqZk6FQ== 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=ZNBSNu801ETdcnbLldO/TL7s9c82ULUThKZlujLAFNs=; b=UGMknZn2vFNRzjylPEzCHBzmbjNUbKkxZp2yaOf8mbsPHV1mvX53DSCCFPD3tZdz9FpPjkHprit1QJOy507+OLWGREmIFE7JdfeZ//K9x6Rhz/00mv1TesndVRzWZQlGSGhi0/ROH0JWuCMRY4E/cgtsgJRa4J+FlzIvnY8Sqe0sS/K43rFJSxD6eM1sEdLilSF21gBp+r3WGeIy+LE9bxYmxpzVq4Cb3djZOGYaC73qzKYNzusnW9pPimlpWgazSthgV8cFluIwZh9EHnOTwaJhNpKLCHaCIrU/nRsX3oueVSI5rtdeZFsFYFrELTtIv8t5BGoObzCISEe0vJjEhw== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN1PR12MB2367.namprd12.prod.outlook.com (2603:10b6:802:26::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:15 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:15 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas Subject: [edk2-devel] [PATCH 10/13] OvmfPkg/AmdSevDxe: use MemEncryptSevClearMmioPageEncMask() to clear EncMask Date: Fri, 7 May 2021 15:38:35 -0500 Message-ID: <20210507203838.23706-11-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:14 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9ed78b68-6739-4e1b-a1cb-08d911982d96 X-MS-TrafficTypeDiagnostic: SN1PR12MB2367: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6430; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: h6rs9i8+45NTEmGbdCKu5xBS0PaDa/VjSe1GPtMefWZ/45DwYIoZUVpEwHVwlMVwVcWiRUYpH1J+lXeBOurIkORIuo5+Tr0MxesfS0bxlQojfqke/ZIZCwK04WYK2C3YGWcqn5tlKFrpa8rd0pDqPGMhLRTpEEX+Q3VXCuDGS39SZh3TiIcq00JO9UsR1zVlm6u1y1E/rkeG4dMs97Ge58kjm7OhS7faP+5nJwaKgSr6kptvDKdOyNaOnNL77sHjfy8/cjYy60u2ICochSFxuQOdHhqElKikmjh7AzAUlRtnHf0ccWNenwoT/+8Ydgt3wveZ3bfEu0eIKaQt+YtF0lMP2tK5jG3u7I+CLTHu7wIxNnD7G9BVVK/Dq4APpmanKKGawffVXoIQvo+tQW8bVM7sIGgcDXvtaoxdz4UpIIIK0bV9VnxAUjSoCs55OkC5/kcSsrWgBSEM3p/LifT2M7kF8iXiGj13a5DLS281S80CikZqisB3XhusUdvc1mKkQ2BJOc5KIhH2U2zmdOb4rDa+b8bxgIQ9LjhUn7X1Thoa/Ra/wo1xswdOSbppgeWqsXHE3aRs9tlg4XTxCzX3SXnzj095r9YOs4p+gV4bX1gsFQg1D0ZM4Gjg6rbdqR23IB8CGHqdPqngYYMpWlTZ0YAGGeKZdn+ZqfDdunOo61MbqhWGr11fpYKkCZJDJ9CzdkR2Pf1ynSkl4T7oOizcF5hO/n18Kzp21toAZYWzI1MDvK7GUXDfEvp9ioOCDayE X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?G3ybYt8Ur9I6NrcwNDo1q/xVZjCxN/SWf8rwiuMyOc/ihWgeKd/8ghabjXKl?= =?us-ascii?Q?zP1QPUKo+bZ3Gvb2uuchwmt8wQgL8ItP+owUipQbRuh206UyDRkQXecw05vk?= =?us-ascii?Q?Q2n7GH68uOs67y3yf++cBfoAPVPdg1sKBEuV/N4MVb44s4g756VaJeGoDha8?= =?us-ascii?Q?wenDChYjdWIWzJSuHVrsmrhfOUC5AOz+8Ggly6AkafyJnu9lLD5FztMeNdbk?= =?us-ascii?Q?ZmnNdsu1OSgdSsh9+iNJ9hZC6LeR+kfxZkN2kYXrp0tdjI3vbL9mBrrBf5hh?= =?us-ascii?Q?5Z0AFks4G90HzXFHsvtA4jQbu69y9AgvkO2o3DFo6zfIgOxP2n7TBuNi2hlr?= =?us-ascii?Q?ZV5Pa1KeB9Hd5J5I83+bDIQhxVPtmsKdLl/cu8pIGCOHU1WQfX3qeIr1Na+h?= =?us-ascii?Q?KgAV3g082i3MHnp1YNH5kuKmutJJofnKcKUwvX6x/lFgl0aC6BNNE/rJWrDB?= =?us-ascii?Q?jwnoJ6mMfNvXGWRYPn/m3qrK05d7Y+I/yNVhypz4bBzNxpN4qNVPsa5xAFkX?= =?us-ascii?Q?y0IEktEsuYPXObBnU12+Fx3uGiSR6M1TgBoiT1xYxsomt7pCN+UFkJ9G7Bbl?= =?us-ascii?Q?fdtdDxFH3upy9XBxWSFc+/9HYVgKjrd2RiqMwJRytRS4I2ezv5VHV5z9ldch?= =?us-ascii?Q?Q1Pmc+fWEwYub7VKpCLr/T9hsaduJoGgqVajvGcsVaVJ3W6rPWM3L7K8YUZZ?= =?us-ascii?Q?GlgM4nV+gRYere2RU06vGyJSdBAHu8IJF4v55aiQOMkyk4oLD9afUeRBLR/h?= =?us-ascii?Q?l/U+z3BpzgDpJE4AOFDy85YM69mgZDq6OkYcLcCpIf3Rj6c9pAF7Y6D8nTjM?= =?us-ascii?Q?CiB3jkmfbMQtvem27mx1sQiBd+rdLe/qk0EIHhg2L3Z3MMu70wSVSkRBZPzN?= =?us-ascii?Q?9+bq4M3QgE7WfEuGepBYu6qNus/WBNT4AREBYVdR2WeYoIEt92unvt4vOyJA?= =?us-ascii?Q?HgygLMuKGlyIFe/rRlIQ1q0r8Hhu4qVa+cmPyNLgq934aWVRFwZbuUdZDVsC?= =?us-ascii?Q?mfJCHifuNv1l3pTe1oQTMbweHQ8h9dEhHdbwfmeRCDtNPUEDMqi2y8BiMtAO?= =?us-ascii?Q?OuynbAyhmMG2ZRcYjBiHF7wttt1Hbt06XyFJU7tvcU+ORGLFrCTfCpLMd3U8?= =?us-ascii?Q?Ue4Bt7RTbhb89pY22IKoh4l40pbNknTwhZQSfUCHIvpFPglZdyen3qQrqxUr?= =?us-ascii?Q?O4HMDtuoLpTsveFUaFhRgW6DQdfJgitbz4BgRSZCkOSgXu6wwTvcccgfaigZ?= =?us-ascii?Q?5Pp/XS+DuUQuxRwWfCoVkGoY4/6uPogy5aoihbPYtXwVV4xfoipmDMlmGSQQ?= =?us-ascii?Q?JJ4yAbIJKS76oJSzP8Aco7gp?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9ed78b68-6739-4e1b-a1cb-08d911982d96 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:14.8942 (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: +rl4ni74W6sgOSJkdwg/rpL1IsgWXTrpw+kgHqXq5pcySZ0dOklspSE/zLwdGdJTVXdpaX8vjainYsmU1bHTbg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB2367 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,brijesh.singh@amd.com X-Gm-Message-State: Era2GgGfRlr04IbfQWyfjN8Nx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419963; bh=oSDEoxB3i+y6R6jueAedxvq1xRF8e0351UliA9aFRSM=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=Pc89aFOSHLmyOYeTD6DIgi/ssFo71iqeCQGekHOwlBSDY1nvza5WOki5eY7jSGB05kJ wwT7Cx+fI8OnyHZB+rUT5FqgTuTN/rU+3XxreWSDw0vANywVwX38BuwF7ye1iWsWzBoNn zWCAsr1Mxi5f7DM7NXqsKdETdJEMYQY/qp8= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 Use the MemEncryptSevClearMmioPageEncMask() to clear memory encryption mask for the Mmio and NonExistent address range. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- OvmfPkg/AmdSevDxe/AmdSevDxe.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/OvmfPkg/AmdSevDxe/AmdSevDxe.c b/OvmfPkg/AmdSevDxe/AmdSevDxe.c index 689bfb376d03..80831b81facf 100644 --- a/OvmfPkg/AmdSevDxe/AmdSevDxe.c +++ b/OvmfPkg/AmdSevDxe/AmdSevDxe.c @@ -53,11 +53,10 @@ AmdSevDxeEntryPoint ( Desc =3D &AllDescMap[Index]; if (Desc->GcdMemoryType =3D=3D EfiGcdMemoryTypeMemoryMappedIo || Desc->GcdMemoryType =3D=3D EfiGcdMemoryTypeNonExistent) { - Status =3D MemEncryptSevClearPageEncMask ( + Status =3D MemEncryptSevClearMmioPageEncMask ( 0, Desc->BaseAddress, - EFI_SIZE_TO_PAGES (Desc->Length), - FALSE + EFI_SIZE_TO_PAGES (Desc->Length) ); ASSERT_EFI_ERROR (Status); } @@ -73,11 +72,10 @@ AmdSevDxeEntryPoint ( // the range. // if (PcdGet16 (PcdOvmfHostBridgePciDevId) =3D=3D INTEL_Q35_MCH_DEVICE_ID)= { - Status =3D MemEncryptSevClearPageEncMask ( + Status =3D MemEncryptSevClearMmioPageEncMask ( 0, FixedPcdGet64 (PcdPciExpressBaseAddress), - EFI_SIZE_TO_PAGES (SIZE_256MB), - FALSE + EFI_SIZE_TO_PAGES (SIZE_256MB) ); =20 ASSERT_EFI_ERROR (Status); --=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 (#74833): https://edk2.groups.io/g/devel/message/74833 Mute This Topic: https://groups.io/mt/82665191/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74834+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74834+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 162041997402259.57086180779788; Fri, 7 May 2021 13:39:34 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id bsrlYY1788612xd9MDN9fZg0; Fri, 07 May 2021 13:39:33 -0700 X-Received: from NAM02-SN1-obe.outbound.protection.outlook.com (NAM02-SN1-obe.outbound.protection.outlook.com [40.107.77.41]) by mx.groups.io with SMTP id smtpd.web12.16151.1620419957740516945 for ; Fri, 07 May 2021 13:39:17 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FhpRiYfUkpc7XdLga8zSZUSqcga82yAkQqJdXCW8S2AA4G7TyEHDhwUPsGd+C8mkGjWPfsCW48TA6TEsu8xdIr31TL1kIM1dynIkmJRDy131FOzlA5aVbOrE6SeriUQoFwsfCkOn0UXjm8LcG6CYb4eSXK1JHNfsKSZQ9x5oYndmjaZYF67Cgce0gBZs06xIkdALepGobRNMMkgZigm1hQnl+YwDezo8eQfdd6hvFp0c8k/MIc1sB3HuV4tSVYP7GYzH8MV5/M9Ee7heWnHkRiEuRpgIp7udJAqSYFjBAWEX5TkVE7uhGiJhQoPVxi0yYJM+phaXRaMTNdvMBzx5fg== 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=+5IySms+wGrCGNxp2UY6bY9E4ANuSarA135eH3Hqaaw=; b=GML2OQFWUq/2wF99j9idRVeZmKJGUDbWrmnJPWlkkcAdBaIz0De+lgLnLJ8KxszQfMttKK+PcN+qsoFYa4wmARe5V/cmZK6Rn7HJDrCp8IcHvl+P9dvuiLk+XSUbb/0yVWEjUVBvS/hPLIu4OWR+sZ2OS1ElI4ZcMhmb8PJNnAdH4BYQEc+UkBL+ylCg0n5/7N9KWQWeqQKHQGE8aRDoa27IDykUZKc34ttvhtnhXQnIhk9MjwuLYCPo9XbjO4CYaYJkp3auURHVnwXRUrOtjo+k5di9qCkffGa1/z+neGLJMpogYsIxdHMPNUAyBbLNjfFai4JZltxx5xR97p6LIA== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN1PR12MB2367.namprd12.prod.outlook.com (2603:10b6:802:26::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:15 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:15 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas Subject: [edk2-devel] [PATCH 11/13] OvmfPkg/QemuFlashFvbServicesRuntimeDxe: use Mmio helper to clear enc mask Date: Fri, 7 May 2021 15:38:36 -0500 Message-ID: <20210507203838.23706-12-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:15 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: aa02b0a6-31ea-4f06-a7a1-08d911982dfc X-MS-TrafficTypeDiagnostic: SN1PR12MB2367: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:7219; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: CKZdkCy7u3muWcdJif/GruS4tJnH48DSKRlljua5ML1QwsyqPaFTMgaW2E89IWLz1tIXCBlSGiQicn9Q2W3aBjxumY/2ia5W6zzo3kEoIQgZR5p4rV1PgF7nkA0RL79gvH9nDBGI0miCrtWLjJLZk+9wINbL6+wtIQH2esyiB0ReyKgK3lMsPa12RANDgHaLZvQ9RNESgK1AutTcv62wkYzNVCVSDWmgtIX6NRqRuweZqgK8zsa5NXhXH/U6yAoEqqiX5CpDk4LP7V4JtcXkQUXrBgB1qJzkNVfoS51RuzxX5BTJH45ANYezImhPv3chxylRE3iFzy9XKMazgpDoQEvcMiVB4cLTfcvxbE0sdnghPovZPZYiKpn26zif0O8Mq4LdSsAA9TAxC8Vh6wLr/mb9jB+waHUmlVh3MrPf1VeKSXuia4qT+zxNXP+SNsh5/QHhYjFmD3xppGz0B+2k7A84vzw2PZi0UCZ/gKuT2QNuW+ukjf4OsAhVpHpVFCQMdtxL+HbP7FGJsbmeCCcd241WbxSFDSTsijSnLlInJ1ha5qZGQ/udYb1QC/By58WOZnPsiq/3ZdQ7M196F5kWdVl5vPWWo57CPVrDwkYg1cUN5YOG2pjNfdQzWDpin1tsH73+FftIKFOA/vvcdGmEkig5E/gvNZsfx4R8zGhRRdg9RccWjOazm9szJ0LDDsXteKUAjV7F+yhQ1hMNzsORtap6819NEB9b7OvomHt9m1zxn4C1DM3fbPMX/1HEa9Y4 X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?aDiE5ca8X9AR+7VxVUOPbfCMP4SrvPSLbOFA5dcoKj54fkbHmu7jUPEE5k+u?= =?us-ascii?Q?/qWT5FSLtEydeGgcu+BMTVW/nPJ2EJhafx+p7WlkhD7W1KWBE7imH7OL5Ho7?= =?us-ascii?Q?zh4DhKU2aWqYMe0zM+rLq4L24cnegUrLYzZ1KsM7XiCUxtvjQ1WWwqmMB00s?= =?us-ascii?Q?3HZdJjWkRbP43W1yPrtwXouqfdaBut9rmepc/9liR11e58xcwVEXQpLAQu8s?= =?us-ascii?Q?hIOLo/iID6WCNPfd0fkyXFKW2P3XMsxqPBsvAi5XvOSTDrhq6mZU/4HNM8n/?= =?us-ascii?Q?nrwA+Jh/Xlt/Je30itRUGtS6gUfqxn/OP9TcEL5ktSLOyHsyP7CSKyEjh0cO?= =?us-ascii?Q?wYlHq15KwkPu4K1pFyewJOUJ3KaeGu42pzDv/AzAPqZCYxWb6T77JYXxH8MH?= =?us-ascii?Q?S6hlz3qqOsf+ct2did1smfBXxARqHNCa4/y2uLmcjA9UuZ0JokxMq8kHuZMk?= =?us-ascii?Q?0TzqIuBcz8kvY0IFKnSfkdw01eQgrTMmkOFTMt80PyHhdml73vXuuXb3BLxX?= =?us-ascii?Q?MzJFptwTfH4evObcwomyKFQiMibpqERFovGy5V7xXbc4wUO8qCCfqPAiENBV?= =?us-ascii?Q?Ojd97fwTL6y1RL4t3NUWx1v65l4WfbLvTXR2GRK0/7QKzu0PSef90WAFzHK8?= =?us-ascii?Q?njf5gbTbeqDPOB+3v0+wjzZid6+b9H6lmf8jpiyQargcCjn/UXMP05kMeo6A?= =?us-ascii?Q?Zt5oUB7E9wNQvUVnxi2cviun/QWqclhhd/d6eBJgpjEJmOvm9lPJLcOnsmYK?= =?us-ascii?Q?iW1V6Ygew6KZVGwzmRRPd/u/RVH/xqxvWxgjIK8eqm0SG8BuNIdYp6eKdWyZ?= =?us-ascii?Q?WvGThxVGm0PZIi+0xiby8VsM79VyV5Ypd0HwGpEj7cySJXX2mtHZcGR+V77I?= =?us-ascii?Q?2ez6g+XgWulTJsv51OeITdIITzsdFgKmWw9eLd7YxfLb3KHDzxfYeNo2OBb9?= =?us-ascii?Q?sSJrmp3OKoPtsh6kvFNI5Tl1OXUww3wX8vVetISI/vJknuPhczuno3/iZXgb?= =?us-ascii?Q?KYEbTKYSC1X2HPMXT09ptqru3hVUcCFp+MnvwppiCdhKZOSRJPJvc7SiawGx?= =?us-ascii?Q?PUANTSNJwqXfbCGDmhh/jiVeJJN0JnY70XQEpuO+jH5zhVlM4olFD9rCccrK?= =?us-ascii?Q?FYDUwqDyloDVosE3smZ+6ljCn9FlZJiugktPyn0NurKC5r8KrhvzOs/khsqA?= =?us-ascii?Q?xfReOub0P6ITVED7PbBGEL4fO1ulKtY4zs5AUh0/eQDt0EFhVpm9NYWLZl71?= =?us-ascii?Q?pdk6wSXTsMFp30nxtaTxGUM9hpuGVDRMUfSZYsXI1VO6Bxb+7abd09XGKZhK?= =?us-ascii?Q?OC/oteYK2ZnJOIH6YqrAcNm2?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: aa02b0a6-31ea-4f06-a7a1-08d911982dfc X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:15.6268 (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: zkDz7SwCyEVdQXPvTVEC8VYOKUeCnoe6ctvw/fxKTGLNUYL5iJ8GPPGMNOpHNi8V9sr1EhKxUZq3ckpk+OJrRA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB2367 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,brijesh.singh@amd.com X-Gm-Message-State: 2BI0J96erG9jDmYntwhwUav2x1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419973; bh=A4ia0TmTRM6UlbsFcfvG0x4EW+7KvsCy+w63pqPYmN4=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=sqQkaRZ5rq3llAYp8JdW8TjtcVX0bXAcA7Bc0iOjzMwSlUfb5L/qEChA5BQn0xE7Dx2 rPq75KGs4ztjntuTm05LqHi5VS4egQioIZ3HnlSZgoJDoUiJGLi9qUwdzslGFAyG7J0HL a1ULKpLb71Fcl6PiFm3T3Z6hwxXi16OLNho= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 Use the MemEncryptSevClearMmioPageEncMask() to clear memory encryption mask for the Mmio address range. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceDxe.c | 5 ++--- OvmfPkg/QemuFlashFvbServicesRuntimeDxe/QemuFlashSmm.c | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceDxe.c b/O= vmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceDxe.c index 1f285e008372..ab40087a8408 100644 --- a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceDxe.c +++ b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceDxe.c @@ -205,11 +205,10 @@ MarkIoMemoryRangeForRuntimeAccess ( // memory range. // if (MemEncryptSevIsEnabled ()) { - Status =3D MemEncryptSevClearPageEncMask ( + Status =3D MemEncryptSevClearMmioPageEncMask ( 0, BaseAddress, - EFI_SIZE_TO_PAGES (Length), - FALSE + EFI_SIZE_TO_PAGES (Length) ); ASSERT_EFI_ERROR (Status); } diff --git a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/QemuFlashSmm.c b/OvmfPk= g/QemuFlashFvbServicesRuntimeDxe/QemuFlashSmm.c index 7eb80bfeffae..ea75b489c7fd 100644 --- a/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/QemuFlashSmm.c +++ b/OvmfPkg/QemuFlashFvbServicesRuntimeDxe/QemuFlashSmm.c @@ -38,11 +38,10 @@ QemuFlashBeforeProbe ( // C-bit on flash ranges from SMM page table. // =20 - Status =3D MemEncryptSevClearPageEncMask ( + Status =3D MemEncryptSevClearMmioPageEncMask ( 0, BaseAddress, - EFI_SIZE_TO_PAGES (FdBlockSize * FdBlockCount), - FALSE + EFI_SIZE_TO_PAGES (FdBlockSize * FdBlockCount) ); ASSERT_EFI_ERROR (Status); } --=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 (#74834): https://edk2.groups.io/g/devel/message/74834 Mute This Topic: https://groups.io/mt/82665194/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74835+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74835+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419971143589.8831282698667; Fri, 7 May 2021 13:39:31 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id zpSgYY1788612xUiDbbQgCkS; Fri, 07 May 2021 13:39:25 -0700 X-Received: from NAM02-SN1-obe.outbound.protection.outlook.com (NAM02-SN1-obe.outbound.protection.outlook.com [40.107.77.40]) by mx.groups.io with SMTP id smtpd.web11.16081.1620419958521088408 for ; Fri, 07 May 2021 13:39:18 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RabQEdwkSQKdxCPIMLjhWT9mu2PrkbsqvfBeONUozSWsysDCZYSmul01yPXVmx/GDEk6X4ajTT5RU9Unq1iEaD2sXswRuhvB+pes+O0d9yU9uUk/haoRoii1ZtEvbUmmy5jZsZX+0+DKLE/ZSbpPJqxnIttZfGk1Pyjx4M1OhC2Xe0KxqqBWx/bt+zgA1EC8m6cQu/BbOxenm3/AsWuf6V8DMT9VZlBIJuiSH3EkM1G2bjurxWzSmDNblLQwocLO+mfUKykfYQvo3njWX36UfW3pWFYl9EgUbwArn7Jht119Taj4Zx63L0mmOF+M3xX7cY6Ef89o8bubqdDxWHHzmA== 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=GtW3RedXPeCtA5WSSk77MwXTbXKsRInOMdsQarUg2bI=; b=DNHvbzrqdt9fOqi/x6GCUTKPvkYIpLN8ggvDCfwdm0gDcbB3hYAtlqbxohsQjtcSgbknIHyfnl/abM/CusLBcqVlGmNe3474a9lewpSqcO+uFM3SZ8OoJtDQXpCAsiJ2Dxjn+kbEoPXpZU/kSx9qrNxIFU+YFFzuPrrICI4navFfzcZVonYnweglxdnP0H0JSuYBXieVAyC3d2FCTH1pscAbuaU+N0LeEZC5jEFNJPofYjsG6a3FejgNZACaWT3TdaVaFzR3fcVY+o8z5id7SfjPQoPsmRsS3NViy8LMAeMqRMOVUH9SjOpAh1CSS75xHqJ5oWUhZE9V9qB+dr/PFw== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN1PR12MB2367.namprd12.prod.outlook.com (2603:10b6:802:26::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:16 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:16 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas Subject: [edk2-devel] [PATCH 12/13] OvmfPkg/TpmMmioSevDecryptPei: use MemEncryptSevClearMmioPageEncMask() Date: Fri, 7 May 2021 15:38:37 -0500 Message-ID: <20210507203838.23706-13-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:15 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9782a28e-7a93-4dda-28fa-08d911982e83 X-MS-TrafficTypeDiagnostic: SN1PR12MB2367: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:4502; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: NH/aEIGR/F/Bva++eaoeSjQwFvt4SBRzUZIxMyp82IeYY5nUFbL2xUUxOWeFCs4HW+Iiyrg70JJhkXkw08Futd9hyts75wRbZjeKK7TUGa4MXAbdeSs78kDE7tOLvQsv1FNr1yg7/rqHE9aN6dB6k88yhsFGpY/WZP7QCHFqtEkeYvwsTxbL+KIPRumNvn+Nc8BChRUqz5fHGboH/awhBP2hqRcaavbfEKdHcr4v45xaZ+b5nGdp87me/ENkKCRsStvUfCxtCsakMIWq8rQKPgu2arNS5WQBTCyaoRArkfnQYBvgAMzTNHIaSPoLKPVudZwpnM/n/yaWI6sTgbblqikWHTRKApRiDQk5JmKWO+Gj5E4ZsDRw8+zcTrK932c/LiB0mMfbhLlXQiAfzNQ70JS8M1+AanJIvt4rvRSYb7/Ep5b6W1ablez2VZhniAbSe0vzu/lfGn8vGskhEoR/69qqj2Us4eJp+WD+TnqxogtOQd3ykxscYvAHi1ffN3yuR6qxvv1nQ6O7gThuVB5itu9AdTy+g+Zba/6fU9pVSzw98ILQLpeCw8h5KNoHaDqGKDokxJFhS5Iz0zcRaKjwtP4IdfilSzOqG4jV2W+l04wYxkBpQjLhKN+SiBJaD9T9GLbOzMk2Wr8JVL12QfIOW7Nin+gNMprcjLJNxo9GC6Yx1ukBtcv2J7PC2uBooFFjEndZ3NteF2RoZ6E/kVj+vrmtb3l7ttSjQh064RXDQf4f+P7cjfRypjSYjVxF73tX X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?xTQ0gipjlRZs1fydW0k/6/PQCHaGaN7/xt9hm9KGeo2w/epgeU2QtrMXCH1Q?= =?us-ascii?Q?12pJKGzEpnPyiXp+JoOt1rSQhBuBvO8r4buqugsTR/ogxhxnM3tMhOQCdeq8?= =?us-ascii?Q?kN4ZkziGcZ194QXU5P7gtUn4BShauQc0m0AvEPFnDfwz3l627W2UMk8kGJWo?= =?us-ascii?Q?Oc0kEJAozGKs45yagxiyZlCz2w53+XL6Ort3DSTxnGy/KVmppr/diLKjzjU9?= =?us-ascii?Q?IqJuehOZZ0qW1JMY089HYLhbxp4hWDtcOhGiMLqSPcahiSVeo/cjeKfZI3nQ?= =?us-ascii?Q?RM9w+Rq7oR3Q4u8LafYQKwJUCqvWqji5R5sye9b+iKd5ZQgobrN67Bqgx7Qm?= =?us-ascii?Q?9SKKDtbQHU1VD5b4RQ4CurR5UXHl5o1ur9eZQl2I2wP8TygiOTegZhvYD2Mv?= =?us-ascii?Q?7ee6dznkUxw2EzH5OAYD0xgOwicO0kYfXBqnzUG993fUFBGdL3Zl3O5DQZM8?= =?us-ascii?Q?F7qwuR9JwzS5rK3IWoHrKlwCgtuipopLi1qXM7CsTYldlxYwys9703YRSCr3?= =?us-ascii?Q?KyPpKwOwcZ9qQZST+7Oml+SoTx8eQnZGD0CKHj79T1clTjyyc2OmhMtmSN3C?= =?us-ascii?Q?rl75uddcOrUY1jJ7ceQf73+wS4lKMB6VVZyabnE2NkrwaCDEAXyC2cuZq5JG?= =?us-ascii?Q?MesZo5ntdmhmDFwIUnaTblTXEIGcuySAqs1BNx5psrMGlj0YtQqFSPFFf3S5?= =?us-ascii?Q?SqgTEnxtAQukgIchIiuxFanXS29PGy39uCK6LKJ7aRPL7PD9J+xrBSd+h9Z2?= =?us-ascii?Q?4SlciHRW31FbI5X72uE3jgGACVUeYeabQUFogEEDJpXvZCxrni1LZqkxrSb8?= =?us-ascii?Q?ZOnsZhuImEdJDQzxXW05WSkbkC/TIJcxI4Ms2wWjejgqqh0GquAqstwJvaQg?= =?us-ascii?Q?eKo9W784+02nuWnwp5h6EAIW3++cYE9sLGKUtvwnbnJU6I+hXhmMtKo5t31+?= =?us-ascii?Q?Zg91SYhRZnmpKcUWv4iz3kRSYza+jbYYZV7cj5sR0aeZoYfCZy2/VRsShd2C?= =?us-ascii?Q?jCHjharEEQ1DyHHRshlut8SXLADrZctm7PsCqlQC2MMc41BAFGgmPLfbwmTF?= =?us-ascii?Q?ngHU4QtC/A7ERJ4BuqZFCutxAI5iFfa7S4CRdOpD/ajwXrkzU+/rRaYLJA5D?= =?us-ascii?Q?luv7df+OZ52NesA4q/KmcT5EOoL4TzSuokdNWhoZMZugMNpI4hIt7U/hDkQd?= =?us-ascii?Q?jNjE/w7NRwGbPf6NeE9MHvj0XZRWXfloURAZp4Rq7sbBZnth7Bo9VOu2mJtd?= =?us-ascii?Q?ztBIQxv0htVUmO1W6e5UrrEgy+QGRL/c/Hnuww5rQEGXBGCFJZvE//3tUljk?= =?us-ascii?Q?V6cgs+vJvHF0mrR3LuV5YhMl?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9782a28e-7a93-4dda-28fa-08d911982e83 X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:16.4243 (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: xgMXZB6J6PdWxUV0VNW9MSzLEfjsW5QoKV7QZENt0M8JqqQJ7g3j6OmKI4UvuKgAfl2uEHoc5a8XnsFkHsZtJQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB2367 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,brijesh.singh@amd.com X-Gm-Message-State: kyOeM3ygBgrCi4aMZqL7YrTBx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419965; bh=JY2iIp4oTQds289bW2j+HHkyjdhTmQU28TxCbfNV/Rk=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=WbQ0x9hPzxN/4KZ+gABTrtx73PGpMNsOn8SI3kzJe1KKg6EdncCU9/edo75Hh3Jlek9 YaIPOXX9iLYlaX3RY1UjX7i7ckiU8f+BocFtgqc7Rz41ZfB8fx5g6ymzi8GMnY/cuYw16 x8uamrTZ9WCCwVz00mwhKOZnogP1RZ87Hdo= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 Use the MemEncryptSevClearMmioPageEncMask() to clear memory encryption mask for the Mmio address range. Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Signed-off-by: Brijesh Singh Reviewed-by: Laszlo Ersek --- OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPeim.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPeim.c b/Ovm= fPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPeim.c index df2ad623308d..570c8467a673 100644 --- a/OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPeim.c +++ b/OvmfPkg/Tcg/TpmMmioSevDecryptPei/TpmMmioSevDecryptPeim.c @@ -62,11 +62,10 @@ TpmMmioSevDecryptPeimEntryPoint ( "%a: mapping TPM MMIO address range unencrypted\n", __FUNCTION__)); =20 - DecryptStatus =3D MemEncryptSevClearPageEncMask ( + DecryptStatus =3D MemEncryptSevClearMmioPageEncMask ( 0, FixedPcdGet64 (PcdTpmBaseAddress), - EFI_SIZE_TO_PAGES ((UINTN) 0x5000), - FALSE + EFI_SIZE_TO_PAGES ((UINTN) 0x5000) ); =20 if (RETURN_ERROR (DecryptStatus)) { --=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 (#74835): https://edk2.groups.io/g/devel/message/74835 Mute This Topic: https://groups.io/mt/82665195/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 Sat May 18 17:34:41 2024 Delivered-To: importer@patchew.org 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+74836+1787277+3901457@groups.io; helo=mail02.groups.io; 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+74836+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one); dmarc=fail(p=none dis=none) header.from=amd.com Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1620419964913425.9055025712553; Fri, 7 May 2021 13:39:24 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id GeCOYY1788612xAjvG3d32ma; Fri, 07 May 2021 13:39:24 -0700 X-Received: from NAM02-SN1-obe.outbound.protection.outlook.com (NAM02-SN1-obe.outbound.protection.outlook.com []) by mx.groups.io with SMTP id smtpd.web11.16081.1620419958521088408 for ; Fri, 07 May 2021 13:39:18 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jmr5uqQAFNtRPnx+HbIZQsdI8gcfWX5C2GEwWP5LMQQ/w1PxEvnTez+oIK8w99F1Q+0WC7DIEazzN6amtUTHIQCb1aIEQwEsxUIuaBuXEuZNynimu4svlNeoNbhlNYij5n8tFasDQOtnCf8CQy0SAtbzKWc2Rcs3N6oSF0HFLlzprOmB8y7mabI/4gDDqQxfJ3hvY7LXf70aZERNJV2+K7eoU3XC4ox1PuosuE1jpASy9qX9tIsx3yKbva1lHPMRe7o6M+L3GdAnGu/6ec091yIgMaZY/vFNKyouXprxxxQ08c2rQQMsM6hGFad1PMyp/k8oUjQNzhvz4GlCWY0lUw== 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=DC1Vs24sVCC8+Hq/SuyPrfoqaejsPpDZmTlxYftqwmU=; b=WgzQ6URkzp0UW93NNZjMMeytCHmqpBJ/ytTHe23B8sK4IqGkidAPA3iHSmVayFXX1xhgRSH3buoKaI8hlktnExIF8YcsGx/cL0b5//KRHS7h+2j3O8DbcU8UfB6jBZW7Pdlad5p1SFP0ZAk1Z1ZKq74J/whPTNRhVIXq2ekzOJ/JdbxJwanS+1itimOQKTuBRC/QhrzLohJtJY22csD9R/pFpl9f4feHoXg5IsU1nL6srTOz7DpH9DlHs8AsbudpnCSJbM39EiOYhQ6zLwPxlqsqF3PHKchVeAJUzdVtlrQYEYOIldS0jEdRErMpYrjZ3a0pECLJ+RukQ/GGPJtcBQ== 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 SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) by SN1PR12MB2367.namprd12.prod.outlook.com (2603:10b6:802:26::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.27; Fri, 7 May 2021 20:39:17 +0000 X-Received: from SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94]) by SN6PR12MB2718.namprd12.prod.outlook.com ([fe80::9898:5b48:a062:db94%6]) with mapi id 15.20.4108.029; Fri, 7 May 2021 20:39:17 +0000 From: "Brijesh Singh" To: devel@edk2.groups.io CC: Brijesh Singh , James Bottomley , Min Xu , Jiewen Yao , Tom Lendacky , Jordan Justen , Ard Biesheuvel , Laszlo Ersek , Erdem Aktas Subject: [edk2-devel] [PATCH 13/13] OvmfPkg/BaseMemEncryptSevLib: remove Flush parameter Date: Fri, 7 May 2021 15:38:38 -0500 Message-ID: <20210507203838.23706-14-brijesh.singh@amd.com> In-Reply-To: <20210507203838.23706-1-brijesh.singh@amd.com> References: <20210507203838.23706-1-brijesh.singh@amd.com> X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) To SN6PR12MB2718.namprd12.prod.outlook.com (2603:10b6:805:6f::22) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN7PR04CA0020.namprd04.prod.outlook.com (2603:10b6:806:f2::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4108.25 via Frontend Transport; Fri, 7 May 2021 20:39:16 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 2907b982-d5c0-4a18-15d5-08d911982eda X-MS-TrafficTypeDiagnostic: SN1PR12MB2367: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6790; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Message-Info: BEmyuivuvYI0M8ZIbH5VewEFh7xpNRuKG8BaFAmpm0WKyiLB+FGdLEGaY2FLNPRVA5/bk+OXP4etCVxZDRgKxm7ZkCVDJ14Y/bSTzq0zDapREuTFuqp6pEfNvjT9JxjeFQ8vKVWYh5i+8AJZQ9E3E4uhmeGW2ZGZYTo9xun8v2tgfzZTCAflnyQUjPCq2KYUWYnXEfQK1BumvYVZRHuLuH/OjWKO3IKSkspirzxKCOh0M+6Da2lxkYL4jWvnQsdAYuVJlQCYIP3CCoHLhpqmFeF0HcGGu6c5pXroC9G4TIiaH2+Mzgh7ERwk2s2if8/FULxQhtXIuFEJ8g4AsPrdQHjJmdgRIse3LDRsLijFYdUHyBeszNU+CwTeHqquV1ISBxbdBqF6zgG2yg/e4aC7Lbjf1MCs3N+S2Oi43Y/qNvSiiTlHo3R4zxJEi51oA74JDWlHgAIGWC7qnaLZChwF1rEXJfFNJafdSbwzvsozSqxIXTcc4HMeZhmOhRKdA7exvWlfoGwc41Xl8MYOqZ7peIIlJ7EN1uUAopfUgXF3Qm1e5q45mUGRmJwiLEQUig/7pSt+ZWdJuGcJ4ZlAvlGbvOpt/D7ZGdVNAVdoUSw+rstGBxqydFfMwzZdCtgn693j72aYgMMf6/0k+ORrFNgnEUdE5nkGMO563d0Jh288QT9HDDfGV4XvjIkKgqrW9tNxBVcF++HAGq0eqBwNU5UWqOZpPL/4n0+PIpUvOeqD9MfMelZ7ql93NBNOAOzTiYxK X-MS-Exchange-AntiSpam-MessageData: =?us-ascii?Q?h5pGTz7IQ3uSq1vAcA7mHJCSJ8oftlbNIPoMzCpXsFPMRTR5KKRD/yyYzarz?= =?us-ascii?Q?GF0L/R6e7yLPHpoleUjvivujK9xZbxV0Nk4aEd1D0E6tObWgp2kWUD+F21rP?= =?us-ascii?Q?HnhsbisB1Xd+nNz4oZgneJIs2CMbYjHReUt33QFRXuGwqskuEVtYNuPkCpDt?= =?us-ascii?Q?OW4o7IC9mwBuCf30fOPSfpSNoPqzdbm9NhINe0D1RccI5/LfXcrJWIXB+iCA?= =?us-ascii?Q?eTSN14Bxzav2XKxwEgTMYRl3vN+2o2D+2z4wP1CAhOoEFV2J1sn8DvzNNjio?= =?us-ascii?Q?CZSJYIrqXEHHDMvCe766b3um17sZZ96K2juJ/yKPYDgDbxs5boTo8bnm4rSk?= =?us-ascii?Q?7YURa78DBqx4SIk3xi0zAn2W964vWyKNRUYtC6EVtcPPV1K4yQrxgUb8juAA?= =?us-ascii?Q?Jij9m0bpFagf+AbA7uytExwnSRKjzvMfzxLQuEHOPF6v5uPEsTdozRjN2cP+?= =?us-ascii?Q?+vssouR5NR1KO+2NMJbUl+8uL1cnFxlBef55AIcE1CBPRGhyTWUwLdFtDwsS?= =?us-ascii?Q?NoYJtghtAjaacXouSQ7NUEuSSmcFp42a0Sadq4KM6/UEJSMyKQ4SQcoNpNf8?= =?us-ascii?Q?2siWPjvurK8ChEu49jMIozINnDrW96C72YwOGGwQsthLNhMB+ywuAbne2TcU?= =?us-ascii?Q?dFwx4PjavZnY4uqU0z38WxAGyQOOSjgy9AFRRCkugnLG67VsZ3LlY9fs5jUr?= =?us-ascii?Q?bsZHe7HwnMGaSZ5ggFtDTGz0c4yizgsIfpe6GD9mnmvV/oBOecRZf+1MKCxK?= =?us-ascii?Q?qrvEtMmIqhEgCsD7TE+mbOj/GKVX061YRtci+8n9ijMFbqYyqHooGFaOGTJB?= =?us-ascii?Q?OHDT0I4BdM2+sV2Q9I/LyZMgCY7X3iUx5QlIa+wZwVrBwVuGPFl9XPzZL48L?= =?us-ascii?Q?KEc63S018T8T+zRl06hRCVkdaB0TrOVG72pe81fGrKYMhy6wEKU0LUUn0tZ/?= =?us-ascii?Q?KF47OQE0LsUR+X5UlCMrJmZT9CLM9aCfA/2kex+zzgsdVkzpa1sQsAgz8b/O?= =?us-ascii?Q?aMNejl7CyDzI0xywenINm+GYVEqk4BSyYJP2ixoR18Ug6R2WmlC1gFa39GvW?= =?us-ascii?Q?Wr4cHpaX6MHSKTNDbF2Kcl+quDVe8GyfIeiRQ1wSSnEaodhUSGPP3Vb2c05r?= =?us-ascii?Q?Sjc/ijqERZoqElTxUeJkI57Yp7f0SPwj+tyn3ri7fdfvsM+8CQhdZnyf8Gus?= =?us-ascii?Q?uLTlucYh2Nv8CUCgS+6nxWQ+7F0LrhKWvxkoPf6CgVql0fdPaBW8LC1c6jxj?= =?us-ascii?Q?2C8KIqbFmJjgSEWFVd4ORfE1FUw0bQVR5UyczclZLTxdxIhChZQ5Nci4daNV?= =?us-ascii?Q?ZrCwyse4h6i5lm61cNS1F4dU?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2907b982-d5c0-4a18-15d5-08d911982eda X-MS-Exchange-CrossTenant-AuthSource: SN6PR12MB2718.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 May 2021 20:39:17.0150 (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: 8HobcGXU/lFagoy2RODEScccDiFNDBCalzwyQ/85R0c1M48JXCFSKK4ac1jf9/Q7N+VJ/kWzwu9YkLGtYc3Bww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB2367 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,brijesh.singh@amd.com X-Gm-Message-State: RrQZ2XgsDUiIxGi8GwyPBlCox1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1620419964; bh=ZWIe6g7lWVyIvJ3rszm1aDG1ocuKGlOgjxTORPrhSV4=; h=CC:Content-Type:Date:From:Reply-To:Subject:To; b=rRiPUghYN3CL6xzV+dNtQAuZqe2lzn0Ffh6ufdnFt2cmQ7WFx73SPXtlAMd9rm5hUYt bHOm0BbFmFop6nEcwVzrux6+yih6Bj9cuTR/Mz6++jHV/uPyaTf+sSGe5zdcMG2EgCUsB JbJS/VDR7lik0F0UpB3jxwY9qo56kxxHkFM= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Type: text/plain; charset="utf-8" BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3275 The Flush parameter is used to provide a hint whether the specified range is Mmio address. Now that we have a dedicated helper to clear the memory encryption mask for the Mmio address range, its safe to remove the Flush parameter from MemEncryptSev{Set,Clear}PageEncMask(). Cc: James Bottomley Cc: Min Xu Cc: Jiewen Yao Cc: Tom Lendacky Cc: Jordan Justen Cc: Ard Biesheuvel Cc: Laszlo Ersek Cc: Erdem Aktas Signed-off-by: Brijesh Singh --- OvmfPkg/Include/Library/MemEncryptSevLib.h | 10 ++---- .../BaseMemEncryptSevLib/X64/VirtualMemory.h | 10 ++---- OvmfPkg/AmdSevDxe/AmdSevDxe.c | 3 +- OvmfPkg/IoMmuDxe/AmdSevIoMmu.c | 6 ++-- .../Ia32/MemEncryptSevLib.c | 10 ++---- .../X64/MemEncryptSevLib.c | 16 +++------- .../X64/PeiDxeVirtualMemory.c | 32 +++++++++++-------- .../X64/SecVirtualMemory.c | 8 ++--- .../SmmCpuFeaturesLib/SmmCpuFeaturesLib.c | 3 +- OvmfPkg/PlatformPei/AmdSev.c | 3 +- 10 files changed, 35 insertions(+), 66 deletions(-) diff --git a/OvmfPkg/Include/Library/MemEncryptSevLib.h b/OvmfPkg/Include/L= ibrary/MemEncryptSevLib.h index b91490d5d44d..76d06c206c8b 100644 --- a/OvmfPkg/Include/Library/MemEncryptSevLib.h +++ b/OvmfPkg/Include/Library/MemEncryptSevLib.h @@ -100,8 +100,6 @@ MemEncryptSevIsEnabled ( address of a memory region. @param[in] NumPages The number of pages from start memory region. - @param[in] Flush Flush the caches before clearing the= bit - (mostly TRUE except MMIO addresses) =20 @retval RETURN_SUCCESS The attributes were cleared for the memory region. @@ -114,8 +112,7 @@ EFIAPI MemEncryptSevClearPageEncMask ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, - IN UINTN NumPages, - IN BOOLEAN Flush + IN UINTN NumPages ); =20 /** @@ -128,8 +125,6 @@ MemEncryptSevClearPageEncMask ( address of a memory region. @param[in] NumPages The number of pages from start memory region. - @param[in] Flush Flush the caches before setting the = bit - (mostly TRUE except MMIO addresses) =20 @retval RETURN_SUCCESS The attributes were set for the memo= ry region. @@ -142,8 +137,7 @@ EFIAPI MemEncryptSevSetPageEncMask ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, - IN UINTN NumPages, - IN BOOLEAN Flush + IN UINTN NumPages ); =20 =20 diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h b/Ovm= fPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h index 8dc39e647b90..21bbbd1c4f9c 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.h @@ -58,8 +58,6 @@ InternalGetMemEncryptionAddressMask ( @param[in] PhysicalAddress The physical address that is the sta= rt address of a memory region. @param[in] Length The length of memory region - @param[in] Flush Flush the caches before applying the - encryption mask =20 @retval RETURN_SUCCESS The attributes were cleared for the memory region. @@ -72,8 +70,7 @@ EFIAPI InternalMemEncryptSevSetMemoryDecrypted ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS PhysicalAddress, - IN UINTN Length, - IN BOOLEAN Flush + IN UINTN Length ); =20 /** @@ -85,8 +82,6 @@ InternalMemEncryptSevSetMemoryDecrypted ( @param[in] PhysicalAddress The physical address that is the sta= rt address of a memory region. @param[in] Length The length of memory region - @param[in] Flush Flush the caches before applying the - encryption mask =20 @retval RETURN_SUCCESS The attributes were set for the memo= ry region. @@ -99,8 +94,7 @@ EFIAPI InternalMemEncryptSevSetMemoryEncrypted ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS PhysicalAddress, - IN UINTN Length, - IN BOOLEAN Flush + IN UINTN Length ); =20 /** diff --git a/OvmfPkg/AmdSevDxe/AmdSevDxe.c b/OvmfPkg/AmdSevDxe/AmdSevDxe.c index 80831b81facf..41e4b291d070 100644 --- a/OvmfPkg/AmdSevDxe/AmdSevDxe.c +++ b/OvmfPkg/AmdSevDxe/AmdSevDxe.c @@ -120,8 +120,7 @@ AmdSevDxeEntryPoint ( Status =3D MemEncryptSevClearPageEncMask ( 0, // Cr3BaseAddress -- use current CR3 MapPagesBase, // BaseAddress - MapPagesCount, // NumPages - TRUE // Flush + MapPagesCount // NumPages ); if (EFI_ERROR (Status)) { DEBUG ((DEBUG_ERROR, "%a: MemEncryptSevClearPageEncMask(): %r\n", diff --git a/OvmfPkg/IoMmuDxe/AmdSevIoMmu.c b/OvmfPkg/IoMmuDxe/AmdSevIoMmu.c index 49ffa2448811..b30628078f73 100644 --- a/OvmfPkg/IoMmuDxe/AmdSevIoMmu.c +++ b/OvmfPkg/IoMmuDxe/AmdSevIoMmu.c @@ -252,8 +252,7 @@ IoMmuMap ( Status =3D MemEncryptSevClearPageEncMask ( 0, MapInfo->PlainTextAddress, - MapInfo->NumberOfPages, - TRUE + MapInfo->NumberOfPages ); ASSERT_EFI_ERROR (Status); if (EFI_ERROR (Status)) { @@ -407,8 +406,7 @@ IoMmuUnmapWorker ( Status =3D MemEncryptSevSetPageEncMask ( 0, MapInfo->PlainTextAddress, - MapInfo->NumberOfPages, - TRUE + MapInfo->NumberOfPages ); ASSERT_EFI_ERROR (Status); if (EFI_ERROR (Status)) { diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c b= /OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c index 169d3118e44f..be260e0d1014 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/Ia32/MemEncryptSevLib.c @@ -25,8 +25,6 @@ address of a memory region. @param[in] NumPages The number of pages from start memory region. - @param[in] Flush Flush the caches before clearing the= bit - (mostly TRUE except MMIO addresses) =20 @retval RETURN_SUCCESS The attributes were cleared for the memory region. @@ -39,8 +37,7 @@ EFIAPI MemEncryptSevClearPageEncMask ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, - IN UINTN NumPages, - IN BOOLEAN Flush + IN UINTN NumPages ) { // @@ -59,8 +56,6 @@ MemEncryptSevClearPageEncMask ( address of a memory region. @param[in] NumPages The number of pages from start memory region. - @param[in] Flush Flush the caches before setting the = bit - (mostly TRUE except MMIO addresses) =20 @retval RETURN_SUCCESS The attributes were set for the memo= ry region. @@ -73,8 +68,7 @@ EFIAPI MemEncryptSevSetPageEncMask ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, - IN UINTN NumPages, - IN BOOLEAN Flush + IN UINTN NumPages ) { // diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c b/= OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c index a2bf698bcde7..a57e8fd37fa7 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/MemEncryptSevLib.c @@ -27,8 +27,6 @@ address of a memory region. @param[in] NumPages The number of pages from start memory region. - @param[in] Flush Flush the caches before clearing the= bit - (mostly TRUE except MMIO addresses) =20 @retval RETURN_SUCCESS The attributes were cleared for the memory region. @@ -41,15 +39,13 @@ EFIAPI MemEncryptSevClearPageEncMask ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, - IN UINTN NumPages, - IN BOOLEAN Flush + IN UINTN NumPages ) { return InternalMemEncryptSevSetMemoryDecrypted ( Cr3BaseAddress, BaseAddress, - EFI_PAGES_TO_SIZE (NumPages), - Flush + EFI_PAGES_TO_SIZE (NumPages) ); } =20 @@ -63,8 +59,6 @@ MemEncryptSevClearPageEncMask ( address of a memory region. @param[in] NumPages The number of pages from start memory region. - @param[in] Flush Flush the caches before setting the = bit - (mostly TRUE except MMIO addresses) =20 @retval RETURN_SUCCESS The attributes were set for the memo= ry region. @@ -77,15 +71,13 @@ EFIAPI MemEncryptSevSetPageEncMask ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS BaseAddress, - IN UINTN NumPages, - IN BOOLEAN Flush + IN UINTN NumPages ) { return InternalMemEncryptSevSetMemoryEncrypted ( Cr3BaseAddress, BaseAddress, - EFI_PAGES_TO_SIZE (NumPages), - Flush + EFI_PAGES_TO_SIZE (NumPages) ); } =20 diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c= b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c index a18d336a8789..ad1021bd3e43 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/PeiDxeVirtualMemory.c @@ -555,8 +555,7 @@ EnableReadOnlyPageWriteProtect ( address of a memory region. @param[in] Length The length of memory region @param[in] Mode Set or Clear mode - @param[in] CacheFlush Flush the caches before applying the - encryption mask + @param[in] Mmio The physical address range is Mmio. =20 @retval RETURN_SUCCESS The attributes were cleared for the memory region. @@ -572,7 +571,7 @@ SetMemoryEncDec ( IN PHYSICAL_ADDRESS PhysicalAddress, IN UINTN Length, IN MAP_RANGE_MODE Mode, - IN BOOLEAN CacheFlush + IN BOOLEAN Mmio ) { PAGE_MAP_AND_DIRECTORY_POINTER *PageMapLevel4Entry; @@ -585,12 +584,23 @@ SetMemoryEncDec ( UINT64 AddressEncMask; BOOLEAN IsWpEnabled; RETURN_STATUS Status; + BOOLEAN CacheFlush; =20 // // Set PageMapLevel4Entry to suppress incorrect compiler/analyzer warnin= gs. // PageMapLevel4Entry =3D NULL; =20 + // + // The cache need to flushed for the non-Mmio address range. + // + if (Mmio =3D=3D TRUE) { + CacheFlush =3D FALSE; + } else { + CacheFlush =3D TRUE; + } + + // DEBUG (( DEBUG_VERBOSE, "%a:%a: Cr3Base=3D0x%Lx Physical=3D0x%Lx Length=3D0x%Lx Mode=3D%a Cach= eFlush=3D%u\n", @@ -828,8 +838,6 @@ SetMemoryEncDec ( @param[in] PhysicalAddress The physical address that is the sta= rt address of a memory region. @param[in] Length The length of memory region - @param[in] Flush Flush the caches before applying the - encryption mask =20 @retval RETURN_SUCCESS The attributes were cleared for the memory region. @@ -842,8 +850,7 @@ EFIAPI InternalMemEncryptSevSetMemoryDecrypted ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS PhysicalAddress, - IN UINTN Length, - IN BOOLEAN Flush + IN UINTN Length ) { =20 @@ -852,7 +859,7 @@ InternalMemEncryptSevSetMemoryDecrypted ( PhysicalAddress, Length, ClearCBit, - Flush + FALSE ); } =20 @@ -865,8 +872,6 @@ InternalMemEncryptSevSetMemoryDecrypted ( @param[in] PhysicalAddress The physical address that is the sta= rt address of a memory region. @param[in] Length The length of memory region - @param[in] Flush Flush the caches before applying the - encryption mask =20 @retval RETURN_SUCCESS The attributes were set for the memo= ry region. @@ -879,8 +884,7 @@ EFIAPI InternalMemEncryptSevSetMemoryEncrypted ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS PhysicalAddress, - IN UINTN Length, - IN BOOLEAN Flush + IN UINTN Length ) { return SetMemoryEncDec ( @@ -888,7 +892,7 @@ InternalMemEncryptSevSetMemoryEncrypted ( PhysicalAddress, Length, SetCBit, - Flush + FALSE ); } =20 @@ -921,6 +925,6 @@ InternalMemEncryptSevClearMmioPageEncMask ( PhysicalAddress, Length, ClearCBit, - FALSE + TRUE ); } diff --git a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/SecVirtualMemory.c b/= OvmfPkg/Library/BaseMemEncryptSevLib/X64/SecVirtualMemory.c index bca5e3febb1b..24d19d3ca161 100644 --- a/OvmfPkg/Library/BaseMemEncryptSevLib/X64/SecVirtualMemory.c +++ b/OvmfPkg/Library/BaseMemEncryptSevLib/X64/SecVirtualMemory.c @@ -42,8 +42,6 @@ InternalGetMemEncryptionAddressMask ( @param[in] PhysicalAddress The physical address that is the sta= rt address of a memory region. @param[in] Length The length of memory region - @param[in] Flush Flush the caches before applying the - encryption mask =20 @retval RETURN_SUCCESS The attributes were cleared for the memory region. @@ -56,8 +54,7 @@ EFIAPI InternalMemEncryptSevSetMemoryDecrypted ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS PhysicalAddress, - IN UINTN Length, - IN BOOLEAN Flush + IN UINTN Length ) { // @@ -89,8 +86,7 @@ EFIAPI InternalMemEncryptSevSetMemoryEncrypted ( IN PHYSICAL_ADDRESS Cr3BaseAddress, IN PHYSICAL_ADDRESS PhysicalAddress, - IN UINTN Length, - IN BOOLEAN Flush + IN UINTN Length ) { // diff --git a/OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.c b/OvmfPk= g/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.c index fdf2380974fa..c7cc5b0389c8 100644 --- a/OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.c +++ b/OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.c @@ -283,8 +283,7 @@ SmmCpuFeaturesSmmRelocationComplete ( Status =3D MemEncryptSevSetPageEncMask ( 0, // Cr3BaseAddress -- use current CR3 MapPagesBase, // BaseAddress - MapPagesCount, // NumPages - TRUE // Flush + MapPagesCount // NumPages ); if (EFI_ERROR (Status)) { DEBUG ((DEBUG_ERROR, "%a: MemEncryptSevSetPageEncMask(): %r\n", diff --git a/OvmfPkg/PlatformPei/AmdSev.c b/OvmfPkg/PlatformPei/AmdSev.c index dddffdebda4b..a8bf610022ba 100644 --- a/OvmfPkg/PlatformPei/AmdSev.c +++ b/OvmfPkg/PlatformPei/AmdSev.c @@ -72,8 +72,7 @@ AmdSevEsInitialize ( DecryptStatus =3D MemEncryptSevClearPageEncMask ( 0, GhcbBasePa + EFI_PAGES_TO_SIZE (PageCount), - 1, - TRUE + 1 ); ASSERT_RETURN_ERROR (DecryptStatus); } --=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 (#74836): https://edk2.groups.io/g/devel/message/74836 Mute This Topic: https://groups.io/mt/82665196/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-