audk/UefiCpuPkg/Library/MpInitLib
Jian J Wang e9415e4846 UefiCpuPkg/MpLib: Add GDTR, IDTR and TR in saved AP data
In current implementation of CPU MP service, AP is initialized with data
copied from BSP. Stack switch required by Stack Guard feature needs different
GDT, IDT table and task gates for each logic processor. This patch adds GDTR,
IDTR and TR into structure CPU_VOLATILE_REGISTERS and related code in save
and restore methods. This can make sure that any changes to GDT, IDT and task
gate for an AP will be kept from overwritten by BSP settings.

Cc: Eric Dong <eric.dong@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Suggested-by: Ayellet Wolman <ayellet.wolman@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jian J Wang <jian.j.wang@intel.com>
Reviewed-by: Jeff Fan <vanjeff_919@hotmail.com>
Reviewed-by: Jiewen.yao@intel.com
2017-12-08 14:38:50 +08:00
..
Ia32 UefiCpuPkg/MpInitLib: Enhance waiting for AP initialization logic. 2017-10-24 16:05:37 +08:00
X64 UefiCpuPkg/MpInitLib: Enhance waiting for AP initialization logic. 2017-10-24 16:05:37 +08:00
DxeMpInitLib.inf UefiCpuPkg: Update Guid usage in DxeMpInitLib INF to match source code logic 2017-10-10 18:10:19 +08:00
DxeMpInitLib.uni
DxeMpLib.c UefiCpuPkg MpInitLib: Save/restore original WakeupBuffer for DxeMpLib 2017-08-15 17:25:30 +08:00
Microcode.c UefiCpuPkg/MpInitLib: Avoid call PcdGet* in Ap & Bsp. 2017-10-20 10:30:46 +08:00
MpLib.c UefiCpuPkg/MpLib: Add GDTR, IDTR and TR in saved AP data 2017-12-08 14:38:50 +08:00
MpLib.h UefiCpuPkg/MpLib: Add GDTR, IDTR and TR in saved AP data 2017-12-08 14:38:50 +08:00
PeiMpInitLib.inf UefiCpuPkg/MpInitLib: needn't to allocate AP reset vector 2017-04-26 08:55:44 +08:00
PeiMpInitLib.uni
PeiMpLib.c UefiCpuPkg MpInitLib: Save/restore original WakeupBuffer for DxeMpLib 2017-08-15 17:25:30 +08:00