Re: another pagetable initialization crash on xen

From: Yinghai Lu
Date: Wed Mar 30 2011 - 13:58:24 EST


On 03/30/2011 09:59 AM, Stefano Stabellini wrote:
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?

io apic addr is going through fixmap.

initial_memory_mapping will map to [0, max_mem_under_4g).
max_mem_under_4g is from E820 table searching.

later it will map [4g, max_mem_above_4g).

We do not map mmio gap between [max_mem_under_4g,4g)

Thanks

Yinghai
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/