Mailing List Archive

[PATCH] x86/ACPI: fix error indication from acpi_parse_madt_lapic_entries()
If the legacy APIC invocation of acpi_table_parse_madt() succeeds but
the x2APIC counterpart fails, this is regarded as failure by the
function, yet its return value would indicate success.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/acpi/boot.c
+++ b/xen/arch/x86/acpi/boot.c
@@ -452,7 +452,7 @@ static int __init acpi_parse_madt_lapic_
} else if (count < 0 || x2count < 0) {
printk(KERN_ERR PREFIX "Error parsing LAPIC entry\n");
/* TBD: Cleanup to allow fallback to MPS */
- return count;
+ return count < 0 ? count : x2count;
}

count =
@@ -464,7 +464,7 @@ static int __init acpi_parse_madt_lapic_
if (count < 0 || x2count < 0) {
printk(KERN_ERR PREFIX "Error parsing LAPIC NMI entry\n");
/* TBD: Cleanup to allow fallback to MPS */
- return count;
+ return count < 0 ? count : x2count;
}
return 0;
}




_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
Re: [PATCH] x86/ACPI: fix error indication from acpi_parse_madt_lapic_entries() [ In reply to ]
On 18/09/2012 16:19, "Jan Beulich" <JBeulich@suse.com> wrote:

> If the legacy APIC invocation of acpi_table_parse_madt() succeeds but
> the x2APIC counterpart fails, this is regarded as failure by the
> function, yet its return value would indicate success.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Keir Fraser <keir@xen.org>

> --- a/xen/arch/x86/acpi/boot.c
> +++ b/xen/arch/x86/acpi/boot.c
> @@ -452,7 +452,7 @@ static int __init acpi_parse_madt_lapic_
> } else if (count < 0 || x2count < 0) {
> printk(KERN_ERR PREFIX "Error parsing LAPIC entry\n");
> /* TBD: Cleanup to allow fallback to MPS */
> - return count;
> + return count < 0 ? count : x2count;
> }
>
> count =
> @@ -464,7 +464,7 @@ static int __init acpi_parse_madt_lapic_
> if (count < 0 || x2count < 0) {
> printk(KERN_ERR PREFIX "Error parsing LAPIC NMI entry\n");
> /* TBD: Cleanup to allow fallback to MPS */
> - return count;
> + return count < 0 ? count : x2count;
> }
> return 0;
> }
>
>
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel