Index Home About Blog
From: Linus Torvalds <>
Newsgroups: fa.linux.kernel
Subject: Re: [discuss] Re: Please pull x86-64 bug fixes
Date: Fri, 06 Oct 2006 16:08:36 UTC
Message-ID: <>

On Fri, 6 Oct 2006, Arjan van de Ven wrote:
> we can do a tiny bit better than the current code; some chipsets have
> the address of the MMIO region stored in their config space; so we can
> get to that using the old method and validate the acpi code with that.

Yes. I think trusting ACPI is _always_ a mistake. It's insane. We should
never ask the firmware for any data that we can just figure out ourselves.

And we should tell all hardware companies that firmware tables are stupid,
and that we just want to know what the hell the registers MEAN!

I've certainly tried to tell Intel that. I think they may even have heard
me occasionally.

I can't understand why some people _still_ think ACPI is a good idea..


From: Linus Torvalds <>
Newsgroups: fa.linux.kernel
Subject: RE: [discuss] Re: Please pull x86-64 bug fixes
Date: Sat, 07 Oct 2006 02:21:32 UTC
Message-ID: <>

On Fri, 6 Oct 2006, Duran, Leo wrote:
> So, one can argue that there's merit on having ACPI

Not really.

The thing is, you have two choices:
 - define interfaces in hardware
 - not doing so, and then trying to paper it over with idiotic tables.

Sadly, Intel decided that they should do the latter, and invented ACPI.

If instead they had decided to just let the hardware describe itself, we
wouldn't need ACPI.

There are two kinds of interfaces: the simple ones, and the broken ones.

The simple ones are better defined by the hardware people, and they work.
They are of the kind:

 "The pointer to the MMIO config area is readable from IO port at offset

The broken ones are the ones where hardware people know what they want to
do, but they think the interface is sucky and complicated, so they make it
_doubly_ sucky by then saying "we'll describe it in the BIOS tables", so
that now there is another (incompetent) group that can _also_ screw things
up. Yeehaa!

The thing is, Intel did really well for _years_ with just defining
hardware interfaces. The PIIX IDE controller interfaces were a great
success, and worked for over a decade. So here's a question for you:

  "After having done something successfully for a decade, what do you do?
   Do you
    (a) Try to emulate a known successful strategy?
    (b) Put a committee together to try to come up with a new and more
        'generic' solution, since you were only successful for closer to
        fifteen years."

Guess which one is ACPI.


Index Home About Blog