diff options
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/irq/handle.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c index f51eaee921b6..8b70e5ef71a4 100644 --- a/kernel/irq/handle.c +++ b/kernel/irq/handle.c @@ -237,6 +237,7 @@ struct irq_desc irq_desc[NR_IRQS] __cacheline_aligned_in_smp = { } }; +static unsigned int kstat_irqs_all[NR_IRQS][NR_CPUS]; int __init early_irq_init(void) { struct irq_desc *desc; @@ -252,8 +253,10 @@ int __init early_irq_init(void) for (i = 0; i < count; i++) { desc[i].irq = i; + desc[i].kstat_irqs = kstat_irqs_all[i]; init_alloc_desc_masks(&desc[i], 0, true); } + return arch_early_irq_init(); } @@ -480,12 +483,10 @@ void early_init_irq_lock_class(void) } } -#ifdef CONFIG_SPARSE_IRQ unsigned int kstat_irqs_cpu(unsigned int irq, int cpu) { struct irq_desc *desc = irq_to_desc(irq); return desc ? desc->kstat_irqs[cpu] : 0; } -#endif EXPORT_SYMBOL(kstat_irqs_cpu); |