On 01/09/14 01:45, Jordan Justen wrote: > From: Laszlo Ersek <[email protected]> > > "IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf" > currently specifies a DepEx on gEfiMpServiceProtocolGuid (MP Services). > > The justification is the following code sequence: > > InstallAcpiS3Save() > if PcdFrameworkCompatibilitySupport is set: > InstallAcpiS3SaveThunk() > if EFI_MP_SERVICES_PROTOCOL is available: > GetVariable(ACPI_GLOBAL_VARIABLE) > > In English, the AcpiS3SaveDxe driver insists on the presence of MP > Services *unconditionally* because, > > - if PcdFrameworkCompatibilitySupport is set (the default is false), > - and MP Services are available (which is constant true under the above > condition), > > then the AcpiS3SaveDxe driver would like to get the ACPI_GLOBAL_VARIABLE > variable from the MP Services driver, rather than setting it itself. > > The DepEx prevents AcpiS3SaveDxe from loading under OvmfPkg, since we > provide no MP Services implementation. This is particularly broken since > the default PcdFrameworkCompatibilitySupport value is FALSE, making the > entire code that would look at EFI_MP_SERVICES_PROTOCOL dead. > > Copy AcpiS3SaveDxe to OvmfPkg, substitute PcdFrameworkCompatibilitySupport > with constant FALSE, and remove all code that becomes dead, including the > DepEx. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Laszlo Ersek <[email protected]> > --- > OvmfPkg/AcpiS3SaveDxe/AcpiS3Save.c | 556 > ++++++++++++++++++++++++++++++++ > OvmfPkg/AcpiS3SaveDxe/AcpiS3Save.h | 59 ++++ > OvmfPkg/AcpiS3SaveDxe/AcpiS3SaveDxe.inf | 76 +++++ > 3 files changed, 691 insertions(+) > create mode 100644 OvmfPkg/AcpiS3SaveDxe/AcpiS3Save.c > create mode 100644 OvmfPkg/AcpiS3SaveDxe/AcpiS3Save.h > create mode 100644 OvmfPkg/AcpiS3SaveDxe/AcpiS3SaveDxe.inf
I assume this patch has not been changed, right? I'm asking because there's no changeset from you, nor an R-b line. I guess you'll want to add your R-b if you keep this patch. Thanks, Laszlo ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/edk2-devel
