From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: Re: [PATCH v4 04/21] arm/acpi: Move end_boot_allocator after acpi_boot_table_init Date: Wed, 27 Jan 2016 14:53:13 +0000 Message-ID: References: <1453540813-15764-1-git-send-email-zhaoshenglong@huawei.com> <1453540813-15764-5-git-send-email-zhaoshenglong@huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1453540813-15764-5-git-send-email-zhaoshenglong@huawei.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Shannon Zhao Cc: ian.campbell@citrix.com, stefano.stabellini@eu.citrix.com, peter.huangpeng@huawei.com, xen-devel@lists.xen.org, julien.grall@citrix.com, stefano.stabellini@citrix.com, shannon.zhao@linaro.org List-Id: xen-devel@lists.xenproject.org On Sat, 23 Jan 2016, Shannon Zhao wrote: > From: Shannon Zhao > > If ACPI is initialized after the boot allocator has ended(the system > state is not early boot), assert happens in acpi_os_zalloc_memory and > acpi_boot_table_init will fail. So it needs to move end_boot_allocator > after acpi_boot_table_init. The commit message is wrong: on arm64 system_state is set to SYS_STATE_boot from start_xen few lines after the vm_init() call, end_boot_allocator() doesn't change it. Why do we need to move end_boot_allocator() exactly? > Signed-off-by: Parth Dixit > Signed-off-by: Shannon Zhao > --- > xen/arch/arm/setup.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index 3b29904..0ba601e 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -612,8 +612,6 @@ static void __init setup_mm(unsigned long dtb_paddr, size_t dtb_size) > allocator. */ > init_xenheap_pages(pfn_to_paddr(xenheap_mfn_start), > pfn_to_paddr(boot_mfn_start)); > - > - end_boot_allocator(); > } > #else /* CONFIG_ARM_64 */ > static void __init setup_mm(unsigned long dtb_paddr, size_t dtb_size) > @@ -681,8 +679,6 @@ static void __init setup_mm(unsigned long dtb_paddr, size_t dtb_size) > > setup_frametable_mappings(ram_start, ram_end); > max_page = PFN_DOWN(ram_end); > - > - end_boot_allocator(); > } > #endif > > @@ -753,6 +749,8 @@ void __init start_xen(unsigned long boot_phys_offset, > > setup_mm(fdt_paddr, fdt_size); > > + end_boot_allocator(); > + > vm_init(); > dt_unflatten_host_device_tree(); > > -- > 2.0.4 > >