Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-19 Thread Yuanhao Xie
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

Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-17 Thread Laszlo Ersek
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

Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-16 Thread Ni, Ray
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

Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-13 Thread Laszlo Ersek
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-

Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-13 Thread Gerd Hoffmann
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

Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-13 Thread Yuanhao Xie
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);

Re: [edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-13 Thread Gerd Hoffmann
> 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 >)

[edk2-devel] [Patch V4] UefiCpuPkg/MpInitLib: Enable execute disable bit.

2023-11-12 Thread Yuanhao Xie
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