Messages in this thread | | | Date | Sun, 10 May 2009 17:18:04 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH] x86-64: improve e820_search_gap() |
| |
On Sat, May 09, 2009 at 11:43:26PM -0700, H. Peter Anvin wrote: > Andi Kleen wrote: > >> However, as far as querying SRAT, I don't like the idea of spreading the > >> knowledge of the system memory map out between a bunch of different > >> places, each of which have a little piece of the puzzle. It puts a huge > >> onus on the user to know what mechanisms are actually available, and > >> really makes a shitty interface. > > > > AFAIK another popular OS always combines mappings from all sources (e820, > > SRAT, PCI, PNP, ACPI etc.) in the query before allocating anything. > > Something like that might be a reasonable long term direction for Linux > > too, but it's probably also a can of worms to handle the conflicts > > between the various sources (e.g. e820 reserves a lot of things > > in other sources too). It would be a rather large change. > > Maybe that would handle the systems I thought of above. > > You *always* have a conflict resolution policy... whether or not it is
Well right now we ignore ACPI/PNP data, sometimes ignore PCI data and only look in e820 and sometimes only use PCI/e820 and sometimes only use SRAT (or at least it was like this at some point)
BTW SRAT hot range can be also wrong, some BIOS always had a full 512GB range even though they don't support hotplug. However I haven't seen a system which supports hotplug (not that there are very many of those) where the entry was not there, so at least that one should be safe.
-Andi
-- ak@linux.intel.com -- Speaking for myself only.
| |