diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-06-01 15:06:21 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-06-01 15:06:21 -0400 |
commit | 3d58f48ba05caed9118bce62b3047f8683438835 (patch) | |
tree | 94c911034f0e14ded73d3e9e6e9f8e22b6cad822 /arch/mips/sibyte/bcm1480 | |
parent | abfe0af9813153bae8c85d9bac966bafcb8ddab1 (diff) | |
parent | d9244b5d2fbfe9fa540024b410047af13ceec90f (diff) |
Merge branch 'linus' into irq/numa
Conflicts:
arch/mips/sibyte/bcm1480/irq.c
arch/mips/sibyte/sb1250/irq.c
Merge reason: we gathered a few conflicts plus update to latest upstream fixes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/mips/sibyte/bcm1480')
-rw-r--r-- | arch/mips/sibyte/bcm1480/irq.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/mips/sibyte/bcm1480/irq.c b/arch/mips/sibyte/bcm1480/irq.c index 4f256a131bf6..690de06bde90 100644 --- a/arch/mips/sibyte/bcm1480/irq.c +++ b/arch/mips/sibyte/bcm1480/irq.c | |||
@@ -113,7 +113,6 @@ static int bcm1480_set_affinity(unsigned int irq, const struct cpumask *mask) | |||
113 | { | 113 | { |
114 | int i = 0, old_cpu, cpu, int_on, k; | 114 | int i = 0, old_cpu, cpu, int_on, k; |
115 | u64 cur_ints; | 115 | u64 cur_ints; |
116 | struct irq_desc *desc = irq_desc + irq; | ||
117 | unsigned long flags; | 116 | unsigned long flags; |
118 | unsigned int irq_dirty; | 117 | unsigned int irq_dirty; |
119 | 118 | ||
@@ -127,8 +126,7 @@ static int bcm1480_set_affinity(unsigned int irq, const struct cpumask *mask) | |||
127 | cpu = cpu_logical_map(i); | 126 | cpu = cpu_logical_map(i); |
128 | 127 | ||
129 | /* Protect against other affinity changers and IMR manipulation */ | 128 | /* Protect against other affinity changers and IMR manipulation */ |
130 | spin_lock_irqsave(&desc->lock, flags); | 129 | spin_lock_irqsave(&bcm1480_imr_lock, flags); |
131 | spin_lock(&bcm1480_imr_lock); | ||
132 | 130 | ||
133 | /* Swizzle each CPU's IMR (but leave the IP selection alone) */ | 131 | /* Swizzle each CPU's IMR (but leave the IP selection alone) */ |
134 | old_cpu = bcm1480_irq_owner[irq]; | 132 | old_cpu = bcm1480_irq_owner[irq]; |
@@ -153,8 +151,7 @@ static int bcm1480_set_affinity(unsigned int irq, const struct cpumask *mask) | |||
153 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + (k*BCM1480_IMR_HL_SPACING))); | 151 | ____raw_writeq(cur_ints, IOADDR(A_BCM1480_IMR_MAPPER(cpu) + R_BCM1480_IMR_INTERRUPT_MASK_H + (k*BCM1480_IMR_HL_SPACING))); |
154 | } | 152 | } |
155 | } | 153 | } |
156 | spin_unlock(&bcm1480_imr_lock); | 154 | spin_unlock_irqrestore(&bcm1480_imr_lock, flags); |
157 | spin_unlock_irqrestore(&desc->lock, flags); | ||
158 | 155 | ||
159 | return 0; | 156 | return 0; |
160 | } | 157 | } |