Re: [PATCH] x86 ACPI: Blacklist two HP machines with buggy BIOSes(Re: 2.6.27-rc8+ - first impressions)

From: Ingo Molnar
Date: Tue Oct 07 2008 - 00:43:16 EST



* Maciej W. Rozycki <macro@xxxxxxxxxxxxxx> wrote:

> > > Well, perhaps, but the thermal trip point phenomenon seems unique
> > > to this family of systems. The other aspects of the problem do
> > > not really matter anymore as we seem to have addressed them
> > > robustly enough now.
> >
> > When you need DMI entries you clearly haven't.
>
> You can't just break a piece of hardware randomly (setting the
> thermal trip points based on an interrupt mask of an I/O APIC input is
> certainly beyond the ACPI spec), hide its documentation and still
> demand it to be supported correctly, possibly hurting all the other
> good equipment. Sorry -- you have to draw a line somewhere. [...]

agreed. This is a clear example of a complex and hard to track down BIOS
bug - and even in this case we go out on a limb working it around.

The first approach to such problems is usually a DMI pattern based fix -
they happen when we dont know the full scope of a particular problem yet
but have a rough idea and want to react to bugs quickly.

PCI ID based quirks are preferred much more in the long run: DMI pattern
matching does not scale as the DMI space is human-visible and hence
changes frequently not for technical/hw-environment but for
perception/PR reasons, hence it is far less reliable programmatically
than the PCI ID space.

But PCI ID methods, while more intelligent, they lag behind a bit and
depend on good cooperation with hw makers. As long as DMI pattern
matches end up turning into PCI ID based approaches, like here, i'm not
complaining as a maintainer ;)

Thanks Maciej for your excellent in-depth analysis of this issue, and
for your many fixes in this area of code - you squashed many difficult,
long-standing bugs in this space.

Ingo
--
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/