mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-08 17:05:09 +02:00
OvmfPkg/CpuHotplugSmm: delay SMM exit
Let APs wait until the BSP has completed the register updates to remove the CPU. This makes sure all APs stay in SMM mode until the CPU hot-unplug operation is complete, which in turn makes sure the ACPI lock is released only after the CPU hot-unplug operation is complete. Some background: The CPU hotplug SMI is triggered from an ACPI function which is protected by an ACPI lock. The ACPI function is in the ACPI tables generated by qemu. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
ec18fa81d3
commit
121af960e2
@ -355,6 +355,11 @@ EjectCpu (
|
||||
//
|
||||
QemuSelector = mCpuHotEjectData->QemuSelectorMap[ProcessorNum];
|
||||
if (QemuSelector == CPU_EJECT_QEMU_SELECTOR_INVALID) {
|
||||
/* wait until BSP is done */
|
||||
while (mCpuHotEjectData->Handler != NULL) {
|
||||
CpuPause ();
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user