[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86/NUMA: make init_node_heap() respect Xen heap limit
On Fri, Sep 04, 2015 at 06:02:28AM -0600, Jan Beulich wrote: > >>> On 04.09.15 at 13:29, <julien.grall@xxxxxxxxxx> wrote: > > Anyway, I tried your suggestion to dropped the call to xenheap_max_mfn when > > Xen > > setups the xenheap for arm64 and it allows me to boot correctly Xen on > > X-gene. > > See patch below, I can send the patch in a separate thread if necessary. > > That would depend on Ian and Wei - to me it looks okay this way, > perhaps minus the title wanting to be re-written. > I only care about the actual fix, not the form it is presented. In the end I can't apply this patch myself. :-) BTW if this patch is final I would be happy for it to be applied today. Wei. > Jan > > > commit b11ab8e4982228d7944e11010f5b8eec890caf30 > > Author: Julien Grall <julien.grall@xxxxxxxxxx> > > Date: Thu Sep 3 21:49:31 2015 +0100 > > > > xen: pagealloc: Correctly calculate the number of xenheap bits > > > > The commit 88e3ed61642bb393458acc7a9bd2f96edc337190 "x86/NUMA: make > > init_node_heap() respect Xen heap limit" breaks boot on the arm64 board > > X-Gene. > > > > The xenheap bits variable is used to know the last RAM MFN always mapped > > in Xen virtual memory. If the value is 0, it means that all the memory > > is > > always mapped in Xen virtual memory. > > > > On X-gene the RAM bank resides above 128GB and last xenheap MFN is > > 0x4400000. With the new way to calculate the number of bits, > > xenheap_bits > > will be equal to 38 bits. This will result to hide all the RAM and the > > impossibility to allocate xenheap memory. > > > > Given that aarch64 have always all the memory mapped in Xen virtual > > memory, it's not necessary to call xenheap_max_mfn which set the number > > of bits. > > > > Suggested-by: Jan Beulich <jbeulich@xxxxxxxx> > > Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx> > > > > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > > index 6626eba..48f734f 100644 > > --- a/xen/arch/arm/setup.c > > +++ b/xen/arch/arm/setup.c > > @@ -665,7 +665,6 @@ static void __init setup_mm(unsigned long dtb_paddr, > > size_t dtb_size) > > xenheap_virt_end = XENHEAP_VIRT_START + ram_end - ram_start; > > xenheap_mfn_start = ram_start >> PAGE_SHIFT; > > xenheap_mfn_end = ram_end >> PAGE_SHIFT; > > - xenheap_max_mfn(xenheap_mfn_end); > > > > /* > > * Need enough mapped pages for copying the DTB. > > -- > > Julien Grall > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |