Cc: LKML <linux-kernel@...>, <x86@...>, xen-devel <xen-devel@...>, Stephen Tweedie <sct@...>, Eduardo Habkost <ehabkost@...>, Mark McLoughlin <markmc@...>, Vegard Nossum <vegard.nossum@...>, Nick Piggin <npiggin@...>, Yinghai Lu <yhlu.kernel@...>, Arjan van de Ven <arjan@...>, Avi Kivity <avi@...>, Linus Torvalds <torvalds@...>
There's no inherent reason why Xen itself needs to be able to have all
memory mapped at once. 32-bit Xen doesn't and can survive quite
happily. It's certainly nice to be able to access anything directly,
but it's just a performance optimisation. In practice, the guest
generally has almost everything interesting mapped anyway, and Xen
maintains a recursive mapping of the pagetable to make its access to the
pagetable very efficient, so it's only when a hypercall is doing
something to an unmapped page that there's an issue.
The main limitation the hole-size imposes is the max size of the machine
to physical map. That uses 8bytes/page, and reserves 256GB of space for
it, meaning that the current limit is 2^47 bytes - but there's another
256GB of reserved and unused space next to it, so that could be easily
extended to 2^48 if that really becomes an issue.
OK. Though it might be an idea to add "nopse" and start deprecating
nopentium.
Oh, I didn't mean to include that one. I think it's probably safe (from
both the performance and correctness stands), but it's not necessary for
64-bit Xen.
Yep, thanks,
J
--