Blame 0001-OvmfPkg-disable-multi-processor-support-for-boot-tim.patch

Gerd Hoffmann b0c3af
From dd48ac51d1df4f718b4401b188d2824aebcc341c Mon Sep 17 00:00:00 2001
Gerd Hoffmann b0c3af
From: Laszlo Ersek <lersek@redhat.com>
Gerd Hoffmann b0c3af
Date: Wed, 26 Nov 2014 16:32:06 +0100
Gerd Hoffmann b0c3af
Subject: [PATCH] OvmfPkg: disable multi-processor support for boot time
Gerd Hoffmann b0c3af
Gerd Hoffmann b0c3af
We have no useful workload for APs, so let's not start them up, because
Gerd Hoffmann b0c3af
they would spin indefinitely until ExitBootServices().
Gerd Hoffmann b0c3af
Gerd Hoffmann b0c3af
Setting gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber to 1
Gerd Hoffmann b0c3af
causes InitializeMpSupport() in "UefiCpuPkg/CpuDxe/CpuMp.c" to return
Gerd Hoffmann b0c3af
early.
Gerd Hoffmann b0c3af
Gerd Hoffmann b0c3af
Contributed-under: TianoCore Contribution Agreement 1.0
Gerd Hoffmann b0c3af
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Gerd Hoffmann b0c3af
---
Gerd Hoffmann b0c3af
 OvmfPkg/OvmfPkgIa32.dsc    | 4 ++++
Gerd Hoffmann b0c3af
 OvmfPkg/OvmfPkgIa32X64.dsc | 4 ++++
Gerd Hoffmann b0c3af
 OvmfPkg/OvmfPkgX64.dsc     | 4 ++++
Gerd Hoffmann b0c3af
 3 files changed, 12 insertions(+)
Gerd Hoffmann b0c3af
Gerd Hoffmann b0c3af
diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc
Gerd Hoffmann b0c3af
index 6598102..1730812 100644
Gerd Hoffmann b0c3af
--- a/OvmfPkg/OvmfPkgIa32.dsc
Gerd Hoffmann b0c3af
+++ b/OvmfPkg/OvmfPkgIa32.dsc
Gerd Hoffmann b0c3af
@@ -329,6 +329,10 @@
Gerd Hoffmann b0c3af
   # IRQs 5, 9, 10, 11 are level-triggered
Gerd Hoffmann b0c3af
   gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0E20
Gerd Hoffmann b0c3af
 
Gerd Hoffmann b0c3af
+  # We have no useful workload for APs, so let's not start them up, because
Gerd Hoffmann b0c3af
+  # they would spin indefinitely until ExitBootServices().
Gerd Hoffmann b0c3af
+  gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|1
Gerd Hoffmann b0c3af
+
Gerd Hoffmann b0c3af
 ################################################################################
Gerd Hoffmann b0c3af
 #
Gerd Hoffmann b0c3af
 # Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
Gerd Hoffmann b0c3af
diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc
Gerd Hoffmann b0c3af
index 4de961f..370ae50 100644
Gerd Hoffmann b0c3af
--- a/OvmfPkg/OvmfPkgIa32X64.dsc
Gerd Hoffmann b0c3af
+++ b/OvmfPkg/OvmfPkgIa32X64.dsc
Gerd Hoffmann b0c3af
@@ -335,6 +335,10 @@
Gerd Hoffmann b0c3af
   # IRQs 5, 9, 10, 11 are level-triggered
Gerd Hoffmann b0c3af
   gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0E20
Gerd Hoffmann b0c3af
 
Gerd Hoffmann b0c3af
+  # We have no useful workload for APs, so let's not start them up, because
Gerd Hoffmann b0c3af
+  # they would spin indefinitely until ExitBootServices().
Gerd Hoffmann b0c3af
+  gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|1
Gerd Hoffmann b0c3af
+
Gerd Hoffmann b0c3af
 ################################################################################
Gerd Hoffmann b0c3af
 #
Gerd Hoffmann b0c3af
 # Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
Gerd Hoffmann b0c3af
diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
Gerd Hoffmann b0c3af
index 6c38081..175d5f4 100644
Gerd Hoffmann b0c3af
--- a/OvmfPkg/OvmfPkgX64.dsc
Gerd Hoffmann b0c3af
+++ b/OvmfPkg/OvmfPkgX64.dsc
Gerd Hoffmann b0c3af
@@ -334,6 +334,10 @@
Gerd Hoffmann b0c3af
   # IRQs 5, 9, 10, 11 are level-triggered
Gerd Hoffmann b0c3af
   gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0E20
Gerd Hoffmann b0c3af
 
Gerd Hoffmann b0c3af
+  # We have no useful workload for APs, so let's not start them up, because
Gerd Hoffmann b0c3af
+  # they would spin indefinitely until ExitBootServices().
Gerd Hoffmann b0c3af
+  gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber|1
Gerd Hoffmann b0c3af
+
Gerd Hoffmann b0c3af
 ################################################################################
Gerd Hoffmann b0c3af
 #
Gerd Hoffmann b0c3af
 # Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
Gerd Hoffmann b0c3af
-- 
Gerd Hoffmann b0c3af
1.8.3.1
Gerd Hoffmann b0c3af