[PATCH 3/4] irq: initialize nr_irqs based on nr_cpu_ids

From: Mike Travis
Date: Sat Jan 10 2009 - 17:39:40 EST


Impact: Reduce memory usage.

This is the second half of the changes to make the irq_desc_ptrs be
variable sized based on nr_cpu_ids. The algorithm is the same as the
setting of NR_IRQS except use nr_cpu_ids instead of NR_CPUS. This is
only when CONFIG_SPARSE_IRQS=y.

Signed-off-by: Mike Travis <travis@xxxxxxx>
---
kernel/irq/handle.c | 5 +++++
1 file changed, 5 insertions(+)

Files linux-2.6-for-ingo.orig/kernel/irq/.handle.c.swp and linux-2.6-for-ingo/kernel/irq/.handle.c.swp differ
--- linux-2.6-for-ingo.orig/kernel/irq/handle.c
+++ linux-2.6-for-ingo/kernel/irq/handle.c
@@ -133,6 +133,11 @@ int __init early_irq_init(void)
int legacy_count;
int i;

+ /* initialize nr_irqs based on nr_cpu_ids */
+ nr_irqs = (8 * nr_cpu_ids) > (32 * MAX_IO_APICS) ?
+ NR_VECTORS + (8 * nr_cpu_ids) :
+ NR_VECTORS + (32 * MAX_IO_APICS);
+
printk(KERN_INFO "NR_IRQS:%d nr_irqs:%d\n", NR_IRQS, nr_irqs);

desc = irq_desc_legacy;

--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/