On 1/11/23 09:35, Wu, Jiaxin wrote:
> Mainly changes as below:
> 1. Add Smm Base HOB, which is used to store the information of
> Smm Relocated SmBase array for each Processors;
> 2. Combine 2 SMIs (gcSmmInitTemplate & gcSmiHandlerTemplate) into one
> (gcSmiHandlerTemplate), the new SMI handler needs to run to 2 paths: one
> to SmmCpuFeaturesInitializeProcessor(), the other to SMM Core Entry Point.
> 3. Issue SMI IPI (All Excluding Self SMM IPI + BSP SMM IPI) for SMM init
> before normal SMI sources happen.
> 4. Call SmmCpuFeaturesInitializeProcessor() in parallel.
> 
> v2:
> - Refine the coding style
> - Rename hob to gSmmBaseHobGuid
> - Update SmmInitHandler() to handle the SMM relocation
> - Correct the S3 for SMM relocation
> 
> v1:
> - Thread: https://edk2.groups.io/g/devel/message/97748
> 
> Change-Id: Iec7bf25166bfeefb44a202285465a35b5debbce4

(1) Please don't include this in upstream patches.

> Cc: Eric Dong <eric.d...@intel.com>
> Cc: Ray Ni <ray...@intel.com>
> Cc: Zeng Star <star.z...@intel.com>
> Signed-off-by: Jiaxin Wu <jiaxin...@intel.com>

(2) This patch is for UefiCpuPkg, but Gerd has not been CC'd, as far as
I can tell. CC'ing him now. (Please refer to commit 0aca5901e344,
"Maintainers.txt: designate Gerd Hoffmann as UefiCpuPkg reviewer",
2023-01-06).

> ---
>  UefiCpuPkg/Include/Guid/SmmBaseHob.h               |  36 +++++
>  .../Library/SmmCpuFeaturesLib/CpuFeaturesLib.h     |   2 +
>  .../SmmCpuFeaturesLib/IntelSmmCpuFeaturesLib.c     |  24 +++-
>  .../SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf        |   4 +
>  .../SmmCpuFeaturesLib/SmmCpuFeaturesLibStm.inf     |   1 +
>  UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmStm.c      |   1 -
>  .../StandaloneMmCpuFeaturesLib.inf                 |   4 +
>  UefiCpuPkg/PiSmmCpuDxeSmm/CpuS3.c                  |  39 +++++-
>  UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c              |  25 +++-
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c         | 149 
> ++++++++++++++++-----
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h         |  21 ++-
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf       |   1 +
>  UefiCpuPkg/UefiCpuPkg.dec                          |   3 +
>  13 files changed, 261 insertions(+), 49 deletions(-)
>  create mode 100644 UefiCpuPkg/Include/Guid/SmmBaseHob.h

(3) The patch extends the interface between PiSmmCpuDxeSmm and multipe
SmmCpuFeaturesLib instances. There is no concise and complete design
description, either in the commit message, or in a TianoCore bugzilla
ticket (no reference in your commit message), or in the new header file
"SmmBaseHob.h".

(4) The commit modifies multiple modules at once. In a producer-consumer
scenario (which is usually characteristic of HOBs), we tend to extend
the producer first (if there are multiple producers, then each in
separation), and then the consumers. Usually the consumers are expected
to keep compatibility with the lack of the HOB, if possible.

The compatibility aspects are not explained, and the modifications are
squashed together in a single patch. Unacceptable.

(5) OvmfPkg includes its own SmmCpuFeaturesLib instance, but there's not
a peep about OvmfPkg in the patch (code or commit message), not even an
explanation why OvmfPkg is supposed to be unaffected. Unacceptable.

Nacked-by: Laszlo Ersek <ler...@redhat.com>



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98362): https://edk2.groups.io/g/devel/message/98362
Mute This Topic: https://groups.io/mt/96196283/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to