[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [Patch 2/4] x86/hpet: Sanitise HPET ACPI table and warn about multiple tables



>>> On 07.10.13 at 15:55, Andrew Cooper <andrew.cooper3@xxxxxxxxxx> wrote:
> On 07/10/13 14:45, Jan Beulich wrote:
>>>>> On 07.10.13 at 15:26, Andrew Cooper <andrew.cooper3@xxxxxxxxxx> wrote:
>>> --- a/xen/arch/x86/acpi/boot.c
>>> +++ b/xen/arch/x86/acpi/boot.c
>>> @@ -276,6 +276,21 @@ static int __init acpi_parse_hpet(struct 
>>> acpi_table_header *table)
>>>             return -1;
>>>     }
>>>  
>>> +   if ( !hpet_tbl->address.address || !(hpet_tbl->address.address + 1) )
>>> +   {
>>> +           printk(KERN_WARNING PREFIX "Bad HPET address %#lx\n",
>>> +                  hpet_tbl->address.address);
>>> +           return -1;
>>> +   }
>> Did you really encounter a system where this would trigger?
>>
>>> +
>>> +   /*
>>> +    * Hopefully someone might implement multiple HPET support in Xen.
>>> +    * Until then, warn the user if multiple HPET tables are found.
>>> +    */
>>> +   if ( hpet_address )
>>> +           printk(KERN_WARNING PREFIX
>>> +                  "Xen only supports one HPET - Using latest table\n");
>>> +
>> You perhaps miunderstood how multiple HPETs would be surfaced
>> by firmware: Not via multiple HPET tables, but via objects in the
>> ACPI object namespace. With that, a similar question to the above
>> arises: Have you seen a system where multiple HPET tables get
>> surfaced?
> 
> We had a system which had two HPET tables.  A BIOS update fixed the
> issue, but the fact remains that in the case of multiple HPET tables, we
> blindly go with the latest table.

Interesting.

> Perhaps the message could change to "Multiple tables found (BIOS BUG?). 
> Using information from latest" ?

Something along those lines. In any case this would raise the
question whether going with the first, last, or any intermediate
table would be the safest route then. I'd be inclined to use the
first in that case rather than the last.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.