Sent: Friday, November 17, 2023 4:38 PM
To: devel@edk2.groups.io; Ni, Ray ; Xie, Yuanhao
Cc: Dong, Eric ; Kumar, Rahul R ;
Gerd Hoffmann
Subject: Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute
disable bit.
On 11/17/23 08:01, Ni, Ray wrote:
> Laszlo,
> I agree that the
On 11/17/23 08:01, Ni, Ray wrote:
> Laszlo,
> I agree that the BSP's XD status is saved in both CpuMpData and
> ExchangeInfo.
> But, thinking from another perspective, ExchangeInfo is "only" used by
> the assembly
> code. That's why the BSP code needs to save the XD status in CpuMpData
> and Exchan
ric ; Ni, Ray ; Kumar, Rahul
R ; Gerd Hoffmann
Subject: Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute
disable bit.
On 11/13/23 06:59, Yuanhao Xie wrote:
> From: Yuanhao Xie
>
> This patch synchronizes the No-Execute bit in the IA32_EFER
> register for the APs be
On 11/13/23 06:59, Yuanhao Xie wrote:
> From: Yuanhao Xie
>
> This patch synchronizes the No-Execute bit in the IA32_EFER
> register for the APs before the RestoreVolatileRegisters operation.
>
> The commit 964a4f0, titled "Eliminate the second INIT-SIPI-SIPI
> sequence," replaces the second INIT-
On Mon, Nov 13, 2023 at 01:59:48PM +0800, xieyuanh wrote:
> From: Yuanhao Xie
>
> This patch synchronizes the No-Execute bit in the IA32_EFER
> register for the APs before the RestoreVolatileRegisters operation.
>
> The commit 964a4f0, titled "Eliminate the second INIT-SIPI-SIPI
> sequence," rep
Hi Gerd,
In v4 , InterlockedIncrement called is after RestoreVolatileRegisters to ensure
that "finished" reporting from the APs is as
later as possible.
Here is V3:
GetProcessorNumber (CpuMpData, &ProcessorNumber);
- RestoreVolatileRegisters (&CpuMpData->CpuData[0].VolatileRegisters, FALSE);
> diff --git a/UefiCpuPkg/Library/MpInitLib/MpLib.c
> b/UefiCpuPkg/Library/MpInitLib/MpLib.c
> index 9a6ec5db5c..f29e66a14f 100644
> --- a/UefiCpuPkg/Library/MpInitLib/MpLib.c
> +++ b/UefiCpuPkg/Library/MpInitLib/MpLib.c
> @@ -910,9 +910,16 @@ DxeApEntryPoint (
>CPU_MP_DATA *CpuMpData
>)
From: Yuanhao Xie
This patch synchronizes the No-Execute bit in the IA32_EFER
register for the APs before the RestoreVolatileRegisters operation.
The commit 964a4f0, titled "Eliminate the second INIT-SIPI-SIPI
sequence," replaces the second INIT-SIPI-SIPI sequence with the BSP
calling the Switch