diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2009-03-23 09:50:03 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2009-03-23 16:20:20 -0400 |
commit | 80c5520811d3805adcb15c570ea5e2d489fa5d0b (patch) | |
tree | ae797a7f4af39f80e77526533d06ac23b439f0ab /arch/sparc | |
parent | b3e3b302cf6dc8d60b67f0e84d1fa5648889c038 (diff) | |
parent | 8c083f081d0014057901c68a0a3e0f8ca7ac8d23 (diff) |
Merge branch 'cpus4096' into irq/threaded
Conflicts:
arch/parisc/kernel/irq.c
kernel/irq/handle.c
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/sparc')
-rw-r--r-- | arch/sparc/include/asm/mmzone.h | 2 | ||||
-rw-r--r-- | arch/sparc/kernel/irq_64.c | 5 | ||||
-rw-r--r-- | arch/sparc/kernel/time_64.c | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/arch/sparc/include/asm/mmzone.h b/arch/sparc/include/asm/mmzone.h index ebf5986c12e..e8c648741ed 100644 --- a/arch/sparc/include/asm/mmzone.h +++ b/arch/sparc/include/asm/mmzone.h | |||
@@ -3,6 +3,8 @@ | |||
3 | 3 | ||
4 | #ifdef CONFIG_NEED_MULTIPLE_NODES | 4 | #ifdef CONFIG_NEED_MULTIPLE_NODES |
5 | 5 | ||
6 | #include <linux/cpumask.h> | ||
7 | |||
6 | extern struct pglist_data *node_data[]; | 8 | extern struct pglist_data *node_data[]; |
7 | 9 | ||
8 | #define NODE_DATA(nid) (node_data[nid]) | 10 | #define NODE_DATA(nid) (node_data[nid]) |
diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c index 8ba064f08a6..d0d6a515499 100644 --- a/arch/sparc/kernel/irq_64.c +++ b/arch/sparc/kernel/irq_64.c | |||
@@ -252,9 +252,10 @@ struct irq_handler_data { | |||
252 | #ifdef CONFIG_SMP | 252 | #ifdef CONFIG_SMP |
253 | static int irq_choose_cpu(unsigned int virt_irq) | 253 | static int irq_choose_cpu(unsigned int virt_irq) |
254 | { | 254 | { |
255 | cpumask_t mask = irq_desc[virt_irq].affinity; | 255 | cpumask_t mask; |
256 | int cpuid; | 256 | int cpuid; |
257 | 257 | ||
258 | cpumask_copy(&mask, irq_desc[virt_irq].affinity); | ||
258 | if (cpus_equal(mask, CPU_MASK_ALL)) { | 259 | if (cpus_equal(mask, CPU_MASK_ALL)) { |
259 | static int irq_rover; | 260 | static int irq_rover; |
260 | static DEFINE_SPINLOCK(irq_rover_lock); | 261 | static DEFINE_SPINLOCK(irq_rover_lock); |
@@ -805,7 +806,7 @@ void fixup_irqs(void) | |||
805 | !(irq_desc[irq].status & IRQ_PER_CPU)) { | 806 | !(irq_desc[irq].status & IRQ_PER_CPU)) { |
806 | if (irq_desc[irq].chip->set_affinity) | 807 | if (irq_desc[irq].chip->set_affinity) |
807 | irq_desc[irq].chip->set_affinity(irq, | 808 | irq_desc[irq].chip->set_affinity(irq, |
808 | &irq_desc[irq].affinity); | 809 | irq_desc[irq].affinity); |
809 | } | 810 | } |
810 | spin_unlock_irqrestore(&irq_desc[irq].lock, flags); | 811 | spin_unlock_irqrestore(&irq_desc[irq].lock, flags); |
811 | } | 812 | } |
diff --git a/arch/sparc/kernel/time_64.c b/arch/sparc/kernel/time_64.c index 642562d83ec..f95066b6f80 100644 --- a/arch/sparc/kernel/time_64.c +++ b/arch/sparc/kernel/time_64.c | |||
@@ -729,7 +729,7 @@ void timer_interrupt(int irq, struct pt_regs *regs) | |||
729 | 729 | ||
730 | irq_enter(); | 730 | irq_enter(); |
731 | 731 | ||
732 | kstat_this_cpu.irqs[0]++; | 732 | kstat_incr_irqs_this_cpu(0, irq_to_desc(0)); |
733 | 733 | ||
734 | if (unlikely(!evt->event_handler)) { | 734 | if (unlikely(!evt->event_handler)) { |
735 | printk(KERN_WARNING | 735 | printk(KERN_WARNING |