On Wed, 30 Mar 2011, Stefano Stabellini wrote:I have another unrelated question: init_memory_mapping is called on the
range 0 - max_low_pfn, but that range usually includes a reserved region
below the first MB. On one machine of mine the IOAPIC mmio region falls
in that memory range therefore we are mapping the IOAPIC mmio region in
init_memory_mapping without going through the fixmap as we should.
This is causing problems on Xen, but I guess it could theoretically
cause problems on other platforms as well. Should we avoid reserved
memory regions below the first MB from the initial memory mappings?
Sorry I mixed up frame numbers with physical addresses, so the IOAPIC
mmio region is actually at 0xfec00000 where it should be but it gets
mapped during the initial memory mapping (range 0 - 0x100000000).
Is that supposed to happen? Shouldn't it go through the fixmap?