summaryrefslogtreecommitdiffstats
path: root/UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c
diff options
context:
space:
mode:
authorDamian Nikodem <damian.nikodem@intel.com>2019-09-11 16:23:01 +0800
committerEric Dong <eric.dong@intel.com>2019-09-20 14:37:42 +0800
commit832c4c7ad6109847b2e7fdcca6bf539106523c61 (patch)
tree3e27ee777af5cedc800024e6e495a67fc3031a92 /UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c
parentd7bf973e43ad949706f936f61cd6be8e63ce136f (diff)
downloadedk2-832c4c7ad6109847b2e7fdcca6bf539106523c61.tar.gz
edk2-832c4c7ad6109847b2e7fdcca6bf539106523c61.tar.bz2
edk2-832c4c7ad6109847b2e7fdcca6bf539106523c61.zip
UefiCpuPkg: Fix potential spinLock issue in SmmStartupThisAp
Due to needs a tackling the deficiency of the AP API, it's necessary to ensure that in non-blocking mode previous AP executed command is finished before starting new one. To remedy above: 1) execute AcquireSpinLock instead AcquireSpinLockOrFail - this will ensure time "window" to eliminate potential race condition between BSP and AP spinLock release in non-blocking mode. This also will eliminate possibility to start executing new AP function before last is finished. 2) remove returns EFI_STATUS - EFI_NOT_READY - in new scenario returned status is not necessary to caller. Signed-off-by: Damian Nikodem <damian.nikodem@intel.com> Reviewed-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Ray Ni <ray.ni@intel.com> Cc: Benjamin You <benjamin.you@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Cc: Krzysztof Rusocki <krzysztof.rusocki@intel.com>
Diffstat (limited to 'UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c')
0 files changed, 0 insertions, 0 deletions