Hi All, Here is the branch for these changes in Edk2. https://github.com/dandanbi/edk2/tree/RegisterFilterLibV2 https://github.com/tianocore/edk2/pull/1509
Hi Mike, Liming and Zhiguang, Could you help review the first and last 2 patches in MdePkg? Since we should submit the first 2 patches firstly before the changes of dsc files . Thanks, Dandan > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Dandan > Bi > Sent: Monday, March 22, 2021 4:09 PM > To: devel@edk2.groups.io > Cc: Andrew Fish <af...@apple.com>; Leif Lindholm <l...@nuviainc.com>; > Laszlo Ersek <ler...@redhat.com>; Kinney, Michael D > <michael.d.kin...@intel.com>; Liming Gao <gaolim...@byosoft.com.cn>; > Liu, Zhiguang <zhiguang....@intel.com> > Subject: [edk2-devel] [patch V2 00/29] Add a new library class > RegisterFilterLib in edk2 to filter/trace port IO/MMIO/MSR access > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3246 > RFC: https://edk2.groups.io/g/devel/message/72530 > > Patch 1 is to add RegisterFilterLib Library Class in edk2 to filter/trace port > IO/MMIO/MSR access and add a RegisterFilterLibNull instance. > Patch 2 is to add the MdeLibs.dsc.inc file to MdePkg for some default > libraries > provided by MdePkg and add RegisterFilterLib into it as the first version of > MdeLibs.dsc.inc. > Last 2 patches are to update APIs in IoLib and BaseLib to filter/trace port > IO/MMIO/MSR access. > Remaining patches are to update related dsc files to consume > MdeLibs.dsc.inc for RegisterFilterLib. > > Will submit patch 1 and 2 firstly. > And then update related dsc files in edk2 and edk2platform repo to consume > MdeLibs.dsc.inc for RegisterFilterLib. > At last will submit the patches to update IoLib and BaseLib to filter/trace > port > IO/MMIO/MSR access. > > -- > V2: > Introduce MdeLibs.dsc.inc and add RegisterFilterLib into it as the first > version > of MdeLibs.dsc.inc. > Update Platform dsc to consume the MdeLibs.dsc.inc. > Add the description for the return flag in FilterBeforeXXXX functions in > header file source code. > Extend the years for Intel copyright. > Add mssing change the dsc files in OvmfPkg. > > Cc: Andrew Fish <af...@apple.com> > Cc: Leif Lindholm <l...@nuviainc.com> > Cc: Laszlo Ersek <ler...@redhat.com> > Cc: Michael D Kinney <michael.d.kin...@intel.com> > Cc: Liming Gao <gaolim...@byosoft.com.cn> > Cc: Zhiguang Liu <zhiguang....@intel.com> > > Dandan Bi (29): > MdePkg: Add RegisterFilterLib class and NULL instance > MdePkg: Add MdeLibs.dsc.inc file to MdePkg > ArmPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > ArmPlatformPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > ArmVirtPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > CryptoPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > DynamicTablesPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > EmbeddedPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > EmulatorPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > FatPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > FmpDevicePkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > IntelFsp2Pkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > IntelFsp2WrapperPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > MdeModulePkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > MdePkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > NetworkPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > OvmfPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > PcAtChipsetPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > RedfishPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > SecurityPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > ShellPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > SignedCapsulePkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > SourceLevelDebugPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > StandaloneMmPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > UefiCpuPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > UefiPayloadPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > UnitTestFrameworkPkg: Consume MdeLibs.dsc.inc for RegisterFilterLib > MdePkg/IoLib: Filter/trace port IO/MMIO access > MdePkg/Baseib: Filter/trace MSR access for IA32/X64 > > ArmPkg/ArmPkg.dsc | 2 + > ArmPlatformPkg/ArmPlatformPkg.dsc | 2 + > ArmVirtPkg/ArmVirt.dsc.inc | 4 +- > CryptoPkg/CryptoPkg.dsc | 4 +- > DynamicTablesPkg/DynamicTablesPkg.dsc | 2 + > EmbeddedPkg/EmbeddedPkg.dsc | 4 +- > EmulatorPkg/EmulatorPkg.dsc | 4 +- > FatPkg/FatPkg.dsc | 4 +- > FmpDevicePkg/FmpDevicePkg.dsc | 4 +- > IntelFsp2Pkg/IntelFsp2Pkg.dsc | 4 +- > IntelFsp2Pkg/Tools/Tests/QemuFspPkg.dsc | 2 + > IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc | 4 +- > MdeModulePkg/MdeModulePkg.dsc | 4 +- > MdePkg/Include/Library/RegisterFilterLib.h | 243 ++++++++++++++++ > .../BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf | 3 +- > .../BaseIoLibIntrinsicArmVirt.inf | 3 +- > .../BaseIoLibIntrinsicInternal.h | 3 +- > .../BaseIoLibIntrinsicSev.inf | 3 +- > MdePkg/Library/BaseIoLibIntrinsic/IoLib.c | 95 ++++-- > .../Library/BaseIoLibIntrinsic/IoLibArmVirt.c | 82 +++++- > MdePkg/Library/BaseIoLibIntrinsic/IoLibGcc.c | 58 +++- > MdePkg/Library/BaseIoLibIntrinsic/IoLibMsc.c | 81 ++++-- > MdePkg/Library/BaseIoLibIntrinsic/IoLibNoIo.c | 74 ++++- > MdePkg/Library/BaseLib/BaseLib.inf | 5 +- > MdePkg/Library/BaseLib/Ia32/GccInlinePriv.c | 38 ++- > MdePkg/Library/BaseLib/Ia32/ReadMsr64.c | 38 ++- > MdePkg/Library/BaseLib/Ia32/WriteMsr64.c | 22 +- > MdePkg/Library/BaseLib/X64/GccInlinePriv.c | 43 ++- > MdePkg/Library/BaseLib/X64/ReadMsr64.c | 15 +- > MdePkg/Library/BaseLib/X64/WriteMsr64.c | 13 +- > .../RegisterFilterLibNull.c | 271 ++++++++++++++++++ > .../RegisterFilterLibNull.inf | 23 ++ > .../RegisterFilterLibNull.uni | 13 + > MdePkg/MdeLibs.dsc.inc | 14 + > MdePkg/MdePkg.dec | 7 +- > MdePkg/MdePkg.dsc | 6 +- > NetworkPkg/NetworkPkg.dsc | 4 +- > OvmfPkg/AmdSev/AmdSevX64.dsc | 4 +- > OvmfPkg/Bhyve/BhyveX64.dsc | 4 +- > OvmfPkg/OvmfPkgIa32.dsc | 4 +- > OvmfPkg/OvmfPkgIa32X64.dsc | 4 +- > OvmfPkg/OvmfPkgX64.dsc | 4 +- > OvmfPkg/OvmfXen.dsc | 4 +- > PcAtChipsetPkg/PcAtChipsetPkg.dsc | 4 +- > RedfishPkg/RedfishPkg.dsc | 4 +- > SecurityPkg/SecurityPkg.dsc | 4 +- > ShellPkg/ShellPkg.dsc | 4 +- > SignedCapsulePkg/SignedCapsulePkg.dsc | 4 +- > SourceLevelDebugPkg/SourceLevelDebugPkg.dsc | 4 +- > StandaloneMmPkg/StandaloneMmPkg.dsc | 4 +- > UefiCpuPkg/UefiCpuPkg.dsc | 4 +- > UefiPayloadPkg/UefiPayloadPkg.dsc | 4 +- > .../UnitTestFrameworkPkgTarget.dsc.inc | 4 +- > 53 files changed, 1120 insertions(+), 145 deletions(-) create mode 100644 > MdePkg/Include/Library/RegisterFilterLib.h > create mode 100644 > MdePkg/Library/RegisterFilterLibNull/RegisterFilterLibNull.c > create mode 100644 > MdePkg/Library/RegisterFilterLibNull/RegisterFilterLibNull.inf > create mode 100644 > MdePkg/Library/RegisterFilterLibNull/RegisterFilterLibNull.uni > create mode 100644 MdePkg/MdeLibs.dsc.inc > > -- > 2.18.0.windows.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#73158): https://edk2.groups.io/g/devel/message/73158 Mute This Topic: https://groups.io/mt/81519233/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-