diff options
| author | Alex Chiang <achiang@hp.com> | 2010-02-22 14:11:55 -0500 |
|---|---|---|
| committer | Len Brown <len.brown@intel.com> | 2010-03-14 21:17:25 -0400 |
| commit | eae701ceadf5aa3fc3b334029ef71f6885ef1cde (patch) | |
| tree | f29640511c27d52a953db35d8716e7c309f0a2f6 | |
| parent | d67420956b7b1dcffb894b2f1f81b9408fca1b4c (diff) | |
ACPI: processor: refactor internal map_lsapic_id()
Un-nest the if statements for readability.
Remove comments that re-state the obvious.
Change the control flow so that we no longer need a temp variable.
Acked-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
| -rw-r--r-- | drivers/acpi/processor_core.c | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c index 18fa6337c12c..ee9bce18c084 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, | |||
| 83 | { | 83 | { |
| 84 | struct acpi_madt_local_sapic *lsapic = | 84 | struct acpi_madt_local_sapic *lsapic = |
| 85 | (struct acpi_madt_local_sapic *)entry; | 85 | (struct acpi_madt_local_sapic *)entry; |
| 86 | u32 tmp = (lsapic->id << 8) | lsapic->eid; | ||
| 87 | 86 | ||
| 88 | /* Only check enabled APICs*/ | ||
| 89 | if (!(lsapic->lapic_flags & ACPI_MADT_ENABLED)) | 87 | if (!(lsapic->lapic_flags & ACPI_MADT_ENABLED)) |
| 90 | return 0; | 88 | return 0; |
| 91 | 89 | ||
| 92 | /* Device statement declaration type */ | ||
| 93 | if (device_declaration) { | 90 | if (device_declaration) { |
| 94 | if (entry->length < 16) | 91 | if ((entry->length < 16) || (lsapic->uid != acpi_id)) |
| 95 | printk(KERN_ERR PREFIX | 92 | return 0; |
| 96 | "Invalid LSAPIC with Device type processor (SAPIC ID %#x)\n", | 93 | } else if (lsapic->processor_id != acpi_id) |
| 97 | tmp); | 94 | return 0; |
| 98 | else if (lsapic->uid == acpi_id) | ||
| 99 | goto found; | ||
| 100 | /* Processor statement declaration type */ | ||
| 101 | } else if (lsapic->processor_id == acpi_id) | ||
| 102 | goto found; | ||
| 103 | 95 | ||
| 104 | return 0; | 96 | *apic_id = (lsapic->id << 8) | lsapic->eid; |
| 105 | found: | ||
| 106 | *apic_id = tmp; | ||
| 107 | return 1; | 97 | return 1; |
| 108 | } | 98 | } |
| 109 | 99 | ||
