[<prev] [next>] [day] [month] [year] [list]
Message-id: <47686360.1010208@shaw.ca>
Date: Tue, 18 Dec 2007 18:18:40 -0600
From: Robert Hancock <hancockr@...w.ca>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Chuck Ebbert <cebbert@...hat.com>,
Richard Henderson <rth@...ddle.net>,
linux-kernel <linux-kernel@...r.kernel.org>,
Ivan Kokshaysky <ink@...assic.park.msu.ru>,
Daniel Ritz <daniel.ritz@....ch>, Greg KH <greg@...ah.com>,
Keith Packard <keithp@...thp.com>,
Bjorn Helgaas <bjorn.helgaas@...com>
Subject: Re: PCI resource problems caused by improper address rounding
Linus Torvalds wrote:
>
> On Tue, 18 Dec 2007, Chuck Ebbert wrote:
>
>> On 12/18/2007 04:09 PM, Linus Torvalds wrote:
>>> I wonder what the heck is the point of that pnp entry. Just for fun, can
>>> you try to just disable CONFIG_PNP, and see if it all works then?
>> pnpacpi=off should work.
>>
>> PnP is also trying (and failing) to reserve all physical memory.
>
> Yeah, that really is a pretty confused-looking pnp table thing. But I have
> absolutely zero idea how PnP is even supposed to work - the whole thing is
> just a total hack for Windows, afaik.
>
> The sad part is that *normally* the right thing to do about almost any
> BIOS information is what we do right now: just avoid that magic address
> range like the plague, because we have no clue what the heck the BIOS is
> up to. But it looks like in this particular case, some of the problems
> may arise exactly *because* we avoid that range.
>
> It would be good to know what Windows does. If ACPI is found, does it
> perhaps just ignore all the PnP entries these days?
>
> Linus
ACPI is where those PnP entries are coming from (on any modern system
anyway). They do show up in Device Manager as devices with resources
(the one that reserves all of system RAM on my machine is labeled
"System board", others like the one that reserves the MMCONFIG aperature
are "Motherboard resources" - the name is based on the PNP device ID, I
believe).
It could be that Windows is stupid enough that it will map things over
top of physical RAM if the BIOS doesn't explicitly reserve it like that.
I suspect based on some comments in Microsoft documents that Windows
uses the E820 table to figure out where the RAM is, and ACPI/PnP
information to figure out where IO mappings are, but may not really
combine those two pieces of information into one overall map like Linux
does, which would explain why it needs to reserve all physical RAM..
(As mentioned in another post, I would guess the BIOS is reserving that
memory range since it's the MMCONFIG aperture..)
--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from hancockr@...pamshaw.ca
Home Page: http://www.roberthancock.com/
--
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