Reviewed-by: Ray Ni <ray.ni@intel.com>
Thanks,
Ray
> -----Original Message-----
> From: Sheng, W <w.sheng@intel.com>
> Sent: Tuesday, November 21, 2023 3:03 PM
> To: devel@edk2.groups.io
> Cc: Dong, Eric <eric.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Laszlo
> Ersek <lersek@redhat.com>; Wu, Jiaxin <jiaxin.wu@intel.com>; Tan, Dun
> <dun.tan@intel.com>
> Subject: [PATCH v6 4/6] UefiCpuPkg: Only change CR4.CET bit for enable and
> disable CET.
>
> Signed-off-by: Sheng Wei <w.sheng@intel.com>
> Cc: Eric Dong <eric.dong@intel.com>
> Cc: Ray Ni <ray.ni@intel.com>
> Cc: Laszlo Ersek <lersek@redhat.com>
> Cc: Wu Jiaxin <jiaxin.wu@intel.com>
> Cc: Tan Dun <dun.tan@intel.com>
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
> ---
> 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/PiSmmCpuDxeSmm/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
>
>
>
> - mov eax, 0x668 | CR4_CET
>
> + ; set CR4.CET bit for enable CET
>
> + mov eax, cr4
>
> + bts eax, CR4_CET_BIT
>
> mov cr4, eax
>
>
>
> setssbsy
>
> @@ -264,8 +266,10 @@ CetDone:
> cmp al, 0
>
> jz CetDone2
>
>
>
> - 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
>
>
>
> mov ecx, MSR_IA32_PL0_SSP
>
> pop eax
>
> diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm
> b/UefiCpuPkg/PiSmmCpuDxeSmm/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
>
>
>
> - mov eax, 0x668 | CR4_CET
>
> + ; set CR4.CET bit for enable CET
>
> + mov rax, cr4
>
> + bts rax, CR4_CET_BIT
>
> mov cr4, rax
>
>
>
> setssbsy
>
> @@ -308,8 +310,10 @@ mCetSupportedAbsAddr:
> cmp al, 0
>
> jz CetDone2
>
>
>
> - 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
>
>
>
> mov ecx, MSR_IA32_INTERRUPT_SSP_TABLE_ADDR
>
> pop rax
>
> --
> 2.26.2.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111528): https://edk2.groups.io/g/devel/message/111528
Mute This Topic: https://groups.io/mt/102724275/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/leave/3901457/1787277/102458076/xyzzy [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-