public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
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
>>



  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