mirror of
https://git.proxmox.com/git/mirror_edk2
synced 2025-10-24 23:11:09 +00:00
Invocations of EFI_ACPI_TABLE_PROTOCOL::UninstallAcpiTable() may result in a crash when the value of PcdAcpiExposedTableVersions does not include EFI_ACPI_TABLE_VERSION_1_0B. The reason is that EFI_ACPI_TABLE_PROTOCOL::InstallAcpiTable() will only populate the Rsdt1/Rsdt3 pointers when EFI_ACPI_TABLE_VERSION_1_0B is set, whereas EFI_ACPI_TABLE_PROTOCOL::UninstallAcpiTable() will invoke PublishTables with EFI_ACPI_TABLE_VERSION_1_0B alawys set, resulting in a NULL pointer dereference of the Rsdt1/Rsdt3 pointers. So take PcdAcpiExposedTableVersions into account for UninstallAcpiTable as well. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Star Zeng <star.zeng@intel.com> |
||
|---|---|---|
| .. | ||
| AcpiSdt.c | ||
| AcpiSdt.h | ||
| AcpiTable.c | ||
| AcpiTable.h | ||
| AcpiTableDxe.inf | ||
| AcpiTableDxe.uni | ||
| AcpiTableDxeExtra.uni | ||
| AcpiTableProtocol.c | ||
| Aml.c | ||
| AmlChild.c | ||
| AmlNamespace.c | ||
| AmlOption.c | ||
| AmlString.c | ||