UefiCpuPkg/PiSmmCpuDxeSmm: Using CPU semaphores in aligned buffer

Update each CPU semaphores to the ones in allocated aligned
semaphores buffer.

Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Regression-tested-by: Laszlo Ersek <lersek@redhat.com>
This commit is contained in:
Jeff Fan
2016-03-22 10:21:27 +08:00
committed by Michael Kinney
parent 4e92058113
commit ed3d5ecb34
3 changed files with 49 additions and 39 deletions

View File

@@ -246,7 +246,7 @@ SmmReadSaveState (
// the pseudo register value for EFI_SMM_SAVE_STATE_REGISTER_PROCESSOR_ID is returned in Buffer.
// Otherwise, EFI_NOT_FOUND is returned.
//
if (mSmmMpSyncData->CpuData[CpuIndex].Present) {
if (*(mSmmMpSyncData->CpuData[CpuIndex].Present)) {
*(UINT64 *)Buffer = gSmmCpuPrivate->ProcessorInfo[CpuIndex].ProcessorId;
return EFI_SUCCESS;
} else {
@@ -254,7 +254,7 @@ SmmReadSaveState (
}
}
if (!mSmmMpSyncData->CpuData[CpuIndex].Present) {
if (!(*(mSmmMpSyncData->CpuData[CpuIndex].Present))) {
return EFI_INVALID_PARAMETER;
}