From: Laszlo Ersek <lersek@redhat.com>
To: Star Zeng <star.zeng@intel.com>
Cc: edk2-devel@lists.01.org, Julien Grall <julien.grall@linaro.org>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>
Subject: Re: [PATCH 08/12] ArmVirtXen: Use merged variable driver for emulated NV mode
Date: Mon, 14 Jan 2019 12:40:10 +0100 [thread overview]
Message-ID: <45e10e1d-c410-6fb2-22e3-0bab184f7f15@redhat.com> (raw)
In-Reply-To: <1547393875-37188-9-git-send-email-star.zeng@intel.com>
On 01/13/19 16:37, Star Zeng wrote:
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1323
> Merge EmuVariable and Real variable driver.
>
> The real variable driver has been updated to support emulated
> variable NV mode and the EmuVariableRuntimeDxe will be removed
> later, so use merged variable driver for emulated NV mode.
>
> Cc: Laszlo Ersek <lersek@redhat.com>
> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
(1) Please CC Julien Grall (I'm adding him now); he's listed as a
Reviewer for ArmVirtPkg in "Maintainers.txt", and we depend on him for
Xen testing.
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Star Zeng <star.zeng@intel.com>
> ---
> ArmVirtPkg/ArmVirtXen.dsc | 11 +++++++++--
> ArmVirtPkg/ArmVirtXen.fdf | 4 ++--
> 2 files changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc
> index a29d8a4ae717..126782372a58 100644
> --- a/ArmVirtPkg/ArmVirtXen.dsc
> +++ b/ArmVirtPkg/ArmVirtXen.dsc
> @@ -1,7 +1,7 @@
> #
> # Copyright (c) 2011-2015, ARM Limited. All rights reserved.
> # Copyright (c) 2014, Linaro Limited. All rights reserved.
> -# Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
> +# Copyright (c) 2015 - 2019, Intel Corporation. All rights reserved.<BR>
> #
> # This program and the accompanying materials
> # are licensed and made available under the terms and conditions of the BSD License
> @@ -172,7 +172,14 @@ [Components.common]
> MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
> MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
>
> - MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
> + MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
> + <PcdsFixedAtBuild>
> + gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvModeEnable|TRUE
> + <LibraryClasses>
> + AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLibNull.inf
> + TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasurementLibNull.inf
> + VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
> + }
OK, I've stared at this long and hard, to see if we should try to unify
it with the ArmVirtQemu* platforms. Ultimately, I don't think so (see
commits 44d71c217ccbd and bf453d581ecff, which don't apply to Xen).
Thus, I agree that adding the "VariableRuntimeDxe.inf" reference
*itself* to "ArmVirtXen.dsc" is fine.
That said, I'd suggest some tweaks:
(1) I think we should add the "PcdEmuVariableNvModeEnable" override
simply to the [PcdsFixedAtBuild.common] section of "ArmVirtXen.dsc". I
think there's no reason to scope the PCD more narrowly than that; so for
clarity, we shouldn't.
(2) The resolutions for the AuthVariableLib, TpmMeasurementLib,
VarCheckLib classes seem superfluous; they are already in effect, from
"ArmVirt.dsc.inc".
(3) The following tweak should be covered in an additional patch:
- In commit 7a9f5b202c7a ("ArmVirtPkg: Link separated VarCheckUefiLib
NULL class library instance", 2015-08-25), you linked VarCheckUefiLib
into VariableRuntimeDxe in ArmVirtQemu.
- In commit 8de84d424221 ("ArmVirtPkg: implement ArmVirtQemuKernel",
2016-02-05), Ard created the ArmVirtQemuKernel platform with
VarCheckUefiLib used at once.
- So I think at this point we should link VarCheckUefiLib into
ArmVirtXen's VariableRuntimeDxe binary as well -- however, because it is
a functional change, and not strictly related to this driver
unification, it should be a separate patch.
If you decide that (3) is out of scope for this work, we can file a BZ
for it and address it separately -- after BZ#1323 is fixed. Otherwise,
if it's not a big burden, you could include the patch in this series
too. Can you please state which approach you prefer, for (3)?
Thank you!
Laszlo
>
> MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
> MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
> diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf
> index 50e670254d52..5655c0df2926 100644
> --- a/ArmVirtPkg/ArmVirtXen.fdf
> +++ b/ArmVirtPkg/ArmVirtXen.fdf
> @@ -1,7 +1,7 @@
> #
> # Copyright (c) 2011-2015, ARM Limited. All rights reserved.
> # Copyright (c) 2014, Linaro Limited. All rights reserved.
> -# Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>
> +# Copyright (c) 2015 - 2019, Intel Corporation. All rights reserved.<BR>
> #
> # This program and the accompanying materials
> # are licensed and made available under the terms and conditions of the BSD License
> @@ -137,7 +137,7 @@ [FV.FvMain]
> INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
> INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
>
> - INF MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
> + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf
>
> INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
> INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
>
next prev parent reply other threads:[~2019-01-14 11:40 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-13 15:37 [PATCH 00/12] Merge EmuVariable and Real variable driver Star Zeng
2019-01-13 15:37 ` [PATCH 01/12] MdeModulePkg Variable: Add some missing changes for 9b18845 Star Zeng
2019-01-14 10:15 ` Laszlo Ersek
2019-01-14 10:29 ` Zeng, Star
2019-01-13 15:37 ` [PATCH 02/12] MdeModulePkg Variable: Abstract InitRealNonVolatileVariableStore Star Zeng
2019-01-13 15:37 ` [PATCH 03/12] MdeModulePkg Variable: Not get NV PCD in VariableWriteServiceInitialize Star Zeng
2019-01-13 15:37 ` [PATCH 04/12] MdeModulePkg Variable: Abstract VariableWriteServiceInitializeDxe/Smm Star Zeng
2019-01-13 15:37 ` [PATCH 05/12] MdeModulePkg: Add PcdEmuVariableNvModeEnable in dsc Star Zeng
2019-01-14 10:22 ` Laszlo Ersek
2019-01-14 10:30 ` Zeng, Star
2019-01-13 15:37 ` [PATCH 06/12] MdeModulePkg Variable: Add emulated variable NV mode support Star Zeng
2019-01-14 10:57 ` Laszlo Ersek
2019-01-14 15:23 ` Zeng, Star
2019-01-13 15:37 ` [PATCH 07/12] MdeModulePkg VariablePei: Don't check BOOT_IN_RECOVERY_MODE Star Zeng
2019-01-13 15:37 ` [PATCH 08/12] ArmVirtXen: Use merged variable driver for emulated NV mode Star Zeng
2019-01-14 11:40 ` Laszlo Ersek [this message]
2019-01-14 15:25 ` Zeng, Star
2019-01-13 15:37 ` [PATCH 09/12] BeagleBoardPkg: " Star Zeng
2019-01-13 15:37 ` [PATCH 10/12] QuarkMin: " Star Zeng
2019-01-13 15:37 ` [PATCH 11/12] CorebootPayloadPkg: " Star Zeng
2019-01-13 15:37 ` [PATCH 12/12] MdeModule: Remove EmuVariableRuntimeDxe Star Zeng
2019-01-23 1:03 ` Wang, Jian J
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=45e10e1d-c410-6fb2-22e3-0bab184f7f15@redhat.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