aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Wang <rui.y.wang@intel.com>2016-06-08 02:59:53 -0400
committerIngo Molnar <mingo@kernel.org>2016-06-10 08:48:18 -0400
commit4855531eb8582a98cb905d2baf86021254d7a675 (patch)
tree7876926d4ce6a72586abee78e5205575ccfd5d4c
parent9d98bcec731756b8688b59ec998707924d716d7b (diff)
x86/ioapic: Simplify ioapic_setup_resources()
Optimize the function by removing the variable 'num'. Signed-off-by: Rui Wang <rui.y.wang@intel.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: tony.luck@intel.com Cc: linux-pci@vger.kernel.org Cc: rjw@rjwysocki.net Cc: linux-acpi@vger.kernel.org Cc: bhelgaas@google.com Link: http://lkml.kernel.org/r/1465369193-4816-4-git-send-email-rui.y.wang@intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--arch/x86/kernel/apic/io_apic.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
index 446702ed99dc..e58729597a7a 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -2567,29 +2567,25 @@ static struct resource * __init ioapic_setup_resources(void)
2567 unsigned long n; 2567 unsigned long n;
2568 struct resource *res; 2568 struct resource *res;
2569 char *mem; 2569 char *mem;
2570 int i, num = 0; 2570 int i;
2571 2571
2572 for_each_ioapic(i) 2572 if (nr_ioapics == 0)
2573 num++;
2574 if (num == 0)
2575 return NULL; 2573 return NULL;
2576 2574
2577 n = IOAPIC_RESOURCE_NAME_SIZE + sizeof(struct resource); 2575 n = IOAPIC_RESOURCE_NAME_SIZE + sizeof(struct resource);
2578 n *= num; 2576 n *= nr_ioapics;
2579 2577
2580 mem = alloc_bootmem(n); 2578 mem = alloc_bootmem(n);
2581 res = (void *)mem; 2579 res = (void *)mem;
2582 2580
2583 mem += sizeof(struct resource) * num; 2581 mem += sizeof(struct resource) * nr_ioapics;
2584 2582
2585 num = 0;
2586 for_each_ioapic(i) { 2583 for_each_ioapic(i) {
2587 res[num].name = mem; 2584 res[i].name = mem;
2588 res[num].flags = IORESOURCE_MEM | IORESOURCE_BUSY; 2585 res[i].flags = IORESOURCE_MEM | IORESOURCE_BUSY;
2589 snprintf(mem, IOAPIC_RESOURCE_NAME_SIZE, "IOAPIC %u", i); 2586 snprintf(mem, IOAPIC_RESOURCE_NAME_SIZE, "IOAPIC %u", i);
2590 mem += IOAPIC_RESOURCE_NAME_SIZE; 2587 mem += IOAPIC_RESOURCE_NAME_SIZE;
2591 ioapics[i].iomem_res = &res[num]; 2588 ioapics[i].iomem_res = &res[i];
2592 num++;
2593 } 2589 }
2594 2590
2595 ioapic_resources = res; 2591 ioapic_resources = res;