mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-03 22:58:18 -05:00
efi: Actually enable the ESRT under Xen
The ESRT can be parsed if EFI_PARAVIRT is enabled, even if EFI_MEMMAP is not. Also allow the ESRT to be in reclaimable memory, as that is where future Xen versions will put it. Reported-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com> Signed-off-by: Demi Marie Obenour <demi@invisiblethingslab.com> Tested-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com> Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
This commit is contained in:
committed by
Ard Biesheuvel
parent
c0fecaa44d
commit
01de145dc7
@@ -247,7 +247,7 @@ void __init efi_esrt_init(void)
|
||||
int rc;
|
||||
phys_addr_t end;
|
||||
|
||||
if (!efi_enabled(EFI_MEMMAP))
|
||||
if (!efi_enabled(EFI_MEMMAP) && !efi_enabled(EFI_PARAVIRT))
|
||||
return;
|
||||
|
||||
pr_debug("esrt-init: loading.\n");
|
||||
@@ -258,7 +258,9 @@ void __init efi_esrt_init(void)
|
||||
if (rc < 0 ||
|
||||
(!(md.attribute & EFI_MEMORY_RUNTIME) &&
|
||||
md.type != EFI_BOOT_SERVICES_DATA &&
|
||||
md.type != EFI_RUNTIME_SERVICES_DATA)) {
|
||||
md.type != EFI_RUNTIME_SERVICES_DATA &&
|
||||
md.type != EFI_ACPI_RECLAIM_MEMORY &&
|
||||
md.type != EFI_ACPI_MEMORY_NVS)) {
|
||||
pr_warn("ESRT header is not in the memory map.\n");
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user