From: Julien Grall Date: Mon, 11 Apr 2016 13:33:36 +0000 (+0100) Subject: xen/arm: acpi: Remove uncessary check in acpi_map_gic_cpu_interface X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~1287 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=adb3149b9cf2f30477a24dae99bea447a2d1b26c;p=xen.git xen/arm: acpi: Remove uncessary check in acpi_map_gic_cpu_interface This part of the code will never be executed when the entry corresponds to the boot CPU. Also print an error message rather when arch_cpu_init has failed. Signed-off-by: Julien Grall Reviewed-by: Stefano Stabellini Reviewed-by: Shannon Zhao --- diff --git a/xen/arch/arm/acpi/boot.c b/xen/arch/arm/acpi/boot.c index a952efd7e8..f3d8e7cc70 100644 --- a/xen/arch/arm/acpi/boot.c +++ b/xen/arch/arm/acpi/boot.c @@ -51,6 +51,7 @@ static void __init acpi_map_gic_cpu_interface(struct acpi_madt_generic_interrupt *processor) { int i; + int rc; u64 mpidr = processor->arm_mpidr & MPIDR_HWID_MASK; bool_t enabled = !!(processor->flags & ACPI_MADT_ENABLED); @@ -102,16 +103,16 @@ acpi_map_gic_cpu_interface(struct acpi_madt_generic_interrupt *processor) if ( !acpi_psci_present() ) return; - /* CPU 0 was already initialized */ - if ( enabled_cpus ) + if ( (rc = arch_cpu_init(enabled_cpus, NULL)) < 0 ) { - if ( arch_cpu_init(enabled_cpus, NULL) < 0 ) - return; - - /* map the logical cpu id to cpu MPIDR */ - cpu_logical_map(enabled_cpus) = mpidr; + printk("cpu%d: init failed (0x%"PRIx64" MPIDR): %d\n", + enabled_cpus, mpidr, rc); + return; } + /* map the logical cpu id to cpu MPIDR */ + cpu_logical_map(enabled_cpus) = mpidr; + enabled_cpus++; }