summaryrefslogtreecommitdiff
path: root/BaseTools/Source/Python/PatchPcdValue/PatchPcdValue.py
diff options
context:
space:
mode:
authorJeff Fan <jeff.fan@intel.com>2016-07-15 14:24:28 +0800
committerMichael Kinney <michael.d.kinney@intel.com>2016-07-20 18:50:53 -0700
commite78a2a49ee6b0c0d7c6997c87ace31d7761cf636 (patch)
tree5c14fc5408ec4c29e40657cbd4a92d68cafe4d69 /BaseTools/Source/Python/PatchPcdValue/PatchPcdValue.py
parent8ff7187cfd998d2b6db43075a4a7908281b6da00 (diff)
downloadedk2-platforms-e78a2a49ee6b0c0d7c6997c87ace31d7761cf636.tar.xz
UefiCpuPkg/PiSmmCpuDxeSmm: SMM_CPU_DATA_BLOCK is not cleared
The commit 8b9311 changed the zeroing of mSmmMpSyncData of type SMM_DISPATCHER_MP_SYNC_DATA by the following patch. - ZeroMem (mSmmMpSyncData, mSmmMpSyncDataSize); + mSmmMpSyncData->SwitchBsp = FALSE; mSmmMpSyncDataSize not only includes SMM_DISPATCHER_MP_SYNC_DATA, but also includes the SMM_CPU_DATA_BLOCK array and one BOOLEAN variable array as shown here: mSmmMpSyncDataSize = sizeof (SMM_DISPATCHER_MP_SYNC_DATA) + (sizeof (SMM_CPU_DATA_BLOCK) + sizeof (BOOLEAN)) * gSmmCpuPrivate->SmmCoreEntryContext.NumberOfCpus; This patch restores the original ZeroMem() to clear all CPU Sync data. The commit 8b9311 may cause unexpected behavior. v2: Mentioned CandidateBsp array in comments to make it more accurate. Cc: Laszlo Ersek <lersek@redhat.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Michael Kinney <michael.d.kinney@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: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/PatchPcdValue/PatchPcdValue.py')
0 files changed, 0 insertions, 0 deletions