summaryrefslogtreecommitdiffstats
path: root/UefiCpuPkg/Include
diff options
context:
space:
mode:
authorHao A Wu <hao.a.wu@intel.com>2019-12-19 14:33:44 +0800
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2020-01-02 03:10:36 +0000
commitd786a1723203e91c92615c58d217e35b0d894004 (patch)
treeff4cd3da64c27099693db35a5faa67c8d6eb0c1c /UefiCpuPkg/Include
parent999463c865d3768a8432a89508096ae6a43873a5 (diff)
downloadedk2-d786a1723203e91c92615c58d217e35b0d894004.tar.gz
edk2-d786a1723203e91c92615c58d217e35b0d894004.tar.bz2
edk2-d786a1723203e91c92615c58d217e35b0d894004.zip
UefiCpuPkg/MpInitLib: Reduce the size when loading microcode patches
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2429 This commit will attempt to reduce the copy size when loading the microcode patches data from flash into memory. Such optimization is done by a pre-process of the microcode patch headers (on flash). A microcode patch will be loaded into memory only when the below 3 criteria are met: A. With a microcode patch header (which means the data is not padding data between microcode patches); B. The 'ProcessorSignature' & 'ProcessorFlags' fields in the header match at least one processor within system; C. If the Extended Signature Table exists in a microcode patch, the 'ProcessorSignature' & 'ProcessorFlag' fields in the table entries match at least one processor within system. Criterion B and C will require all the processors to be woken up once to collect their CPUID and Platform ID information. Hence, this commit will move the copy, detect and apply of microcode patch on BSP and APs after all the processors have been woken up. Cc: Eric Dong <eric.dong@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Siyuan Fu <siyuan.fu@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Hao A Wu <hao.a.wu@intel.com> Reviewed-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Ray Ni <ray.ni@intel.com>
Diffstat (limited to 'UefiCpuPkg/Include')
0 files changed, 0 insertions, 0 deletions