On 11/27/15 03:34, Laszlo Ersek wrote:
> Public branch: <https://github.com/lersek/edk2/commits/smm3_v5>.
> 
> The big change in this version is that Mike has flattened, cleaned up,
> and incorporated CpuS3DataDxe from OvmfPkg/QuarkPort to UefiCpuPkg.
> (Huge kudos for that again!) The OvmfPkg/QuarkPort directory is
> therefore gone, as are any other mentions of Quark in the source code
> and in the commit messages.
> 
> Another important change is that the series no longer introduces a
> separate null implementation of EFI_PEI_SMM_COMMUNICATION_PPI under
> OvmfPkg -- kudos to Jiewen for suggesting and accepting a PEI LockBoxLib
> patch that has made this possible.
> 
> In addition, the series addresses all agreed-upon v4 feedback, and picks
> up all review tags too (some of which were given dependent on addressing
> said review feedback).
> 
> In total, the following patches have seen modifications -- please see
> their Notes sections individually for the changes:
> 
>   [PATCH v5 02/33] OvmfPkg: Sec: force reinit of BaseExtractGuidedSectionLib 
> handler table
>   [PATCH v5 07/33] OvmfPkg: add PEIM for providing TSEG-as-SMRAM during PEI
>   [PATCH v5 08/33] OvmfPkg: add DXE_DRIVER for providing TSEG-as-SMRAM during 
> boot-time DXE
>   [PATCH v5 09/33] OvmfPkg: implement EFI_SMM_CONTROL2_PROTOCOL with a 
> DXE_RUNTIME_DRIVER
>   [PATCH v5 10/33] OvmfPkg: pull in the SMM IPL and SMM core
>   [PATCH v5 13/33] OvmfPkg: LockBoxLib: -D SMM_REQUIRE excludes our fake 
> lockbox
>   [PATCH v5 14/33] OvmfPkg: PlatformPei: don't allocate fake lockbox if 
> SMM_REQUIRE
>   [PATCH v5 19/33] OvmfPkg: select LocalApicLib instance with x2apic support
>   [PATCH v5 21/33] OvmfPkg: import SmmCpuFeaturesLib from UefiCpuPkg
>   [PATCH v5 22/33] OvmfPkg: SmmCpuFeaturesLib: remove unnecessary bits
>   [PATCH v5 27/33] OvmfPkg: build CpuS3DataDxe for -D SMM_REQUIRE
>   [PATCH v5 28/33] OvmfPkg: build PiSmmCpuDxeSmm for -D SMM_REQUIRE
>   [PATCH v5 33/33] OvmfPkg: README: document SMM status
> 
> In the process I had to drop two R-b tags from Mike, because I had to
> refresh Paolo's patches (marked #21 and #22 above) against the meanwhile
> extended "UefiCpuPkg/Library/SmmCpuFeaturesLib" instance. Although the
> end result in the "OvmfPkg/Library/SmmCpuFeaturesLib" instance is
> exactly the same as before -- modulo the whitespace and comment
> cleanups, and the two new empty APIs now inherited from UefiCpuPkg --, I
> felt the review process would be cleaner and more integral if Mike took
> a look again. Much appreciated.
> 
> Accounting for all of the above, only the following patches need
> reviews:
> 
>   [PATCH v5 21/33] OvmfPkg: import SmmCpuFeaturesLib from UefiCpuPkg
>   [PATCH v5 22/33] OvmfPkg: SmmCpuFeaturesLib: remove unnecessary bits
>   [PATCH v5 27/33] OvmfPkg: build CpuS3DataDxe for -D SMM_REQUIRE
> 
> After which I plan to commit the series.
> 
> Cc: Paolo Bonzini <pbonz...@redhat.com>
> Cc: Jordan Justen <jordan.l.jus...@intel.com>
> Cc: Michael Kinney <michael.d.kin...@intel.com>
> Cc: Jiewen Yao <jiewen....@intel.com>
> 
> Thanks
> Laszlo
> 
> Laszlo Ersek (27):
>   OvmfPkg: introduce -D SMM_REQUIRE and PcdSmmSmramRequire
>   OvmfPkg: Sec: force reinit of BaseExtractGuidedSectionLib handler
>     table
>   OvmfPkg: Sec: assert the build-time calculated end of the scratch
>     buffer
>   OvmfPkg: decompress FVs on S3 resume if SMM_REQUIRE is set
>   OvmfPkg: PlatformPei: allow caching in AddReservedMemoryBaseSizeHob()
>   OvmfPkg: PlatformPei: account for TSEG size with PcdSmmSmramRequire
>     set
>   OvmfPkg: add PEIM for providing TSEG-as-SMRAM during PEI
>   OvmfPkg: add DXE_DRIVER for providing TSEG-as-SMRAM during boot-time
>     DXE
>   OvmfPkg: implement EFI_SMM_CONTROL2_PROTOCOL with a DXE_RUNTIME_DRIVER
>   OvmfPkg: pull in the SMM IPL and SMM core
>   OvmfPkg: pull in CpuIo2Smm driver
>   OvmfPkg: AcpiS3SaveDxe: don't fake LockBox protocol if SMM_REQUIRE
>   OvmfPkg: LockBoxLib: -D SMM_REQUIRE excludes our fake lockbox
>   OvmfPkg: PlatformPei: don't allocate fake lockbox if SMM_REQUIRE
>   OvmfPkg: LockBox: use SMM stack with -D SMM_REQUIRE
>   OvmfPkg: resolve ReportStatusCodeLib for DXE_SMM_DRIVER modules
>   OvmfPkg: resolve CpuExceptionHandlerLib for DXE_SMM_DRIVER modules
>   OvmfPkg: select LocalApicLib instance with x2apic support
>   OvmfPkg: set gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmEnableBspElection to
>     FALSE
>   OvmfPkg: any AP in SMM should not wait for the BSP for more than 100
>     ms
>   OvmfPkg: build CpuS3DataDxe for -D SMM_REQUIRE
>   OvmfPkg: build PiSmmCpuDxeSmm for -D SMM_REQUIRE
>   OvmfPkg: QemuFlashFvbServicesRuntimeDxe: add DXE_SMM_DRIVER build
>   OvmfPkg: QemuFlashFvbServicesRuntimeDxe: adhere to -D SMM_REQUIRE
>   OvmfPkg: consolidate variable driver stack in DSC and FDF files
>   OvmfPkg: pull in SMM-based variable driver stack
>   OvmfPkg: README: document SMM status
> 
> Michael Kinney (1):
>   OvmfPkg: resolve DebugAgentLib for DXE_SMM_DRIVER modules
> 
> Paolo Bonzini (5):
>   OvmfPkg: import SmmCpuFeaturesLib from UefiCpuPkg
>   OvmfPkg: SmmCpuFeaturesLib: remove unnecessary bits
>   OvmfPkg: SmmCpuFeaturesLib: implement SMRAM state save map access
>   OvmfPkg: SmmCpuFeaturesLib: customize state save map format
>   OvmfPkg: use relaxed AP SMM synchronization mode
> 
>  OvmfPkg/OvmfPkg.dec                                                          
>             |  18 +
>  OvmfPkg/OvmfPkgIa32.dsc                                                      
>             | 120 ++-
>  OvmfPkg/OvmfPkgIa32X64.dsc                                                   
>             | 120 ++-
>  OvmfPkg/OvmfPkgX64.dsc                                                       
>             | 120 ++-
>  OvmfPkg/OvmfPkgIa32.fdf                                                      
>             |  57 +-
>  OvmfPkg/OvmfPkgIa32X64.fdf                                                   
>             |  57 +-
>  OvmfPkg/OvmfPkgX64.fdf                                                       
>             |  57 +-
>  OvmfPkg/AcpiS3SaveDxe/AcpiS3SaveDxe.inf                                      
>             |   3 +-
>  OvmfPkg/Library/LockBoxLib/LockBoxBaseLib.inf                                
>             |   3 +
>  OvmfPkg/Library/LockBoxLib/LockBoxDxeLib.inf                                 
>             |   3 +
>  OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf                      
>             |  38 +
>  OvmfPkg/PlatformPei/PlatformPei.inf                                          
>             |   5 +
>  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FvbServicesRuntimeDxe.inf             
>             |   2 +
>  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/{FvbServicesRuntimeDxe.inf => 
> FvbServicesSmm.inf} |  27 +-
>  OvmfPkg/Sec/SecMain.inf                                                      
>             |   6 +
>  OvmfPkg/SmmAccess/SmmAccess2Dxe.inf                                          
>             |  58 ++
>  OvmfPkg/SmmAccess/SmmAccessPei.inf                                           
>             |  69 ++
>  OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf                                    
>             |  66 ++
>  OvmfPkg/Include/Register/QemuSmramSaveStateMap.h                             
>             | 184 +++++
>  OvmfPkg/PlatformPei/Platform.h                                               
>             |   3 +-
>  OvmfPkg/SmmAccess/SmramInternal.h                                            
>             |  89 +++
>  OvmfPkg/AcpiS3SaveDxe/AcpiS3Save.c                                           
>             |  14 +-
>  OvmfPkg/Library/LockBoxLib/LockBoxLib.c                                      
>             |   2 +
>  OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.c                        
>             | 834 ++++++++++++++++++++
>  OvmfPkg/PlatformPei/Fv.c                                                     
>             |  27 +-
>  OvmfPkg/PlatformPei/MemDetect.c                                              
>             |  85 +-
>  OvmfPkg/PlatformPei/Platform.c                                               
>             |   9 +-
>  OvmfPkg/PlatformPei/Xen.c                                                    
>             |   2 +-
>  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceDxe.c                   
>             |   3 +
>  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceSmm.c                   
>             |  69 ++
>  OvmfPkg/QemuFlashFvbServicesRuntimeDxe/QemuFlash.c                           
>             |   1 +
>  OvmfPkg/Sec/SecMain.c                                                        
>             |  37 +-
>  OvmfPkg/SmmAccess/SmmAccess2Dxe.c                                            
>             | 156 ++++
>  OvmfPkg/SmmAccess/SmmAccessPei.c                                             
>             | 393 +++++++++
>  OvmfPkg/SmmAccess/SmramInternal.c                                            
>             | 188 +++++
>  OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.c                                      
>             | 366 +++++++++
>  OvmfPkg/DecomprScratchEnd.fdf.inc                                            
>             |  72 ++
>  OvmfPkg/OvmfPkg.fdf.inc                                                      
>             |   2 +
>  OvmfPkg/README                                                               
>             |  57 ++
>  39 files changed, 3327 insertions(+), 95 deletions(-)
>  create mode 100644 OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf
>  copy OvmfPkg/QemuFlashFvbServicesRuntimeDxe/{FvbServicesRuntimeDxe.inf => 
> FvbServicesSmm.inf} (75%)
>  create mode 100644 OvmfPkg/SmmAccess/SmmAccess2Dxe.inf
>  create mode 100644 OvmfPkg/SmmAccess/SmmAccessPei.inf
>  create mode 100644 OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf
>  create mode 100644 OvmfPkg/Include/Register/QemuSmramSaveStateMap.h
>  create mode 100644 OvmfPkg/SmmAccess/SmramInternal.h
>  create mode 100644 OvmfPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.c
>  create mode 100644 OvmfPkg/QemuFlashFvbServicesRuntimeDxe/FwBlockServiceSmm.c
>  create mode 100644 OvmfPkg/SmmAccess/SmmAccess2Dxe.c
>  create mode 100644 OvmfPkg/SmmAccess/SmmAccessPei.c
>  create mode 100644 OvmfPkg/SmmAccess/SmramInternal.c
>  create mode 100644 OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.c
>  create mode 100644 OvmfPkg/DecomprScratchEnd.fdf.inc
> 

* Committed to SVN as r19034..r19066.

* In the commit message of patch 27 ("OvmfPkg: build CpuS3DataDxe for -D
SMM_REQUIRE"), I fixed a typo before commit: I replaced "S3ResumePei"
with "S3Resume2Pei".

* In some of the commit messages, I had to insert an empty line between
various tags, because the SVN commit hooks complained. This was
necessary typically with:

Signed-off-by: Contributor One
[some...@example.com: blah, blah, blah]
Signed-off-by: Contributor Two

The SVN commit hooks wanted an empty line between "[some...@example.com:
...]" and the next tag.

* Many thanks to everyone who helped make this happen.

Laszlo
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to