From: "Zeng, Star" <star.zeng@intel.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: edk2-devel@lists.01.org, star.zeng@intel.com
Subject: Re: [PATCH 08/12] ArmVirtXen: Use merged variable driver for emulated NV mode
Date: Mon, 14 Jan 2019 23:25:02 +0800 [thread overview]
Message-ID: <960f9912-b934-0a44-126d-f1887666f60c@intel.com> (raw)
In-Reply-To: <45e10e1d-c410-6fb2-22e3-0bab184f7f15@redhat.com>
Hi Laszlo,
On 2019/1/14 19:40, Laszlo Ersek wrote:
> 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.
Agree.
>
> (2) The resolutions for the AuthVariableLib, TpmMeasurementLib,
> VarCheckLib classes seem superfluous; they are already in effect, from
> "ArmVirt.dsc.inc".
Good information.
>
> (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)?
A new patch has been added for it in V2 patch series at
https://lists.01.org/pipermail/edk2-devel/2019-January/035015.html.
Thanks,
Star
>
> 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 15:25 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
2019-01-14 15:25 ` Zeng, Star [this message]
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=960f9912-b934-0a44-126d-f1887666f60c@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