summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2009-01-12 17:39:24 -0800
committerMike Travis <travis@sgi.com>2009-01-12 17:39:24 -0800
commit4a046d1754ee6ebb6f399696805ed61ea0444d4c (patch)
tree9b9e8e63d9490aea4c2f06263ad541cb8115eb63 /kernel
parente65e49d0f3714f4a6a42f6f6a19926ba33fcda75 (diff)
downloadlinux-4a046d1754ee6ebb6f399696805ed61ea0444d4c.tar.gz
linux-4a046d1754ee6ebb6f399696805ed61ea0444d4c.tar.bz2
linux-4a046d1754ee6ebb6f399696805ed61ea0444d4c.zip
x86: arch_probe_nr_irqs
Impact: save RAM with large NR_CPUS, get smaller nr_irqs Signed-off-by: Yinghai Lu <yinghai@kernel.org> Signed-off-by: Mike Travis <travis@sgi.com>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/irq/handle.c9
-rw-r--r--kernel/softirq.c5
2 files changed, 7 insertions, 7 deletions
diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c
index 04d3e46031e5..375d68cd5bf0 100644
--- a/kernel/irq/handle.c
+++ b/kernel/irq/handle.c
@@ -59,10 +59,6 @@ EXPORT_SYMBOL_GPL(nr_irqs);
#ifdef CONFIG_SPARSE_IRQ
-#ifndef max_nr_irqs
-#define max_nr_irqs(nr_cpus) NR_IRQS
-#endif
-
static struct irq_desc irq_desc_init = {
.irq = -1,
.status = IRQ_DISABLED,
@@ -137,9 +133,8 @@ int __init early_irq_init(void)
int legacy_count;
int i;
- /* initialize nr_irqs based on nr_cpu_ids */
- nr_irqs = max_nr_irqs(nr_cpu_ids);
-
+ /* initialize nr_irqs based on nr_cpu_ids */
+ arch_probe_nr_irqs();
printk(KERN_INFO "NR_IRQS:%d nr_irqs:%d\n", NR_IRQS, nr_irqs);
desc = irq_desc_legacy;
diff --git a/kernel/softirq.c b/kernel/softirq.c
index bdbe9de9cd8d..0365b4899a3d 100644
--- a/kernel/softirq.c
+++ b/kernel/softirq.c
@@ -795,6 +795,11 @@ int __init __weak early_irq_init(void)
return 0;
}
+int __init __weak arch_probe_nr_irqs(void)
+{
+ return 0;
+}
+
int __init __weak arch_early_irq_init(void)
{
return 0;