Re: [Xen-devel] [PATCH] Revert "xen/arm32: setup: Give a xenheap page to the boot allocator"
On Thu, 16 Jan 2020, Julien Grall wrote: > Since commit c61c1b4943 "xen/page_alloc: statically allocate > bootmem_region_list", the boot allocator does not use the first page of > the first region passed for its own purpose. > > This reverts commit ae84f55353475f569daddb9a81ac0a6bc7772c90. > > Signed-off-by: Julien Grall Acked-by: Stefano Stabellini > --- > xen/arch/arm/setup.c | 8 +--- > 1 file changed, 1 insertion(+), 7 deletions(-) > > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index 9dd3738d44..494f70546b 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -594,7 +594,6 @@ static void __init setup_mm(void) > unsigned long heap_pages, xenheap_pages, domheap_pages; > int i; > const uint32_t ctr = READ_CP32(CTR); > -mfn_t boot_mfn_start, boot_mfn_end; > > if ( !bootinfo.mem.nr_banks ) > panic("No memory bank\n"); > @@ -667,11 +666,6 @@ static void __init setup_mm(void) > > setup_xenheap_mappings((e >> PAGE_SHIFT) - xenheap_pages, xenheap_pages); > > -/* We need a single mapped page for populating bootmem_region_list. */ > -boot_mfn_start = mfn_add(xenheap_mfn_end, -1); > -boot_mfn_end = xenheap_mfn_end; > -init_boot_pages(mfn_to_maddr(boot_mfn_start), > mfn_to_maddr(boot_mfn_end)); > - > /* Add non-xenheap memory */ > for ( i = 0; i < bootinfo.mem.nr_banks; i++ ) > { > @@ -717,7 +711,7 @@ static void __init setup_mm(void) > > /* Add xenheap memory that was not already added to the boot allocator. > */ > init_xenheap_pages(mfn_to_maddr(xenheap_mfn_start), > - mfn_to_maddr(boot_mfn_start)); > + mfn_to_maddr(xenheap_mfn_end)); > } > #else /* CONFIG_ARM_64 */ > static void __init setup_mm(void) > -- > 2.17.1 > ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel
[Xen-devel] [PATCH] Revert "xen/arm32: setup: Give a xenheap page to the boot allocator"
Since commit c61c1b4943 "xen/page_alloc: statically allocate bootmem_region_list", the boot allocator does not use the first page of the first region passed for its own purpose. This reverts commit ae84f55353475f569daddb9a81ac0a6bc7772c90. Signed-off-by: Julien Grall --- xen/arch/arm/setup.c | 8 +--- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 9dd3738d44..494f70546b 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -594,7 +594,6 @@ static void __init setup_mm(void) unsigned long heap_pages, xenheap_pages, domheap_pages; int i; const uint32_t ctr = READ_CP32(CTR); -mfn_t boot_mfn_start, boot_mfn_end; if ( !bootinfo.mem.nr_banks ) panic("No memory bank\n"); @@ -667,11 +666,6 @@ static void __init setup_mm(void) setup_xenheap_mappings((e >> PAGE_SHIFT) - xenheap_pages, xenheap_pages); -/* We need a single mapped page for populating bootmem_region_list. */ -boot_mfn_start = mfn_add(xenheap_mfn_end, -1); -boot_mfn_end = xenheap_mfn_end; -init_boot_pages(mfn_to_maddr(boot_mfn_start), mfn_to_maddr(boot_mfn_end)); - /* Add non-xenheap memory */ for ( i = 0; i < bootinfo.mem.nr_banks; i++ ) { @@ -717,7 +711,7 @@ static void __init setup_mm(void) /* Add xenheap memory that was not already added to the boot allocator. */ init_xenheap_pages(mfn_to_maddr(xenheap_mfn_start), - mfn_to_maddr(boot_mfn_start)); + mfn_to_maddr(xenheap_mfn_end)); } #else /* CONFIG_ARM_64 */ static void __init setup_mm(void) -- 2.17.1 ___ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel