Re: [PATCH v5 04/22] x86, ACPI: Search buffer above 4G in second tryfor acpi override tables

From: Yinghai Lu
Date: Mon Jun 17 2013 - 19:38:08 EST


On Mon, Jun 17, 2013 at 4:22 PM, Toshi Kani <toshi.kani@xxxxxx> wrote:
> On Fri, 2013-06-14 at 17:56 -0700, Yinghai Lu wrote:
>> 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 <yinghai@xxxxxxxxxx>
>> Cc: "Rafael J. Wysocki" <rjw@xxxxxxx>
>> Cc: linux-acpi@xxxxxxxxxxxxxxx
>> Tested-by: Thomas Renninger <trenn@xxxxxxx>
>> Reviewed-by: Tang Chen <tangchen@xxxxxxxxxxxxxx>
>> Tested-by: Tang Chen <tangchen@xxxxxxxxxxxxxx>
>> ---
>> 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);
>
> Should this search start from 4G, instead of 0?

should be ok, as memblock searching is top-down.

Thanks

Yinghai
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/