Now we only search buffer for override acpi table under 4G. In some case, like user use memmap to exclude all low ram, we may not find range for it under 4G.
Do second try to search above 4G. Signed-off-by: Yinghai Lu <ying...@kernel.org> Cc: "Rafael J. Wysocki" <r...@sisk.pl> Cc: linux-a...@vger.kernel.org Tested-by: Thomas Renninger <tr...@suse.de> Reviewed-by: Tang Chen <tangc...@cn.fujitsu.com> Tested-by: Tang Chen <tangc...@cn.fujitsu.com> --- drivers/acpi/osl.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c index 93e3194..42c48fc 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c @@ -627,6 +627,10 @@ void __init acpi_initrd_override(void *data, size_t size) /* under 4G at first, then above 4G */ acpi_tables_addr = memblock_find_in_range(0, (1ULL<<32) - 1, all_tables_size, PAGE_SIZE); + if (!acpi_tables_addr) + acpi_tables_addr = memblock_find_in_range(0, + ~(phys_addr_t)0, + all_tables_size, PAGE_SIZE); if (!acpi_tables_addr) { WARN_ON(1); return; -- 1.8.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/