Re: [PATCH 10/12] ACPI: processor: refactor internal map_lsapic_id()

David Rientjes
2010-01-25T22:22:17Z

On Mon, 25 Jan 2010, Alex Chiang wrote:

> diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c
> index 9213f95..ec5989c 100644
> --- a/drivers/acpi/processor_core.c
> +++ b/drivers/acpi/processor_core.c
> @@ -83,27 +83,17 @@ static int map_lsapic_id(struct acpi_subtable_header *entry,
> {
> struct acpi_madt_local_sapic *lsapic =
> (struct acpi_madt_local_sapic *)entry;
> - u32 tmp = (lsapic->id << 8) | lsapic->eid;
>
> - /* Only check enabled APICs*/
> if (!(lsapic->lapic_flags & ACPI_MADT_ENABLED))
> return 0;
>
> - /* Device statement declaration type */
> if (device_declaration) {
> - if (entry->length < 16)
> - printk(KERN_ERR PREFIX
> - "Invalid LSAPIC with Device type processor (SAPIC ID %#x)\n",
> - tmp);

Why drop this error message?

> - else if (lsapic->uid == acpi_id)
> - goto found;
> - /* Processor statement declaration type */
> - } else if (lsapic->processor_id == acpi_id)
> - goto found;
> + if ((entry->length < 16) || (lsapic->uid != acpi_id))
> + return 0;
> + } else if (lsapic->processor_id != acpi_id)
> + return 0;
>
> - return 0;
> -found:
> - *apic_id = tmp;
> + *apic_id = (lsapic->id << 8) | lsapic->eid;
> return 1;
> }
>