From: "Dandan Bi" <dandan.bi@intel.com>
To: devel@edk2.groups.io
Cc: Andrew Fish <afish@apple.com>, Leif Lindholm <leif@nuviainc.com>,
Laszlo Ersek <lersek@redhat.com>,
Michael D Kinney <michael.d.kinney@intel.com>,
Liming Gao <gaoliming@byosoft.com.cn>,
Zhiguang Liu <zhiguang.liu@intel.com>
Subject: [patch 00/28] Add a new library class RegisterFilterLib in edk2 to filter/trace port IO/MMIO/MSR access
Date: Mon, 15 Mar 2021 11:58:16 +0800 [thread overview]
Message-ID: <20210315035844.32756-1-dandan.bi@intel.com> (raw)
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.
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 RegisterFilterLibNull instance.
Will submit patch 1 firstly and then update related dsc files in edk2 and edk2platform repo to consume RegisterFilterLibNull instance.
At last will submit the patches to update IoLib and BaseLib to filter/trace port IO/MMIO/MSR access.
Cc: Andrew Fish <afish@apple.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Dandan Bi (28):
MdePkg: Add RegisterFilterLib class and NULL instance
ArmPkg: Consume RegisterFilterLibNull instance
ArmPlatformPkg: Consume RegisterFilterLibNull instance
ArmVirtPkg: Consume RegisterFilterLibNull instance
CryptoPkg: Consume RegisterFilterLibNull instance
DynamicTablesPkg: Consume RegisterFilterLibNull instance
EmbeddedPkg: Consume RegisterFilterLibNull instance
EmulatorPkg: Consume RegisterFilterLibNull instance
FatPkg: Consume RegisterFilterLibNull instance
FmpDevicePkg: Consume RegisterFilterLibNull instance
IntelFsp2Pkg: Consume RegisterFilterLibNull instance
IntelFsp2WrapperPkg: Consume RegisterFilterLibNull instance
MdeModulePkg: Consume RegisterFilterLibNull instance
MdePkg: Consume RegisterFilterLibNull instance
NetworkPkg: Consume RegisterFilterLibNull instance
OvmfPkg: Consume RegisterFilterLibNull instance
PcAtChipsetPkg: Consume RegisterFilterLibNull instance
RedfishPkg: Consume RegisterFilterLibNull instance
SecurityPkg: Consume RegisterFilterLibNull instance
ShellPkg: Consume RegisterFilterLibNull instance
SignedCapsulePkg: Consume RegisterFilterLibNull instance
SourceLevelDebugPkg: Consume RegisterFilterLibNull instance
StandaloneMmPkg: Consume RegisterFilterLibNull instance
UefiCpuPkg: Consume RegisterFilterLibNull instance
UefiPayloadPkg: Consume RegisterFilterLibNull instance
UnitTestFrameworkPkg: Consume RegisterFilterLibNull instance
MdePkg/IoLib: Filter/trace port IO/MMIO access
MdePkg/Baseib: Filter/trace MSR access for IA32/X64
ArmPkg/ArmPkg.dsc | 1 +
ArmPlatformPkg/ArmPlatformPkg.dsc | 1 +
ArmVirtPkg/ArmVirt.dsc.inc | 1 +
CryptoPkg/CryptoPkg.dsc | 1 +
DynamicTablesPkg/DynamicTablesPkg.dsc | 1 +
EmbeddedPkg/EmbeddedPkg.dsc | 1 +
EmulatorPkg/EmulatorPkg.dsc | 1 +
FatPkg/FatPkg.dsc | 1 +
FmpDevicePkg/FmpDevicePkg.dsc | 1 +
IntelFsp2Pkg/IntelFsp2Pkg.dsc | 1 +
IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc | 1 +
MdeModulePkg/MdeModulePkg.dsc | 1 +
MdePkg/Include/Library/RegisterFilterLib.h | 225 ++++++++++++++++
.../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 | 36 ++-
MdePkg/Library/BaseLib/Ia32/ReadMsr64.c | 38 ++-
MdePkg/Library/BaseLib/Ia32/WriteMsr64.c | 22 +-
MdePkg/Library/BaseLib/X64/GccInlinePriv.c | 41 ++-
MdePkg/Library/BaseLib/X64/ReadMsr64.c | 15 +-
MdePkg/Library/BaseLib/X64/WriteMsr64.c | 13 +-
.../RegisterFilterLibNull.c | 253 ++++++++++++++++++
.../RegisterFilterLibNull.inf | 23 ++
.../RegisterFilterLibNull.uni | 13 +
MdePkg/MdePkg.dec | 7 +-
MdePkg/MdePkg.dsc | 5 +-
NetworkPkg/NetworkPkg.dsc | 1 +
OvmfPkg/OvmfPkgIa32.dsc | 1 +
OvmfPkg/OvmfPkgIa32X64.dsc | 1 +
OvmfPkg/OvmfPkgX64.dsc | 1 +
OvmfPkg/OvmfXen.dsc | 1 +
PcAtChipsetPkg/PcAtChipsetPkg.dsc | 1 +
RedfishPkg/RedfishPkg.dsc | 1 +
SecurityPkg/SecurityPkg.dsc | 1 +
ShellPkg/ShellPkg.dsc | 1 +
SignedCapsulePkg/SignedCapsulePkg.dsc | 1 +
SourceLevelDebugPkg/SourceLevelDebugPkg.dsc | 1 +
StandaloneMmPkg/StandaloneMmPkg.dsc | 1 +
UefiCpuPkg/UefiCpuPkg.dsc | 1 +
UefiPayloadPkg/UefiPayloadPkg.dsc | 1 +
.../UnitTestFrameworkPkgTarget.dsc.inc | 1 +
49 files changed, 1008 insertions(+), 117 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
--
2.18.0.windows.1
next reply other threads:[~2021-03-15 3:59 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-15 3:58 Dandan Bi [this message]
2021-03-15 3:58 ` [patch 01/28] MdePkg: Add RegisterFilterLib class and NULL instance Dandan Bi
2021-03-15 5:21 ` [edk2-devel] " Abner Chang
2021-03-15 12:03 ` Dandan Bi
2021-03-15 3:58 ` [patch 02/28] ArmPkg: Consume RegisterFilterLibNull instance Dandan Bi
2021-03-15 3:58 ` [patch 03/28] ArmPlatformPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 04/28] ArmVirtPkg: " Dandan Bi
2021-03-16 16:38 ` Laszlo Ersek
2021-03-15 3:58 ` [patch 05/28] CryptoPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 06/28] DynamicTablesPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 07/28] EmbeddedPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 08/28] EmulatorPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 09/28] FatPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 10/28] FmpDevicePkg: " Dandan Bi
2021-03-15 3:58 ` [patch 11/28] IntelFsp2Pkg: " Dandan Bi
2021-03-15 4:09 ` Chiu, Chasel
2021-03-15 3:58 ` [patch 12/28] IntelFsp2WrapperPkg: " Dandan Bi
2021-03-15 4:09 ` Chiu, Chasel
2021-03-15 3:58 ` [patch 13/28] MdeModulePkg: " Dandan Bi
2021-03-15 6:02 ` Wu, Hao A
2021-03-15 3:58 ` [patch 14/28] MdePkg: " Dandan Bi
2021-03-15 3:58 ` [patch 15/28] NetworkPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 16/28] OvmfPkg: " Dandan Bi
2021-03-16 16:42 ` Laszlo Ersek
2021-03-15 3:58 ` [patch 17/28] PcAtChipsetPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 18/28] RedfishPkg: " Dandan Bi
2021-03-15 5:21 ` Abner Chang
2021-03-15 5:27 ` Nickle Wang
2021-03-15 3:58 ` [patch 19/28] SecurityPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 20/28] ShellPkg: " Dandan Bi
2021-03-16 8:08 ` Gao, Zhichao
2021-03-15 3:58 ` [patch 21/28] SignedCapsulePkg: " Dandan Bi
2021-03-15 3:58 ` [patch 22/28] SourceLevelDebugPkg: " Dandan Bi
2021-03-15 6:03 ` Wu, Hao A
2021-03-15 3:58 ` [patch 23/28] StandaloneMmPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 24/28] UefiCpuPkg: " Dandan Bi
2021-03-16 16:42 ` Laszlo Ersek
2021-03-15 3:58 ` [patch 25/28] UefiPayloadPkg: " Dandan Bi
2021-03-15 16:06 ` Ma, Maurice
2021-03-15 3:58 ` [patch 26/28] UnitTestFrameworkPkg: " Dandan Bi
2021-03-15 3:58 ` [patch 27/28] MdePkg/IoLib: Filter/trace port IO/MMIO access Dandan Bi
2021-03-15 3:58 ` [patch 28/28] MdePkg/Baseib: Filter/trace MSR access for IA32/X64 Dandan Bi
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=20210315035844.32756-1-dandan.bi@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