Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PixieFail #8 and #9 TCBZ4541 and TCBZ4542 #5582

Merged
Merged
Changes from 1 commit
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
b984e2d
EmulatorPkg: Add RngDxe to EmulatorPkg
May 20, 2024
8acea85
EmulatorPkg: Add Hash2DxeCrypto to EmulatorPkg
Flickdm May 9, 2024
7e1a589
OvmfPkg PlatformCI: Support virtio-rng-pci
May 20, 2024
f44d74f
OvmfPkg: Add Hash2DxeCrypto to OvmfPkg
Flickdm May 9, 2024
836db9a
ArmVirtPkg PlatformCI: Support virtio-rng-pci
May 20, 2024
2e0c3b6
ArmVirtPkg: Add Hash2DxeCrypto to ArmVirtPkg
May 20, 2024
f9cd9da
SecurityPkg RngDxe: Remove incorrect limitation on GetRng
May 20, 2024
b2669f1
NetworkPkg: SECURITY PATCH CVE-2023-45237
Flickdm May 9, 2024
e722631
NetworkPkg TcpDxe: SECURITY PATCH CVE-2023-45236
Flickdm May 9, 2024
03739bb
MdePkg: Add MockUefiBootServicesTableLib
Flickdm May 9, 2024
a58ee05
MdePkg: Adds Protocol for MockRng
Flickdm May 9, 2024
5ee8e26
MdePkg: Add MockHash2 Protocol for testing
Flickdm May 9, 2024
1c7c76d
NetworkPkg: Update the PxeBcDhcp6GoogleTest due to underlying changes
Flickdm May 9, 2024
d6ad577
ArmPkg: Allow SMC/HVC monitor conduit to be specified at runtime
ardbiesheuvel May 13, 2024
04329a7
ArmVirtPkg: Move PcdMonitorConduitHvc
May 20, 2024
8d2fc9a
MdePkg/BaseRngLib AARCH64: Remove overzealous ASSERT()
ardbiesheuvel May 13, 2024
9259930
ArmVirtPkg/ArmVirtQemu: Permit the use of dynamic PCDs in PEI
ardbiesheuvel May 13, 2024
432d6b7
ArmVirtPkg: Use dynamic PCD to set the SMCCC conduit
ardbiesheuvel May 13, 2024
1ceaa1c
ArmVirtPkg: Reverse inclusion order of MdeLibs.inc and ArmVirt.dsc.inc
ardbiesheuvel May 13, 2024
30b237f
ArmVirtPkg/ArmVirtQemu: Add RngDxe driver
ardbiesheuvel May 13, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
ArmPkg: Allow SMC/HVC monitor conduit to be specified at runtime
ArmVirtQemu may execute at EL2, in which case monitor calls are
generally made using SMC instructions instead of HVC instructions.

Whether or not this is the case can only be decided at runtime, and so
the associated PCD needs to be settable at runtime, if the platform
definition chooses so. This implies a boolean PCD, given that a feature
PCD is build-time configurable only.

Cc: Leif Lindholm <[email protected]>
Cc: Ard Biesheuvel <[email protected]>
Cc: Sami Mujawar <[email protected]>

Committed-by: Ard Biesheuvel <[email protected]>
Signed-off-by: Doug Flick [MSFT] <[email protected]>
Reviewed-by: Ard Biesheuvel <[email protected]>
ardbiesheuvel authored and lgao4 committed May 24, 2024
commit d6ad577e03b21cea154202b85bd0f021c17151ea
10 changes: 5 additions & 5 deletions ArmPkg/ArmPkg.dec
Original file line number Diff line number Diff line change
@@ -139,11 +139,6 @@
# Define if the GICv3 controller should use the GICv2 legacy
gArmTokenSpaceGuid.PcdArmGicV3WithV2Legacy|FALSE|BOOLEAN|0x00000042

## Define the conduit to use for monitor calls.
# Default PcdMonitorConduitHvc = FALSE, conduit = SMC
# If PcdMonitorConduitHvc = TRUE, conduit = HVC
gArmTokenSpaceGuid.PcdMonitorConduitHvc|FALSE|BOOLEAN|0x00000047

# Whether to remap all unused memory NX before installing the CPU arch
# protocol driver. This is needed on platforms that map all DRAM with RWX
# attributes initially, and can be disabled otherwise.
@@ -317,6 +312,11 @@
gArmTokenSpaceGuid.PcdSystemBiosRelease|0xFFFF|UINT16|0x30000058
gArmTokenSpaceGuid.PcdEmbeddedControllerFirmwareRelease|0xFFFF|UINT16|0x30000059

## Define the conduit to use for monitor calls.
# Default PcdMonitorConduitHvc = FALSE, conduit = SMC
# If PcdMonitorConduitHvc = TRUE, conduit = HVC
gArmTokenSpaceGuid.PcdMonitorConduitHvc|FALSE|BOOLEAN|0x00000047

[PcdsFixedAtBuild.common, PcdsDynamic.common]
#
# ARM Architectural Timer
2 changes: 1 addition & 1 deletion ArmPkg/Library/ArmMonitorLib/ArmMonitorLib.c
Original file line number Diff line number Diff line change
@@ -26,7 +26,7 @@ ArmMonitorCall (
IN OUT ARM_MONITOR_ARGS *Args
)
{
if (FeaturePcdGet (PcdMonitorConduitHvc)) {
if (PcdGetBool (PcdMonitorConduitHvc)) {
ArmCallHvc ((ARM_HVC_ARGS *)Args);
} else {
ArmCallSmc ((ARM_SMC_ARGS *)Args);