diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-03-26 19:06:50 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-03-26 19:06:50 -0400 |
commit | a8416961d32d8bb757bcbb86b72042b66d044510 (patch) | |
tree | 85ae6a21a2d71541e3dae93f17da078f63e2341e /arch | |
parent | 6671de344cd661453bbee3cfde5574a974332436 (diff) | |
parent | fc2869f6a1993550c2765e934b117e993782db30 (diff) |
Merge branch 'irq-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'irq-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (32 commits)
x86: disable __do_IRQ support
sparseirq, powerpc/cell: fix unused variable warning in interrupt.c
genirq: deprecate obsolete typedefs and defines
genirq: deprecate __do_IRQ
genirq: add doc to struct irqaction
genirq: use kzalloc instead of explicit zero initialization
genirq: make irqreturn_t an enum
genirq: remove redundant if condition
genirq: remove unused hw_irq_controller typedef
irq: export remove_irq() and setup_irq() symbols
irq: match remove_irq() args with setup_irq()
irq: add remove_irq() for freeing of setup_irq() irqs
genirq: assert that irq handlers are indeed running in hardirq context
irq: name 'p' variables a bit better
irq: further clean up the free_irq() code flow
irq: refactor and clean up the free_irq() code flow
irq: clean up manage.c
irq: use GFP_KERNEL for action allocation in request_irq()
kernel/irq: fix sparse warning: make symbol static
irq: optimize init_kstat_irqs/init_copy_kstat_irqs
...
Diffstat (limited to 'arch')
-rw-r--r-- | arch/alpha/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/alpha/kernel/irq_alpha.c | 2 | ||||
-rw-r--r-- | arch/arm/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-ns9xxx/irq.c | 3 | ||||
-rw-r--r-- | arch/avr32/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/blackfin/kernel/irqchip.c | 2 | ||||
-rw-r--r-- | arch/cris/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/frv/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/h8300/kernel/irq.c | 4 | ||||
-rw-r--r-- | arch/ia64/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/m32r/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/mips/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/mn10300/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/parisc/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/powerpc/platforms/cell/interrupt.c | 4 | ||||
-rw-r--r-- | arch/sh/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/sparc/kernel/irq_64.c | 2 | ||||
-rw-r--r-- | arch/sparc/kernel/time_64.c | 2 | ||||
-rw-r--r-- | arch/um/kernel/irq.c | 2 | ||||
-rw-r--r-- | arch/x86/Kconfig | 3 | ||||
-rw-r--r-- | arch/xtensa/kernel/irq.c | 2 |
22 files changed, 25 insertions, 25 deletions
diff --git a/arch/alpha/kernel/irq.c b/arch/alpha/kernel/irq.c index 703731accda6..d3812eb84015 100644 --- a/arch/alpha/kernel/irq.c +++ b/arch/alpha/kernel/irq.c | |||
@@ -90,7 +90,7 @@ show_interrupts(struct seq_file *p, void *v) | |||
90 | seq_printf(p, "%10u ", kstat_irqs(irq)); | 90 | seq_printf(p, "%10u ", kstat_irqs(irq)); |
91 | #else | 91 | #else |
92 | for_each_online_cpu(j) | 92 | for_each_online_cpu(j) |
93 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[irq]); | 93 | seq_printf(p, "%10u ", kstat_irqs_cpu(irq, j)); |
94 | #endif | 94 | #endif |
95 | seq_printf(p, " %14s", irq_desc[irq].chip->typename); | 95 | seq_printf(p, " %14s", irq_desc[irq].chip->typename); |
96 | seq_printf(p, " %c%s", | 96 | seq_printf(p, " %c%s", |
diff --git a/arch/alpha/kernel/irq_alpha.c b/arch/alpha/kernel/irq_alpha.c index e16aeb6e79ef..67c19f8a9944 100644 --- a/arch/alpha/kernel/irq_alpha.c +++ b/arch/alpha/kernel/irq_alpha.c | |||
@@ -64,7 +64,7 @@ do_entInt(unsigned long type, unsigned long vector, | |||
64 | smp_percpu_timer_interrupt(regs); | 64 | smp_percpu_timer_interrupt(regs); |
65 | cpu = smp_processor_id(); | 65 | cpu = smp_processor_id(); |
66 | if (cpu != boot_cpuid) { | 66 | if (cpu != boot_cpuid) { |
67 | kstat_cpu(cpu).irqs[RTC_IRQ]++; | 67 | kstat_incr_irqs_this_cpu(RTC_IRQ, irq_to_desc(RTC_IRQ)); |
68 | } else { | 68 | } else { |
69 | handle_irq(RTC_IRQ); | 69 | handle_irq(RTC_IRQ); |
70 | } | 70 | } |
diff --git a/arch/arm/kernel/irq.c b/arch/arm/kernel/irq.c index 363db186cb93..7296f0416286 100644 --- a/arch/arm/kernel/irq.c +++ b/arch/arm/kernel/irq.c | |||
@@ -76,7 +76,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
76 | 76 | ||
77 | seq_printf(p, "%3d: ", i); | 77 | seq_printf(p, "%3d: ", i); |
78 | for_each_present_cpu(cpu) | 78 | for_each_present_cpu(cpu) |
79 | seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]); | 79 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu)); |
80 | seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-"); | 80 | seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-"); |
81 | seq_printf(p, " %s", action->name); | 81 | seq_printf(p, " %s", action->name); |
82 | for (action = action->next; action; action = action->next) | 82 | for (action = action->next; action; action = action->next) |
diff --git a/arch/arm/mach-ns9xxx/irq.c b/arch/arm/mach-ns9xxx/irq.c index 22e0eb6e9ec4..feb0e54a91de 100644 --- a/arch/arm/mach-ns9xxx/irq.c +++ b/arch/arm/mach-ns9xxx/irq.c | |||
@@ -63,7 +63,6 @@ static struct irq_chip ns9xxx_chip = { | |||
63 | #else | 63 | #else |
64 | static void handle_prio_irq(unsigned int irq, struct irq_desc *desc) | 64 | static void handle_prio_irq(unsigned int irq, struct irq_desc *desc) |
65 | { | 65 | { |
66 | unsigned int cpu = smp_processor_id(); | ||
67 | struct irqaction *action; | 66 | struct irqaction *action; |
68 | irqreturn_t action_ret; | 67 | irqreturn_t action_ret; |
69 | 68 | ||
@@ -72,7 +71,7 @@ static void handle_prio_irq(unsigned int irq, struct irq_desc *desc) | |||
72 | BUG_ON(desc->status & IRQ_INPROGRESS); | 71 | BUG_ON(desc->status & IRQ_INPROGRESS); |
73 | 72 | ||
74 | desc->status &= ~(IRQ_REPLAY | IRQ_WAITING); | 73 | desc->status &= ~(IRQ_REPLAY | IRQ_WAITING); |
75 | kstat_cpu(cpu).irqs[irq]++; | 74 | kstat_incr_irqs_this_cpu(irq, desc); |
76 | 75 | ||
77 | action = desc->action; | 76 | action = desc->action; |
78 | if (unlikely(!action || (desc->status & IRQ_DISABLED))) | 77 | if (unlikely(!action || (desc->status & IRQ_DISABLED))) |
diff --git a/arch/avr32/kernel/irq.c b/arch/avr32/kernel/irq.c index a8e767d836aa..9f572229d318 100644 --- a/arch/avr32/kernel/irq.c +++ b/arch/avr32/kernel/irq.c | |||
@@ -58,7 +58,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
58 | 58 | ||
59 | seq_printf(p, "%3d: ", i); | 59 | seq_printf(p, "%3d: ", i); |
60 | for_each_online_cpu(cpu) | 60 | for_each_online_cpu(cpu) |
61 | seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]); | 61 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu)); |
62 | seq_printf(p, " %8s", irq_desc[i].chip->name ? : "-"); | 62 | seq_printf(p, " %8s", irq_desc[i].chip->name ? : "-"); |
63 | seq_printf(p, " %s", action->name); | 63 | seq_printf(p, " %s", action->name); |
64 | for (action = action->next; action; action = action->next) | 64 | for (action = action->next; action; action = action->next) |
diff --git a/arch/blackfin/kernel/irqchip.c b/arch/blackfin/kernel/irqchip.c index 7fd126564846..bd052a67032e 100644 --- a/arch/blackfin/kernel/irqchip.c +++ b/arch/blackfin/kernel/irqchip.c | |||
@@ -83,7 +83,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
83 | goto skip; | 83 | goto skip; |
84 | seq_printf(p, "%3d: ", i); | 84 | seq_printf(p, "%3d: ", i); |
85 | for_each_online_cpu(j) | 85 | for_each_online_cpu(j) |
86 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 86 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
87 | seq_printf(p, " %8s", irq_desc[i].chip->name); | 87 | seq_printf(p, " %8s", irq_desc[i].chip->name); |
88 | seq_printf(p, " %s", action->name); | 88 | seq_printf(p, " %s", action->name); |
89 | for (action = action->next; action; action = action->next) | 89 | for (action = action->next; action; action = action->next) |
diff --git a/arch/cris/kernel/irq.c b/arch/cris/kernel/irq.c index 2dfac8c79090..7f642fcffbfc 100644 --- a/arch/cris/kernel/irq.c +++ b/arch/cris/kernel/irq.c | |||
@@ -66,7 +66,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
66 | seq_printf(p, "%10u ", kstat_irqs(i)); | 66 | seq_printf(p, "%10u ", kstat_irqs(i)); |
67 | #else | 67 | #else |
68 | for_each_online_cpu(j) | 68 | for_each_online_cpu(j) |
69 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 69 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
70 | #endif | 70 | #endif |
71 | seq_printf(p, " %14s", irq_desc[i].chip->typename); | 71 | seq_printf(p, " %14s", irq_desc[i].chip->typename); |
72 | seq_printf(p, " %s", action->name); | 72 | seq_printf(p, " %s", action->name); |
diff --git a/arch/frv/kernel/irq.c b/arch/frv/kernel/irq.c index 73abae767fdc..af3e824b91b3 100644 --- a/arch/frv/kernel/irq.c +++ b/arch/frv/kernel/irq.c | |||
@@ -74,7 +74,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
74 | if (action) { | 74 | if (action) { |
75 | seq_printf(p, "%3d: ", i); | 75 | seq_printf(p, "%3d: ", i); |
76 | for_each_present_cpu(cpu) | 76 | for_each_present_cpu(cpu) |
77 | seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]); | 77 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu)); |
78 | seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-"); | 78 | seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-"); |
79 | seq_printf(p, " %s", action->name); | 79 | seq_printf(p, " %s", action->name); |
80 | for (action = action->next; | 80 | for (action = action->next; |
diff --git a/arch/h8300/kernel/irq.c b/arch/h8300/kernel/irq.c index ef4f0047067d..74f8dd7b34d2 100644 --- a/arch/h8300/kernel/irq.c +++ b/arch/h8300/kernel/irq.c | |||
@@ -183,7 +183,7 @@ asmlinkage void do_IRQ(int irq) | |||
183 | #if defined(CONFIG_PROC_FS) | 183 | #if defined(CONFIG_PROC_FS) |
184 | int show_interrupts(struct seq_file *p, void *v) | 184 | int show_interrupts(struct seq_file *p, void *v) |
185 | { | 185 | { |
186 | int i = *(loff_t *) v, j; | 186 | int i = *(loff_t *) v; |
187 | struct irqaction * action; | 187 | struct irqaction * action; |
188 | unsigned long flags; | 188 | unsigned long flags; |
189 | 189 | ||
@@ -196,7 +196,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
196 | if (!action) | 196 | if (!action) |
197 | goto unlock; | 197 | goto unlock; |
198 | seq_printf(p, "%3d: ",i); | 198 | seq_printf(p, "%3d: ",i); |
199 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 199 | seq_printf(p, "%10u ", kstat_irqs(i)); |
200 | seq_printf(p, " %14s", irq_desc[i].chip->name); | 200 | seq_printf(p, " %14s", irq_desc[i].chip->name); |
201 | seq_printf(p, "-%-8s", irq_desc[i].name); | 201 | seq_printf(p, "-%-8s", irq_desc[i].name); |
202 | seq_printf(p, " %s", action->name); | 202 | seq_printf(p, " %s", action->name); |
diff --git a/arch/ia64/kernel/irq.c b/arch/ia64/kernel/irq.c index a58f64ca9f0e..4f596613bffd 100644 --- a/arch/ia64/kernel/irq.c +++ b/arch/ia64/kernel/irq.c | |||
@@ -80,7 +80,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
80 | seq_printf(p, "%10u ", kstat_irqs(i)); | 80 | seq_printf(p, "%10u ", kstat_irqs(i)); |
81 | #else | 81 | #else |
82 | for_each_online_cpu(j) { | 82 | for_each_online_cpu(j) { |
83 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 83 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
84 | } | 84 | } |
85 | #endif | 85 | #endif |
86 | seq_printf(p, " %14s", irq_desc[i].chip->name); | 86 | seq_printf(p, " %14s", irq_desc[i].chip->name); |
diff --git a/arch/m32r/kernel/irq.c b/arch/m32r/kernel/irq.c index 2aeae4670098..8dfd31e87c4c 100644 --- a/arch/m32r/kernel/irq.c +++ b/arch/m32r/kernel/irq.c | |||
@@ -49,7 +49,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
49 | seq_printf(p, "%10u ", kstat_irqs(i)); | 49 | seq_printf(p, "%10u ", kstat_irqs(i)); |
50 | #else | 50 | #else |
51 | for_each_online_cpu(j) | 51 | for_each_online_cpu(j) |
52 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 52 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
53 | #endif | 53 | #endif |
54 | seq_printf(p, " %14s", irq_desc[i].chip->typename); | 54 | seq_printf(p, " %14s", irq_desc[i].chip->typename); |
55 | seq_printf(p, " %s", action->name); | 55 | seq_printf(p, " %s", action->name); |
diff --git a/arch/mips/kernel/irq.c b/arch/mips/kernel/irq.c index 4b4007b3083a..7b845ba9dff4 100644 --- a/arch/mips/kernel/irq.c +++ b/arch/mips/kernel/irq.c | |||
@@ -108,7 +108,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
108 | seq_printf(p, "%10u ", kstat_irqs(i)); | 108 | seq_printf(p, "%10u ", kstat_irqs(i)); |
109 | #else | 109 | #else |
110 | for_each_online_cpu(j) | 110 | for_each_online_cpu(j) |
111 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 111 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
112 | #endif | 112 | #endif |
113 | seq_printf(p, " %14s", irq_desc[i].chip->name); | 113 | seq_printf(p, " %14s", irq_desc[i].chip->name); |
114 | seq_printf(p, " %s", action->name); | 114 | seq_printf(p, " %s", action->name); |
diff --git a/arch/mn10300/kernel/irq.c b/arch/mn10300/kernel/irq.c index 56c64ccc9c21..50fdb5c16e0c 100644 --- a/arch/mn10300/kernel/irq.c +++ b/arch/mn10300/kernel/irq.c | |||
@@ -221,7 +221,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
221 | if (action) { | 221 | if (action) { |
222 | seq_printf(p, "%3d: ", i); | 222 | seq_printf(p, "%3d: ", i); |
223 | for_each_present_cpu(cpu) | 223 | for_each_present_cpu(cpu) |
224 | seq_printf(p, "%10u ", kstat_cpu(cpu).irqs[i]); | 224 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu)); |
225 | seq_printf(p, " %14s.%u", irq_desc[i].chip->name, | 225 | seq_printf(p, " %14s.%u", irq_desc[i].chip->name, |
226 | (GxICR(i) & GxICR_LEVEL) >> | 226 | (GxICR(i) & GxICR_LEVEL) >> |
227 | GxICR_LEVEL_SHIFT); | 227 | GxICR_LEVEL_SHIFT); |
diff --git a/arch/parisc/kernel/irq.c b/arch/parisc/kernel/irq.c index 29e70e16ede8..adfd617b4c18 100644 --- a/arch/parisc/kernel/irq.c +++ b/arch/parisc/kernel/irq.c | |||
@@ -185,7 +185,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
185 | seq_printf(p, "%3d: ", i); | 185 | seq_printf(p, "%3d: ", i); |
186 | #ifdef CONFIG_SMP | 186 | #ifdef CONFIG_SMP |
187 | for_each_online_cpu(j) | 187 | for_each_online_cpu(j) |
188 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 188 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
189 | #else | 189 | #else |
190 | seq_printf(p, "%10u ", kstat_irqs(i)); | 190 | seq_printf(p, "%10u ", kstat_irqs(i)); |
191 | #endif | 191 | #endif |
diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c index 23b8b5e36f98..17efb7118db1 100644 --- a/arch/powerpc/kernel/irq.c +++ b/arch/powerpc/kernel/irq.c | |||
@@ -190,7 +190,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
190 | seq_printf(p, "%3d: ", i); | 190 | seq_printf(p, "%3d: ", i); |
191 | #ifdef CONFIG_SMP | 191 | #ifdef CONFIG_SMP |
192 | for_each_online_cpu(j) | 192 | for_each_online_cpu(j) |
193 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 193 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
194 | #else | 194 | #else |
195 | seq_printf(p, "%10u ", kstat_irqs(i)); | 195 | seq_printf(p, "%10u ", kstat_irqs(i)); |
196 | #endif /* CONFIG_SMP */ | 196 | #endif /* CONFIG_SMP */ |
diff --git a/arch/powerpc/platforms/cell/interrupt.c b/arch/powerpc/platforms/cell/interrupt.c index 28c04dab2633..882e47080e74 100644 --- a/arch/powerpc/platforms/cell/interrupt.c +++ b/arch/powerpc/platforms/cell/interrupt.c | |||
@@ -237,8 +237,6 @@ extern int noirqdebug; | |||
237 | 237 | ||
238 | static void handle_iic_irq(unsigned int irq, struct irq_desc *desc) | 238 | static void handle_iic_irq(unsigned int irq, struct irq_desc *desc) |
239 | { | 239 | { |
240 | const unsigned int cpu = smp_processor_id(); | ||
241 | |||
242 | spin_lock(&desc->lock); | 240 | spin_lock(&desc->lock); |
243 | 241 | ||
244 | desc->status &= ~(IRQ_REPLAY | IRQ_WAITING); | 242 | desc->status &= ~(IRQ_REPLAY | IRQ_WAITING); |
@@ -254,7 +252,7 @@ static void handle_iic_irq(unsigned int irq, struct irq_desc *desc) | |||
254 | goto out_eoi; | 252 | goto out_eoi; |
255 | } | 253 | } |
256 | 254 | ||
257 | kstat_cpu(cpu).irqs[irq]++; | 255 | kstat_incr_irqs_this_cpu(irq, desc); |
258 | 256 | ||
259 | /* Mark the IRQ currently in progress.*/ | 257 | /* Mark the IRQ currently in progress.*/ |
260 | desc->status |= IRQ_INPROGRESS; | 258 | desc->status |= IRQ_INPROGRESS; |
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c index 90d63aefd275..3f1372eb0091 100644 --- a/arch/sh/kernel/irq.c +++ b/arch/sh/kernel/irq.c | |||
@@ -51,7 +51,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
51 | goto unlock; | 51 | goto unlock; |
52 | seq_printf(p, "%3d: ",i); | 52 | seq_printf(p, "%3d: ",i); |
53 | for_each_online_cpu(j) | 53 | for_each_online_cpu(j) |
54 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 54 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
55 | seq_printf(p, " %14s", irq_desc[i].chip->name); | 55 | seq_printf(p, " %14s", irq_desc[i].chip->name); |
56 | seq_printf(p, "-%-8s", irq_desc[i].name); | 56 | seq_printf(p, "-%-8s", irq_desc[i].name); |
57 | seq_printf(p, " %s", action->name); | 57 | seq_printf(p, " %s", action->name); |
diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c index 1c378d8e90c5..8ba064f08a6f 100644 --- a/arch/sparc/kernel/irq_64.c +++ b/arch/sparc/kernel/irq_64.c | |||
@@ -185,7 +185,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
185 | seq_printf(p, "%10u ", kstat_irqs(i)); | 185 | seq_printf(p, "%10u ", kstat_irqs(i)); |
186 | #else | 186 | #else |
187 | for_each_online_cpu(j) | 187 | for_each_online_cpu(j) |
188 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 188 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
189 | #endif | 189 | #endif |
190 | seq_printf(p, " %9s", irq_desc[i].chip->typename); | 190 | seq_printf(p, " %9s", irq_desc[i].chip->typename); |
191 | seq_printf(p, " %s", action->name); | 191 | seq_printf(p, " %s", action->name); |
diff --git a/arch/sparc/kernel/time_64.c b/arch/sparc/kernel/time_64.c index 2db3c2229b95..642562d83ec4 100644 --- a/arch/sparc/kernel/time_64.c +++ b/arch/sparc/kernel/time_64.c | |||
@@ -36,10 +36,10 @@ | |||
36 | #include <linux/clocksource.h> | 36 | #include <linux/clocksource.h> |
37 | #include <linux/of_device.h> | 37 | #include <linux/of_device.h> |
38 | #include <linux/platform_device.h> | 38 | #include <linux/platform_device.h> |
39 | #include <linux/irq.h> | ||
39 | 40 | ||
40 | #include <asm/oplib.h> | 41 | #include <asm/oplib.h> |
41 | #include <asm/timer.h> | 42 | #include <asm/timer.h> |
42 | #include <asm/irq.h> | ||
43 | #include <asm/io.h> | 43 | #include <asm/io.h> |
44 | #include <asm/prom.h> | 44 | #include <asm/prom.h> |
45 | #include <asm/starfire.h> | 45 | #include <asm/starfire.h> |
diff --git a/arch/um/kernel/irq.c b/arch/um/kernel/irq.c index 3d7aad09b171..336b61569072 100644 --- a/arch/um/kernel/irq.c +++ b/arch/um/kernel/irq.c | |||
@@ -42,7 +42,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
42 | seq_printf(p, "%10u ", kstat_irqs(i)); | 42 | seq_printf(p, "%10u ", kstat_irqs(i)); |
43 | #else | 43 | #else |
44 | for_each_online_cpu(j) | 44 | for_each_online_cpu(j) |
45 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 45 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
46 | #endif | 46 | #endif |
47 | seq_printf(p, " %14s", irq_desc[i].chip->typename); | 47 | seq_printf(p, " %14s", irq_desc[i].chip->typename); |
48 | seq_printf(p, " %s", action->name); | 48 | seq_printf(p, " %s", action->name); |
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index bc2fbadff9f9..3a330a437c6f 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -165,6 +165,9 @@ config GENERIC_HARDIRQS | |||
165 | bool | 165 | bool |
166 | default y | 166 | default y |
167 | 167 | ||
168 | config GENERIC_HARDIRQS_NO__DO_IRQ | ||
169 | def_bool y | ||
170 | |||
168 | config GENERIC_IRQ_PROBE | 171 | config GENERIC_IRQ_PROBE |
169 | bool | 172 | bool |
170 | default y | 173 | default y |
diff --git a/arch/xtensa/kernel/irq.c b/arch/xtensa/kernel/irq.c index 5fbcde59a92d..f3b66fba5b8f 100644 --- a/arch/xtensa/kernel/irq.c +++ b/arch/xtensa/kernel/irq.c | |||
@@ -99,7 +99,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
99 | seq_printf(p, "%10u ", kstat_irqs(i)); | 99 | seq_printf(p, "%10u ", kstat_irqs(i)); |
100 | #else | 100 | #else |
101 | for_each_online_cpu(j) | 101 | for_each_online_cpu(j) |
102 | seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]); | 102 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); |
103 | #endif | 103 | #endif |
104 | seq_printf(p, " %14s", irq_desc[i].chip->typename); | 104 | seq_printf(p, " %14s", irq_desc[i].chip->typename); |
105 | seq_printf(p, " %s", action->name); | 105 | seq_printf(p, " %s", action->name); |