aboutsummaryrefslogtreecommitdiff
path: root/arch/sparc/kernel/irq_64.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-03-13 17:08:30 +0100
committerIngo Molnar <mingo@elte.hu>2009-03-13 17:08:30 +0100
commit063402356280a7b262952d6351d21315336f657b (patch)
treee6fae7db15d0f4cbb9b9b7aa2b5bc176b4bf60f5 /arch/sparc/kernel/irq_64.c
parentf9a36fa5413f1b2694841c410a6fdb4666e78f16 (diff)
parenta98fe7f3425c6b4e90de16f8da63b0429a8fed08 (diff)
Merge branch 'x86/core' into x86/kconfig
Diffstat (limited to 'arch/sparc/kernel/irq_64.c')
-rw-r--r--arch/sparc/kernel/irq_64.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c
index 1c378d8e90c..233bd87a963 100644
--- a/arch/sparc/kernel/irq_64.c
+++ b/arch/sparc/kernel/irq_64.c
@@ -252,9 +252,10 @@ struct irq_handler_data {
#ifdef CONFIG_SMP
static int irq_choose_cpu(unsigned int virt_irq)
{
- cpumask_t mask = irq_desc[virt_irq].affinity;
+ cpumask_t mask;
int cpuid;
+ cpumask_copy(&mask, irq_desc[virt_irq].affinity);
if (cpus_equal(mask, CPU_MASK_ALL)) {
static int irq_rover;
static DEFINE_SPINLOCK(irq_rover_lock);
@@ -805,7 +806,7 @@ void fixup_irqs(void)
!(irq_desc[irq].status & IRQ_PER_CPU)) {
if (irq_desc[irq].chip->set_affinity)
irq_desc[irq].chip->set_affinity(irq,
- &irq_desc[irq].affinity);
+ irq_desc[irq].affinity);
}
spin_unlock_irqrestore(&irq_desc[irq].lock, flags);
}