[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <86802c440709212356v498610cfo589b45a0bfc76dd6@mail.gmail.com>
Date: Fri, 21 Sep 2007 23:56:18 -0700
From: "Yinghai Lu" <yhlu.kernel@...il.com>
To: "Andi Kleen" <ak@...e.de>
Cc: hancockr@...w.ca, rajesh.shah@...el.com, jbarnes@...tuousgeek.org,
greg@...ah.com, patches@...-64.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] [9/50] i386: validate against ACPI motherboard resources
On 9/21/07, Yinghai Lu <yhlu.kernel@...il.com> wrote:
> On 9/21/07, Andi Kleen <ak@...e.de> wrote:
> >
> > From: Robert Hancock <hancockr@...w.ca>
> >
> > This path adds validation of the MMCONFIG table against the ACPI reserved
> > motherboard resources. If the MMCONFIG table is found to be reserved in
> > ACPI, we don't bother checking the E820 table. The PCI Express firmware
> > spec apparently tells BIOS developers that reservation in ACPI is required
> > and E820 reservation is optional, so checking against ACPI first makes
> > sense. Many BIOSes don't reserve the MMCONFIG region in E820 even though
> > it is perfectly functional, the existing check needlessly disables MMCONFIG
> > in these cases.
> >
> > In order to do this, MMCONFIG setup has been split into two phases. If PCI
> > configuration type 1 is not available then MMCONFIG is enabled early as
> > before. Otherwise, it is enabled later after the ACPI interpreter is
> > enabled, since we need to be able to execute control methods in order to
> > check the ACPI reserved resources. Presently this is just triggered off
> > the end of ACPI interpreter initialization.
> >
> > There are a few other behavioral changes here:
> >
> > - Validate all MMCONFIG configurations provided, not just the first one.
> >
> > - Validate the entire required length of each configuration according to
> > the provided ending bus number is reserved, not just the minimum required
> > allocation.
> >
> > - Validate that the area is reserved even if we read it from the chipset
> > directly and not from the MCFG table. This catches the case where the
> > BIOS didn't set the location properly in the chipset and has mapped it
> > over other things it shouldn't have.
> >
> > This also cleans up the MMCONFIG initialization functions so that they
> > simply do nothing if MMCONFIG is not compiled in.
> >
> > Based on an original patch by Rajesh Shah from Intel.
> >
> > [akpm@...ux-foundation.org: many fixes and cleanups]
> > Signed-off-by: Robert Hancock <hancockr@...w.ca>
> > Signed-off-by: Andi Kleen <ak@...e.de>
> > Cc: Rajesh Shah <rajesh.shah@...el.com>
> > Cc: Jesse Barnes <jbarnes@...tuousgeek.org>
> > Acked-by: Linus Torvalds <torvalds@...ux-foundation.org>
> > Cc: Andi Kleen <ak@...e.de>
> > Cc: Greg KH <greg@...ah.com>
> > Signed-off-by: Andrew Morton <akpm@...ux-foundation.org>
Also the titile is misleading: it is x86 instead of i386.. because it
will affect x86_64 too.
YH
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists