Re: [Xen-devel] [PATCH 5/7] xen/p2m: Add logic to revector a P2M tree to use __va leafs.

From: Konrad Rzeszutek Wilk
Date: Fri Jul 27 2012 - 13:42:08 EST


On Fri, Jul 27, 2012 at 12:47:47PM +0100, Jan Beulich wrote:
> >>> On 27.07.12 at 13:18, Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> wrote:
> > On Thu, 26 Jul 2012, Konrad Rzeszutek Wilk wrote:
> >> 1) All P2M lookups instead of using the __ka address would
> >> use the __va address. This means we can safely erase from
> >> __ka space the PMD pointers that point to the PFNs for
> >> P2M array and be OK.
> >> 2). Allocate a new array, copy the existing P2M into it,
> >> revector the P2M tree to use that, and return the old
> >> P2M to the memory allocate. This has the advantage that
> >> it sets the stage for using XEN_ELF_NOTE_INIT_P2M
> >> feature. That feature allows us to set the exact virtual
> >> address space we want for the P2M - and allows us to
> >> boot as initial domain on large machines.
> >>
> >> So we pick option 2).
> >
> > 1) looks like a decent option that requires less code.
> > Is the problem with 1) that we might want to access the P2M before we
> > have __va addresses ready?
>
> AIUI 1) has no easy way of subsequently accommodating support
> for XEN_ELF_NOTE_INIT_P2M (where you almost definitely will
> want/need to reclaim the originally used VA space - if nothing else,
> then for forward compatibility with the rest of the kernel).

<nods> That was my thinking - this way we can boot dom0 (since
the hypervisor is the only one that implements the
XEN_ELF_NOTE_INIT_P2M) with large amount of memory. Granted booting
with more than 500GB would require adding another layer to the P2M
tree. But somehow I thought that we are limited in the hypervisor
to 500GB?
--
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/