From nobody Mon May 13 06:08:36 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+112095+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+112095+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1701850589; cv=none; d=zohomail.com; s=zohoarc; b=n7LdC9WhTufOKkhg/ycLt8uCO+GEqyn63qctdl3lGDw9vfRklRS3t7d4/mtf+zd72993KkPf6E53d62YK2n9hKmc4wMuPfesH317QNV0gezCYART7+OQ5VE0UkCG6JeDHFg1qY+LpSOiA/746y4m8Y9nrfDqE0rLvo22kLqaBAw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1701850589; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=97H+4RH5Pm/L7rlURYbI6QP+0D0mbES23/Hor0smrBs=; b=LJJc7xi0r+PKHMGUfqlLy1Xue952/5F0eDchk8tjICkuGmlLWu8WzqFC8/YKrXQbKKgirf72GDDaf92ylSTPcaHoOPRmlJ5+KP2iDvVPGD61/9rUGSzDQVSINkxBBvLOSGsUdIwnS8HiL+G/FdCSrZKJDox8ryw5QycUX5FqmRM= ARC-Authentication-Results: i=1; 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+112095+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1701850589555559.5355147640216; Wed, 6 Dec 2023 00:16:29 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=w5X3ruMUTbk31tVoEuLO35leDhuWi62fS7+FbhYqJvk=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1701850589; v=1; b=l4Z81JB9nV/HsC79ntBupLkGK54fqZdyEF3jpbDkbN8GPbuFpRvU42O2hNn9B794fPtuXYC0 wsSmiE95m+i9ly0BzS5KBjxm/DKWcHXAgOLeeF2h3+MhR9T9855c1Uhmrg6a2I2sFqlpqOSK167 sBnqbyJf4TbbP+11rww9Dw2E= X-Received: by 127.0.0.2 with SMTP id 80lcYY1788612x1kBjWjcWuQ; Wed, 06 Dec 2023 00:16:29 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by mx.groups.io with SMTP id smtpd.web11.26660.1701850587670127710 for ; Wed, 06 Dec 2023 00:16:28 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="1118489" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="1118489" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Dec 2023 00:16:28 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="837240753" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="837240753" X-Received: from shwdesssddpdwei.ccr.corp.intel.com ([10.239.157.28]) by fmsmga008.fm.intel.com with ESMTP; 06 Dec 2023 00:16:26 -0800 From: "Sheng Wei" To: devel@edk2.groups.io Cc: Eric Dong , Ray Ni , Laszlo Ersek , Wu Jiaxin , Tan Dun Subject: [edk2-devel] [PATCH v7 1/5] UefiCpuPkg: Add macro definitions for CET feature for NASM files. Date: Wed, 6 Dec 2023 16:16:20 +0800 Message-Id: <20231206081624.1370-2-w.sheng@intel.com> In-Reply-To: <20231206081624.1370-1-w.sheng@intel.com> References: <20231206081624.1370-1-w.sheng@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,w.sheng@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: VPE2fZigly3hWTtb4F43pXvzx1787277AA= Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1701850590216100003 Content-Type: text/plain; charset="utf-8" Signed-off-by: Sheng Wei Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Cc: Wu Jiaxin Cc: Tan Dun --- UefiCpuPkg/PiSmmCpuDxeSmm/Cet.inc | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Cet.inc diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/Cet.inc b/UefiCpuPkg/PiSmmCpuDxeSmm/= Cet.inc new file mode 100644 index 0000000000..41c99988c9 --- /dev/null +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/Cet.inc @@ -0,0 +1,26 @@ +;-------------------------------------------------------------------------= ----- +; +; Copyright (c) 2023, Intel Corporation. All rights reserved.
+; SPDX-License-Identifier: BSD-2-Clause-Patent +; +; Abstract: +; +; This file provides macro definitions for CET feature for NASM files. +; +;-------------------------------------------------------------------------= ----- + +%define MSR_IA32_U_CET 0x6A0 +%define MSR_IA32_S_CET 0x6A2 +%define MSR_IA32_CET_SH_STK_EN (1<<0) +%define MSR_IA32_CET_WR_SHSTK_EN (1<<1) +%define MSR_IA32_CET_ENDBR_EN (1<<2) +%define MSR_IA32_CET_LEG_IW_EN (1<<3) +%define MSR_IA32_CET_NO_TRACK_EN (1<<4) +%define MSR_IA32_CET_SUPPRESS_DIS (1<<5) +%define MSR_IA32_CET_SUPPRESS (1<<10) +%define MSR_IA32_CET_TRACKER (1<<11) +%define MSR_IA32_PL0_SSP 0x6A4 +%define MSR_IA32_INTERRUPT_SSP_TABLE_ADDR 0x6A8 + +%define CR4_CET_BIT 23 +%define CR4_CET (1< (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1701850591794176.36638643883066; Wed, 6 Dec 2023 00:16:31 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=H6dOOSJ7vMThnHkqr92V8GfRGmxa7Z/1M1iI6KM+dik=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1701850591; v=1; b=LyDrz0d9lRrDNH9yK3v4RR0wrojCt2T+Y3la1KAGfkYMk2Xw89P1UwwFTDa7tmj5vgsC36T7 6Lx1ioh6Dy878f2HZeLsxMtFqQE13gvSua3QBjxPOKm7Jj4t1YnfphpUmlGjf+LskcDY9B3H8ek hO0EYQDyXJqU7P13eL/blt+Q= X-Received: by 127.0.0.2 with SMTP id z3y2YY1788612xDEiEXR8OPc; Wed, 06 Dec 2023 00:16:31 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by mx.groups.io with SMTP id smtpd.web11.26660.1701850587670127710 for ; Wed, 06 Dec 2023 00:16:30 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="1118496" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="1118496" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Dec 2023 00:16:30 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="837240781" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="837240781" X-Received: from shwdesssddpdwei.ccr.corp.intel.com ([10.239.157.28]) by fmsmga008.fm.intel.com with ESMTP; 06 Dec 2023 00:16:28 -0800 From: "Sheng Wei" To: devel@edk2.groups.io Cc: Eric Dong , Ray Ni , Laszlo Ersek , Wu Jiaxin , Tan Dun Subject: [edk2-devel] [PATCH v7 2/5] UefiCpuPkg: Use macro CR4_CET_BIT to replace hard code value in Cet.nasm. Date: Wed, 6 Dec 2023 16:16:21 +0800 Message-Id: <20231206081624.1370-3-w.sheng@intel.com> In-Reply-To: <20231206081624.1370-1-w.sheng@intel.com> References: <20231206081624.1370-1-w.sheng@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,w.sheng@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: Mn1BrSzFevKwqx6hI4DxTd05x1787277AA= Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1701850594228100012 Content-Type: text/plain; charset="utf-8" Signed-off-by: Sheng Wei Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Cc: Wu Jiaxin Cc: Tan Dun --- UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/Cet.nasm | 5 +++-- UefiCpuPkg/PiSmmCpuDxeSmm/X64/Cet.nasm | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/Cet.nasm b/UefiCpuPkg/PiSmmCpuD= xeSmm/Ia32/Cet.nasm index 9d66b9c5da..3d07da1cd4 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/Cet.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/Cet.nasm @@ -5,6 +5,7 @@ ;-------------------------------------------------------------------------= ------ =20 %include "Nasm.inc" +%include "Cet.inc" =20 SECTION .text =20 @@ -16,7 +17,7 @@ ASM_PFX(DisableCet): incsspd eax =20 mov eax, cr4 - btr eax, 23 ; clear CET + btr eax, CR4_CET_BIT ; clear CET mov cr4, eax ret =20 @@ -24,7 +25,7 @@ global ASM_PFX(EnableCet) ASM_PFX(EnableCet): =20 mov eax, cr4 - bts eax, 23 ; set CET + bts eax, CR4_CET_BIT ; set CET mov cr4, eax =20 ; use jmp to skip the check for ret diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/Cet.nasm b/UefiCpuPkg/PiSmmCpuDx= eSmm/X64/Cet.nasm index 8bbdbb31cc..700aef4703 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/Cet.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/X64/Cet.nasm @@ -5,6 +5,7 @@ ;-------------------------------------------------------------------------= ------ =20 %include "Nasm.inc" +%include "Cet.inc" =20 DEFAULT REL SECTION .text @@ -17,7 +18,7 @@ ASM_PFX(DisableCet): incsspq rax =20 mov rax, cr4 - btr eax, 23 ; clear CET + btr eax, CR4_CET_BIT ; clear CET mov cr4, rax ret =20 @@ -25,7 +26,7 @@ global ASM_PFX(EnableCet) ASM_PFX(EnableCet): =20 mov rax, cr4 - bts eax, 23 ; set CET + bts eax, CR4_CET_BIT ; set CET mov cr4, rax =20 ; use jmp to skip the check for ret --=20 2.26.2.windows.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 (#112096): https://edk2.groups.io/g/devel/message/112096 Mute This Topic: https://groups.io/mt/103009378/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 Mon May 13 06:08:36 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+112097+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+112097+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1701850593; cv=none; d=zohomail.com; s=zohoarc; b=QYCosTpg3v0WlM8KMCXBZ/ak3mUTES1lC7z8gY3+qe+UOQA7HzuR3nf6UPzxUYBoFpLChswpsoT1B0cPCxbN4FnziB67IE+pg6Nkfm0ZcmBCNVH4Tw+kQMdt9VEcTObJDdwuWmzzcWY2PiVzGX6WdUMw2UERXsmVqPdaCWTCRtk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1701850593; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=3ppLpjSoGLwDpUbPcgasAlhFAAGi5fIU2KrOrqXwByM=; b=QUGiF/xA0G8d/dUyNHCeoCHZjJESpqOqPqIHsr1sPsBoso8XIxC3CMaJndwnbvHZWqme9TJoDKRBT0zC2uMPo5No6PTbkXldaAS3w4Um6VAHBdYMs4NuNZRR6a9ddDUp5LiA0Wncd6YvYv7Xma/Du1VCbcC5xEX6XRuECebX5dM= ARC-Authentication-Results: i=1; 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+112097+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1701850593509891.4250223972732; Wed, 6 Dec 2023 00:16:33 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=WoqGsmJZbFr4LWkRZMi/J9YXJj9Ul0XT73+MPYgKCj0=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1701850593; v=1; b=MS4VtiFjblWZqL9I4kqgjhKS0OUIqkAqE1ZnkNVd8Bg7XnBrHoiAwZHdUiU0t7IL8PaUSEXM Z5mHwVEOA8a1eJ9QPtTTUedi7oEZmqvcHlEWlq7wAhsPSjdX/et65Vr/5UpRZ2wPPPSCKmtGyoW R2ILn/N4oZDIRiIBw3cDDDGo= X-Received: by 127.0.0.2 with SMTP id RZ2kYY1788612xbgGre74RAh; Wed, 06 Dec 2023 00:16:33 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by mx.groups.io with SMTP id smtpd.web11.26660.1701850587670127710 for ; Wed, 06 Dec 2023 00:16:32 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="1118500" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="1118500" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Dec 2023 00:16:32 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="837240810" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="837240810" X-Received: from shwdesssddpdwei.ccr.corp.intel.com ([10.239.157.28]) by fmsmga008.fm.intel.com with ESMTP; 06 Dec 2023 00:16:30 -0800 From: "Sheng Wei" To: devel@edk2.groups.io Cc: Eric Dong , Ray Ni , Laszlo Ersek , Wu Jiaxin , Tan Dun Subject: [edk2-devel] [PATCH v7 3/5] UefiCpuPkg: Use CET macro definitions in Cet.inc for SmiEntry.nasm files. Date: Wed, 6 Dec 2023 16:16:22 +0800 Message-Id: <20231206081624.1370-4-w.sheng@intel.com> In-Reply-To: <20231206081624.1370-1-w.sheng@intel.com> References: <20231206081624.1370-1-w.sheng@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,w.sheng@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: MN3G68SEMpYvtNY7LCDIUSAox1787277AA= Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1701850594165100011 Content-Type: text/plain; charset="utf-8" Signed-off-by: Sheng Wei Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Cc: Wu Jiaxin Cc: Tan Dun --- UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm | 14 +------------- UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm | 15 +-------------- 2 files changed, 2 insertions(+), 27 deletions(-) diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm b/UefiCpuPkg/PiSm= mCpuDxeSmm/Ia32/SmiEntry.nasm index 19de5f614e..6368982433 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm @@ -15,19 +15,7 @@ =20 %include "StuffRsbNasm.inc" %include "Nasm.inc" - -%define MSR_IA32_S_CET 0x6A2 -%define MSR_IA32_CET_SH_STK_EN 0x1 -%define MSR_IA32_CET_WR_SHSTK_EN 0x2 -%define MSR_IA32_CET_ENDBR_EN 0x4 -%define MSR_IA32_CET_LEG_IW_EN 0x8 -%define MSR_IA32_CET_NO_TRACK_EN 0x10 -%define MSR_IA32_CET_SUPPRESS_DIS 0x20 -%define MSR_IA32_CET_SUPPRESS 0x400 -%define MSR_IA32_CET_TRACKER 0x800 -%define MSR_IA32_PL0_SSP 0x6A4 - -%define CR4_CET 0x800000 +%include "Cet.inc" =20 %define MSR_IA32_MISC_ENABLE 0x1A0 %define MSR_EFER 0xc0000080 diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm b/UefiCpuPkg/PiSmm= CpuDxeSmm/X64/SmiEntry.nasm index d302ca8d01..9a225bc3be 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm @@ -15,25 +15,12 @@ =20 %include "StuffRsbNasm.inc" %include "Nasm.inc" +%include "Cet.inc" =20 ; ; Variables referenced by C code ; =20 -%define MSR_IA32_S_CET 0x6A2 -%define MSR_IA32_CET_SH_STK_EN 0x1 -%define MSR_IA32_CET_WR_SHSTK_EN 0x2 -%define MSR_IA32_CET_ENDBR_EN 0x4 -%define MSR_IA32_CET_LEG_IW_EN 0x8 -%define MSR_IA32_CET_NO_TRACK_EN 0x10 -%define MSR_IA32_CET_SUPPRESS_DIS 0x20 -%define MSR_IA32_CET_SUPPRESS 0x400 -%define MSR_IA32_CET_TRACKER 0x800 -%define MSR_IA32_PL0_SSP 0x6A4 -%define MSR_IA32_INTERRUPT_SSP_TABLE_ADDR 0x6A8 - -%define CR4_CET 0x800000 - %define MSR_IA32_MISC_ENABLE 0x1A0 %define MSR_EFER 0xc0000080 %define MSR_EFER_XD 0x800 --=20 2.26.2.windows.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 (#112097): https://edk2.groups.io/g/devel/message/112097 Mute This Topic: https://groups.io/mt/103009379/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 Mon May 13 06:08:36 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+112098+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+112098+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1701850594; cv=none; d=zohomail.com; s=zohoarc; b=ImfRRSBA1tbptyYODEqH27Dr8voR0miO3mmwCe5gLkD6DjzUd/DvdtxbuL/X1HrzlB961HdZwL2RLFjT15SczO8zsR3YpJLk9DhQ7w3dZuLs2MsyJh4JjcT7XZalEuSxegn9wnv9c6VmxR/4rmJwv0sMF/aIcmJrIi3plE9Zmh8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1701850594; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=7QrDmvyd3RDSTHw8LacpTKGrOWUEfY6VOMA9ZQbOXJM=; b=N7y4iRVuxV4bloHOERc6hTsMJWreiBuoT9WHCxuUTT1Dq2bU/S9TldbcwMV1T0BHTjiFasrJJ4FqIp3SpqDfkCvtvIpCoyniqtNs9Tv/zU9LOQ1b4OmkbD/ch5iYs9VO25unxdRIKaovQolfwNljM3jQiQS4s6oHGAvD/noN1Eg= ARC-Authentication-Results: i=1; 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+112098+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1701850594971981.5600540535027; Wed, 6 Dec 2023 00:16:34 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=fz4JWuTQL49KqZRl5ylZUhdj6yDNcBPanYJFUp5ApiQ=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1701850594; v=1; b=bMH/WbogK25gVEiKVnD6/KhlZWhKFpWq16AtL50NxBqW3SAXo2Zs7FwGHibeSifx4hyhM6G2 /Arsi4Na78B7cjvphBYrHfRwwXCTdrm7/FKBmOlEBzMpXTB2Bvq3+GD/gdci3U08GesLfD3JNf7 GDknd7ZLD+ztcdluGC5ww8tc= X-Received: by 127.0.0.2 with SMTP id zw3mYY1788612xFk1T8OZPzw; Wed, 06 Dec 2023 00:16:34 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by mx.groups.io with SMTP id smtpd.web11.26660.1701850587670127710 for ; Wed, 06 Dec 2023 00:16:34 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="1118503" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="1118503" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Dec 2023 00:16:34 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="837240840" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="837240840" X-Received: from shwdesssddpdwei.ccr.corp.intel.com ([10.239.157.28]) by fmsmga008.fm.intel.com with ESMTP; 06 Dec 2023 00:16:32 -0800 From: "Sheng Wei" To: devel@edk2.groups.io Cc: Eric Dong , Ray Ni , Laszlo Ersek , Wu Jiaxin , Tan Dun Subject: [edk2-devel] [PATCH v7 4/5] UefiCpuPkg: Only change CR4.CET bit for enable and disable CET. Date: Wed, 6 Dec 2023 16:16:23 +0800 Message-Id: <20231206081624.1370-5-w.sheng@intel.com> In-Reply-To: <20231206081624.1370-1-w.sheng@intel.com> References: <20231206081624.1370-1-w.sheng@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,w.sheng@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: G5DlRetXY5Q1aG9AyRCu87Hwx1787277AA= Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1701850596128100019 Content-Type: text/plain; charset="utf-8" Signed-off-by: Sheng Wei Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Cc: Wu Jiaxin Cc: Tan Dun --- UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm | 10 +++++++--- UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm b/UefiCpuPkg/PiSm= mCpuDxeSmm/Ia32/SmiEntry.nasm index 6368982433..1da9afab97 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm @@ -237,7 +237,9 @@ CetInterruptDone: bts ecx, 16 ; set WP mov cr0, ecx =20 - mov eax, 0x668 | CR4_CET + ; set CR4.CET bit for enable CET + mov eax, cr4 + bts eax, CR4_CET_BIT mov cr4, eax =20 setssbsy @@ -264,8 +266,10 @@ CetDone: cmp al, 0 jz CetDone2 =20 - mov eax, 0x668 - mov cr4, eax ; disable CET + ; clear CR4.CET bit for disable CET + mov eax, cr4 + btr eax, CR4_CET_BIT + mov cr4, eax =20 mov ecx, MSR_IA32_PL0_SSP pop eax diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm b/UefiCpuPkg/PiSmm= CpuDxeSmm/X64/SmiEntry.nasm index 9a225bc3be..abf9f1a90a 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm @@ -263,7 +263,9 @@ CetInterruptDone: bts ecx, 16 ; set WP mov cr0, rcx =20 - mov eax, 0x668 | CR4_CET + ; set CR4.CET bit for enable CET + mov rax, cr4 + bts rax, CR4_CET_BIT mov cr4, rax =20 setssbsy @@ -308,8 +310,10 @@ mCetSupportedAbsAddr: cmp al, 0 jz CetDone2 =20 - mov eax, 0x668 - mov cr4, rax ; disable CET + ; clear CR4.CET bit for disable CET + mov rax, cr4 + btr rax, CR4_CET_BIT + mov cr4, rax =20 mov ecx, MSR_IA32_INTERRUPT_SSP_TABLE_ADDR pop rax --=20 2.26.2.windows.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 (#112098): https://edk2.groups.io/g/devel/message/112098 Mute This Topic: https://groups.io/mt/103009380/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 Mon May 13 06:08:36 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+112099+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+112099+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1701850596; cv=none; d=zohomail.com; s=zohoarc; b=cuy4wfXyojC1kuGz1gXmSL8ToIyiVur50OybYeT73hzGSdbfql0ciA5LW/P6ba97yuqznoAcY2dzDL4Ty/2K5ZW3ka7hkrurx1zqUnyeLA6TixENE9uifIYQ1LeduserbkHQTo6UbzbLUSGTy1hNW2JUJODuoWBuDJhFKm8gCgQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1701850596; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Reply-To:References:Sender:Subject:Subject:To:To:Message-Id; bh=LVrxkAF5MsFjy1kFQ4ReQRFUSJPIZOuhb3pHu8UWYNc=; b=B8lb12P+z5GIixqcwwUr2T7zYLTnb1HXXEo1LxmKzttM8P67jG3yhkKR0PDKD14LYfs99esMJ8yWRq++EymFD/ZVN3PP3O6zIoVb3owPphwQimSpxDC8VY29IXlWhOpPlFxMCQECuqjoIUKeyaoROeJeFRI9N0r8cQSUynXBBbE= ARC-Authentication-Results: i=1; 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+112099+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1701850596832230.93751349528088; Wed, 6 Dec 2023 00:16:36 -0800 (PST) Return-Path: DKIM-Signature: a=rsa-sha256; bh=OU68Ak3tOf6aIp9bPZjqQbjXvAUgHTZvcdhBzAm13SA=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1701850596; v=1; b=nWwK3XRCNGdX4Pedzaq6C+iM3Cqg9tezJPnq1Ohj/ohuI1Xr0d4GMeV2cu+oc1/foWVqv+GB t1wlYFB809bsFCPI8CVjgsgD0ne1eCJZzIB0OeWXnnjIWl6GQ6NEdgRFR71nKpE9LJaVeSBiQf9 gYG/Q7/uIwEAQVzBe+Y1sJRc= X-Received: by 127.0.0.2 with SMTP id 5125YY1788612xCL2u1vV1We; Wed, 06 Dec 2023 00:16:36 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by mx.groups.io with SMTP id smtpd.web11.26660.1701850587670127710 for ; Wed, 06 Dec 2023 00:16:36 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="1118505" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="1118505" X-Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Dec 2023 00:16:35 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10915"; a="837240867" X-IronPort-AV: E=Sophos;i="6.04,254,1695711600"; d="scan'208";a="837240867" X-Received: from shwdesssddpdwei.ccr.corp.intel.com ([10.239.157.28]) by fmsmga008.fm.intel.com with ESMTP; 06 Dec 2023 00:16:34 -0800 From: "Sheng Wei" To: devel@edk2.groups.io Cc: Eric Dong , Ray Ni , Laszlo Ersek , Wu Jiaxin , Tan Dun Subject: [edk2-devel] [PATCH v7 5/5] UefiCpuPkg: Backup and Restore MSR IA32_U_CET in SMI handler. Date: Wed, 6 Dec 2023 16:16:24 +0800 Message-Id: <20231206081624.1370-6-w.sheng@intel.com> In-Reply-To: <20231206081624.1370-1-w.sheng@intel.com> References: <20231206081624.1370-1-w.sheng@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,w.sheng@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: HAV5WtwAxU1yT5I9oZQ4kxPdx1787277AA= Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1701850598172100023 Content-Type: text/plain; charset="utf-8" OS may enable CET-IBT feature by set MSR IA32_U_CET.bit2. If IA32_U_CET.bit2 is set, CPU is in WAIT_FOR_ENDBRANCH state and the next assemble code is not ENDBR, it will trigger #CP exception when set CR4.CET bit. SMI handler needs to backup MSR IA32_U_CET and clear MSR IA32_U_CET before set CR4.CET bit, And SMI handler needs to restore MSR IA32_U_CET when exit SMI handler. Signed-off-by: Sheng Wei Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Cc: Wu Jiaxin Cc: Tan Dun --- UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm | 15 +++++++++++++++ UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm | 15 +++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm b/UefiCpuPkg/PiSm= mCpuDxeSmm/Ia32/SmiEntry.nasm index 1da9afab97..9e1155dee6 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm @@ -202,11 +202,21 @@ ASM_PFX(mPatchCetSupported): push edx push eax =20 + mov ecx, MSR_IA32_U_CET + rdmsr + push edx + push eax + mov ecx, MSR_IA32_PL0_SSP rdmsr push edx push eax =20 + mov ecx, MSR_IA32_U_CET + xor eax, eax + xor edx, edx + wrmsr + mov ecx, MSR_IA32_S_CET mov eax, MSR_IA32_CET_SH_STK_EN xor edx, edx @@ -276,6 +286,11 @@ CetDone: pop edx wrmsr =20 + mov ecx, MSR_IA32_U_CET + pop eax + pop edx + wrmsr + mov ecx, MSR_IA32_S_CET pop eax pop edx diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm b/UefiCpuPkg/PiSmm= CpuDxeSmm/X64/SmiEntry.nasm index abf9f1a90a..881d3177f7 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm @@ -217,6 +217,11 @@ ASM_PFX(mPatchCetSupported): push rdx push rax =20 + mov ecx, MSR_IA32_U_CET + rdmsr + push rdx + push rax + mov ecx, MSR_IA32_PL0_SSP rdmsr push rdx @@ -227,6 +232,11 @@ ASM_PFX(mPatchCetSupported): push rdx push rax =20 + mov ecx, MSR_IA32_U_CET + xor eax, eax + xor edx, edx + wrmsr + mov ecx, MSR_IA32_S_CET mov eax, MSR_IA32_CET_SH_STK_EN xor edx, edx @@ -325,6 +335,11 @@ mCetSupportedAbsAddr: pop rdx wrmsr =20 + mov ecx, MSR_IA32_U_CET + pop rax + pop rdx + wrmsr + mov ecx, MSR_IA32_S_CET pop rax pop rdx --=20 2.26.2.windows.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 (#112099): https://edk2.groups.io/g/devel/message/112099 Mute This Topic: https://groups.io/mt/103009381/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-