Re: [PATCH] x86/acpi: check rsdp address received via bootparams to be valid

From: Juergen Gross
Date: Tue Jan 16 2018 - 10:56:30 EST


On 16/01/18 16:46, Ingo Molnar wrote:
>
> * Juergen Gross <jgross@xxxxxxxx> wrote:
>
>> There seem to exist several grub2 versions trashing
>> boot_params.hdr.acpi_rsdp_addr.
>>
>> So don't just believe this address to be valid, but verify it pointing
>> to a valid RSDP table.
>
> Exactly what kind of values do those Grub2 versions put into that field? Pointer
> to something, or random noise?

Looks like random noise. On Mike's system it was 0x000000000151.

> Also, what exactly does 'validation' mean, how robustly does it filter out of spec
> uses of the boot protocol?

It validates the RSDP has the correct 8 byte eye catcher in it and
the checksum of the structure is correct. Searching the RSDP by
scanning memory is using the same checks, so I guess this ought to
be okay. Odds are about 1 : 2^80 for false positives.


Juergen