46 lines
1.7 KiB
Diff
46 lines
1.7 KiB
Diff
|
From 47d6a4638ea73965ce1a43248e27b688dddc26ee Mon Sep 17 00:00:00 2001
|
||
|
From: Oliver Steffen <osteffen@redhat.com>
|
||
|
Date: Mon, 4 Nov 2024 19:00:11 +0100
|
||
|
Subject: [PATCH] OvmfPkg: Rerun dispatcher after initializing virtio-rng
|
||
|
|
||
|
RH-Author: Oliver Steffen <osteffen@redhat.com>
|
||
|
RH-MergeRequest: 84: OvmfPkg: Rerun dispatcher after initializing virtio-rng
|
||
|
RH-Jira: RHEL-58631
|
||
|
RH-Acked-by: Gerd Hoffmann <kraxel@redhat.com>
|
||
|
RH-Commit: [1/1] d663321aab28f000c279bfac6dbaaa378678532e (osteffen/edk2)
|
||
|
|
||
|
Since the pixiefail CVE fix the network stack requires a hardware
|
||
|
random number generator. This can currently be a modern CPU supporting
|
||
|
the RDRAND instruction or a virtio-rng device.
|
||
|
The latter is initialized during the BDS phase.
|
||
|
To ensure all depending (network) modules are also started, we need to
|
||
|
run the dispatcher once more after the device was initialized.
|
||
|
Without this, network boot is not available under certain hardware
|
||
|
configurations.
|
||
|
|
||
|
Fixes: 4c4ceb2ceb ("NetworkPkg: SECURITY PATCH CVE-2023-45237")
|
||
|
|
||
|
Analysed-by: Stefano Garzarella <sgarzare@redhat.com>
|
||
|
Suggested-by: Gerd Hoffmann <kraxel@redhat.com>
|
||
|
Signed-off-by: Oliver Steffen <osteffen@redhat.com>
|
||
|
---
|
||
|
OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c | 2 ++
|
||
|
1 file changed, 2 insertions(+)
|
||
|
|
||
|
diff --git a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c
|
||
|
index 87d1ac3142..1f1298eb0b 100644
|
||
|
--- a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c
|
||
|
+++ b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c
|
||
|
@@ -675,6 +675,8 @@ ConnectVirtioPciRng (
|
||
|
if (EFI_ERROR (Status)) {
|
||
|
goto Error;
|
||
|
}
|
||
|
+
|
||
|
+ gDS->Dispatch ();
|
||
|
}
|
||
|
|
||
|
return EFI_SUCCESS;
|
||
|
--
|
||
|
2.45.1
|
||
|
|