From: "Ni, Ray" <ray.ni@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
"Wu, Hao A" <hao.a.wu@intel.com>
Cc: "Dong, Eric" <eric.dong@intel.com>,
Laszlo Ersek <lersek@redhat.com>,
"Zeng, Star" <star.zeng@intel.com>,
"Fu, Siyuan" <siyuan.fu@intel.com>,
"Kinney, Michael D" <michael.d.kinney@intel.com>
Subject: Re: [edk2-devel] [PATCH v5 0/6] Microcode related optimizations
Date: Thu, 2 Jan 2020 02:39:38 +0000 [thread overview]
Message-ID: <734D49CCEBEEF84792F5B80ED585239D5C3D0651@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <20191231004914.8520-1-hao.a.wu@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Wu, Hao
> A
> Sent: Tuesday, December 31, 2019 8:49 AM
> To: devel@edk2.groups.io
> Cc: Wu, Hao A <hao.a.wu@intel.com>; Dong, Eric <eric.dong@intel.com>; Ni,
> Ray <ray.ni@intel.com>; Laszlo Ersek <lersek@redhat.com>; Zeng, Star
> <star.zeng@intel.com>; Fu, Siyuan <siyuan.fu@intel.com>; Kinney, Michael
> D <michael.d.kinney@intel.com>
> Subject: [edk2-devel] [PATCH v5 0/6] Microcode related optimizations
>
> Series is also available at:
> https://github.com/hwu25/edk2/tree/mpinitlib_opt_v5
>
> V5 changes:
> A. For patch 2, address a typo to resolve enlarging the microcode patch
> information buffer too early when it is not full;
> B. For patch 4, relocate the logic of storing detected microcode patch
> before the application of microcode patch.
>
> V4 history:
> A. For patch 2, keep the calling sequence of functions:
> MicrocodeDetect() and MtrrGetAllMtrrs() unchanged for BSP.
> B. For patch 2, in function LoadMicrocodePatch(), add the missing logic
> that handles the Extended Signature Table of a microcode patch.
>
>
> V3 history:
> For patch 3, correct license information for newly added header file.
>
> V2 history:
> A. For patch 2, rename function parameters and variables to better reflect
> their usage;
> B. For patch 2, remove unneeded check in LoadMicrocodePatchWorker();
> C. For patch 3, rename a couple of fields in the HOB structure;
> D. For patch 3, update the 'ProcessorSpecificPatchOffset' field to point
> to the microcode patch header instead of microcode patch data;
> E. Add a new patch 5 to address an issue that certain fields in the
> CPU_MP_DATA structure cannot be passed from PEI phase to DXE phase;
> F. Add a new patch 6 to remove the redundant microcode related fields in
> the CPU_MP_DATA structure.
>
> V1 history:
> This series will introduce a couple of optimizations to the MpInitLib with
> regard to microcode:
>
> A. Reduce the copy size when loading the microcode patches data from flash
> into memory;
> B. Produce a HOB to contain microcode patches information for subsequent
> consumers of the microcode patches during the boot flow.
>
> Uni-test done for the series:
> A. System boot to OS/Shell successfully on a real platform;
> B. Add debug message to verify the same microcode patch is applied to each
> processor before and after the series.
>
>
> 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>
>
> Hao A Wu (6):
> UefiCpuPkg/MpInitLib: Collect processors' CPUID & Platform ID info
> UefiCpuPkg/MpInitLib: Reduce the size when loading microcode patches
> UefiCpuPkg: Add definitions for EDKII microcode patch HOB
> UefiCpuPkg/MpInitLib: Produce EDKII microcode patch HOB
> UefiCpuPkg/MpInitLib: Relocate microcode patch fields in CPU_MP_DATA
> UefiCpuPkg/MpInitLib: Remove redundant microcode fields in
> CPU_MP_DATA
>
> UefiCpuPkg/UefiCpuPkg.dec | 3 +
> UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf | 1 +
> UefiCpuPkg/Include/Guid/MicrocodePatchHob.h | 44 +++
> UefiCpuPkg/Library/MpInitLib/MpLib.h | 59 +++-
> UefiCpuPkg/Library/MpInitLib/Microcode.c | 351 ++++++++++++++++++-
> -
> UefiCpuPkg/Library/MpInitLib/MpLib.c | 110 +++---
> UefiCpuPkg/Library/MpInitLib/PeiMpLib.c | 55 +++
> 7 files changed, 513 insertions(+), 110 deletions(-)
> create mode 100644 UefiCpuPkg/Include/Guid/MicrocodePatchHob.h
>
> --
> 2.12.0.windows.1
>
>
>
next prev parent reply other threads:[~2020-01-02 2:39 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-31 0:49 [PATCH v5 0/6] Microcode related optimizations Wu, Hao A
2019-12-31 0:49 ` [PATCH v5 1/6] UefiCpuPkg/MpInitLib: Collect processors' CPUID & Platform ID info Wu, Hao A
2019-12-31 0:49 ` [PATCH v5 2/6] UefiCpuPkg/MpInitLib: Reduce the size when loading microcode patches Wu, Hao A
2019-12-31 1:17 ` Dong, Eric
2019-12-31 0:49 ` [PATCH v5 3/6] UefiCpuPkg: Add definitions for EDKII microcode patch HOB Wu, Hao A
2019-12-31 0:49 ` [PATCH v5 4/6] UefiCpuPkg/MpInitLib: Produce " Wu, Hao A
2019-12-31 1:17 ` [edk2-devel] " Dong, Eric
2019-12-31 0:49 ` [PATCH v5 5/6] UefiCpuPkg/MpInitLib: Relocate microcode patch fields in CPU_MP_DATA Wu, Hao A
2019-12-31 0:49 ` [PATCH v5 6/6] UefiCpuPkg/MpInitLib: Remove redundant microcode " Wu, Hao A
2020-01-02 2:39 ` Ni, Ray [this message]
2020-01-02 3:12 ` [edk2-devel] [PATCH v5 0/6] Microcode related optimizations Wu, Hao A
2020-01-02 15:07 ` Laszlo Ersek
2020-01-03 20:09 ` Laszlo Ersek
2020-01-06 1:36 ` Wu, Hao A
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=734D49CCEBEEF84792F5B80ED585239D5C3D0651@SHSMSX104.ccr.corp.intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox