git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
arch
/
x86_64
/
kernel
/
irq.c
diff --git
a/arch/x86_64/kernel/irq.c
b/arch/x86_64/kernel/irq.c
index
c874885
..
30d2a1e
100644
(file)
--- a/
arch/x86_64/kernel/irq.c
+++ b/
arch/x86_64/kernel/irq.c
@@
-38,8
+38,9
@@
int show_interrupts(struct seq_file *p, void *v)
if (i == 0) {
seq_printf(p, " ");
if (i == 0) {
seq_printf(p, " ");
- for_each_online_cpu(j)
- seq_printf(p, "CPU%d ",j);
+ for (j=0; j<NR_CPUS; j++)
+ if (cpu_online(j))
+ seq_printf(p, "CPU%d ",j);
seq_putc(p, '\n');
}
seq_putc(p, '\n');
}
@@
-52,8
+53,10
@@
int show_interrupts(struct seq_file *p, void *v)
#ifndef CONFIG_SMP
seq_printf(p, "%10u ", kstat_irqs(i));
#else
#ifndef CONFIG_SMP
seq_printf(p, "%10u ", kstat_irqs(i));
#else
- for_each_online_cpu(j)
- seq_printf(p, "%10u ", kstat_cpu(j).irqs[i]);
+ for (j=0; j<NR_CPUS; j++)
+ if (cpu_online(j))
+ seq_printf(p, "%10u ",
+ kstat_cpu(j).irqs[i]);
#endif
seq_printf(p, " %14s", irq_desc[i].handler->typename);
#endif
seq_printf(p, " %14s", irq_desc[i].handler->typename);
@@
-65,13
+68,15
@@
skip:
spin_unlock_irqrestore(&irq_desc[i].lock, flags);
} else if (i == NR_IRQS) {
seq_printf(p, "NMI: ");
spin_unlock_irqrestore(&irq_desc[i].lock, flags);
} else if (i == NR_IRQS) {
seq_printf(p, "NMI: ");
- for_each_online_cpu(j)
- seq_printf(p, "%10u ", cpu_pda(j)->__nmi_count);
+ for (j = 0; j < NR_CPUS; j++)
+ if (cpu_online(j))
+ seq_printf(p, "%10u ", cpu_pda(j)->__nmi_count);
seq_putc(p, '\n');
#ifdef CONFIG_X86_LOCAL_APIC
seq_printf(p, "LOC: ");
seq_putc(p, '\n');
#ifdef CONFIG_X86_LOCAL_APIC
seq_printf(p, "LOC: ");
- for_each_online_cpu(j)
- seq_printf(p, "%10u ", cpu_pda(j)->apic_timer_irqs);
+ for (j = 0; j < NR_CPUS; j++)
+ if (cpu_online(j))
+ seq_printf(p, "%10u ", cpu_pda(j)->apic_timer_irqs);
seq_putc(p, '\n');
#endif
seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count));
seq_putc(p, '\n');
#endif
seq_printf(p, "ERR: %10u\n", atomic_read(&irq_err_count));
@@
-91,8
+96,8
@@
skip:
*/
asmlinkage unsigned int do_IRQ(struct pt_regs *regs)
{
*/
asmlinkage unsigned int do_IRQ(struct pt_regs *regs)
{
- /* high bit used in ret_from_ code */
- unsigned irq =
~regs->orig_rax
;
+ /* high bit
s
used in ret_from_ code */
+ unsigned irq =
regs->orig_rax & 0xff
;
exit_idle();
irq_enter();
exit_idle();
irq_enter();