[edk2-devel] [PATCH v1 0/7] Add linked list iteration macros to BaseLib.h
Wu, Hao A
hao.a.wu at intel.com
Fri Apr 10 01:43:04 UTC 2020
> -----Original Message-----
> From: michael.kubacki at outlook.com [mailto:michael.kubacki at outlook.com]
> Sent: Friday, April 10, 2020 4:05 AM
> To: devel at edk2.groups.io
> Cc: Zhang, Chao B; Bi, Dandan; Wu, Hao A; Wang, Jian J; Gao, Liming; Kinney,
> Michael D; Ni, Ray; Sean Brogan
> Subject: [PATCH v1 0/7] Add linked list iteration macros to BaseLib.h
>
> From: Michael Kubacki <michael.kubacki at microsoft.com>
>
> REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1959
>
> The macros EFI_LIST_FOR_EACH and EFI_LIST_FOR_EACH_SAFE have been
> duplicated across several drivers such as:
>
> * EhciPei
> * EhciDxe
> * HddPasswordDxe
> * RamDiskDxe
> * UfsPassThruDxe
> * XhciDxe
>
> These macros have proven useful and established a commonly used pattern
> for linked list iteration.
>
> This patch series consolidates the definitions to a single definition in
> BaseLib.h so they are maintained alongside other pre-existing generic
> linked list macros and functions.
>
> Note: Another commonly used generic linked list macro is
> EFI_LIST_CONTAINER.
> I'm considering consolidating that to BaseLib.h as well but that is not
> done in this patch series since it satisfies a separate use case than the
> iteration macros and the change can be made independently.
>
> On a separate note, shallow threading might not work on this patch series
> due to changes made by the SMTP server. Please bear with me while I am
> investigating if this can be changed.
>
> Cc: Chao Zhang <chao.b.zhang at intel.com>
> Cc: Dandan Bi <dandan.bi at intel.com>
> Cc: Hao A Wu <hao.a.wu at intel.com>
> Cc: Jian J Wang <jian.j.wang at intel.com>
> Cc: Liming Gao <liming.gao at intel.com>
> Cc: Michael D Kinney <michael.d.kinney at intel.com>
> Cc: Ray Ni <ray.ni at intel.com>
> Cc: Sean Brogan <sean.brogan at microsoft.com>
> Signed-off-by: Michael Kubacki <michael.kubacki at microsoft.com>
>
> Michael Kubacki (7):
> MdePkg/BaseLib: Add linked list iteration macros
> MdeModulePkg/EhciDxe: Use BaseLib linked list iteration macros
> MdeModulePkg/EhciPei: Use BaseLib linked list iteration macros
> MdeModulePkg/XhciDxe: Use BaseLib linked list iteration macros
> MdeModulePkg/UfsPassThruDxe: Use BaseLib linked list iteration macros
> MdeModulePkg/RamDiskDxe: Use BaseLib linked list iteration macros
Hello Michael,
I found that for EhciPei, it does not have explicit dependency on the BaseLib,
could you help to add it?
With this handled, for the MdeModulePkg changes (patch 2~6):
Reviewed-by: Hao A Wu <hao.a.wu at intel.com>
Best Regards,
Hao Wu
> SecurityPkg/HddPassword: Use BaseLib linked list iteration macros
>
> MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.c | 3 ++-
> MdeModulePkg/Bus/Pci/EhciDxe/EhciSched.c | 11 ++++----
> MdeModulePkg/Bus/Pci/EhciDxe/EhciUrb.c | 5 ++--
> MdeModulePkg/Bus/Pci/EhciPei/EhciSched.c | 3 ++-
> MdeModulePkg/Bus/Pci/EhciPei/EhciUrb.c | 5 ++--
> MdeModulePkg/Bus/Pci/XhciDxe/XhciSched.c | 9 ++++---
> MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.c | 3 ++-
> MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThruHci.c | 3 ++-
> MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskDriver.c | 3 ++-
> MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskImpl.c | 9 ++++---
> MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskProtocol.c | 5 ++--
> SecurityPkg/HddPassword/HddPasswordDxe.c | 13 +++++-----
> MdeModulePkg/Bus/Pci/EhciDxe/Ehci.h | 15 +----------
> MdeModulePkg/Bus/Pci/EhciPei/EhcPeim.h | 15 +----------
> MdeModulePkg/Bus/Pci/XhciDxe/Xhci.h | 9 +------
> MdeModulePkg/Bus/Ufs/UfsPassThruDxe/UfsPassThru.h | 9 +------
> MdeModulePkg/Universal/Disk/RamDiskDxe/RamDiskImpl.h | 15 +---------
> -
> MdePkg/Include/Library/BaseLib.h | 27
> ++++++++++++++++++++
> SecurityPkg/HddPassword/HddPasswordDxe.h | 7 +----
> 19 files changed, 75 insertions(+), 94 deletions(-)
>
> --
> 2.16.3.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#57165): https://edk2.groups.io/g/devel/message/57165
Mute This Topic: https://groups.io/mt/72905932/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list