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