summaryrefslogtreecommitdiff
path: root/arch/arm/oprofile/op_model_mpcore.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-30 17:04:01 (GMT)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-30 17:04:01 (GMT)
commitf54496f55a729078e9eef90bf9e0783857a27db1 (patch)
tree104cf71ea8349a35990a9d3b58679229a604df31 /arch/arm/oprofile/op_model_mpcore.c
parentaa2d3322989d8fd40fb2e417142c9a029d7831a4 (diff)
parentcdea460643072e1ee3647434aa254b5b81364f68 (diff)
downloadlinux-f54496f55a729078e9eef90bf9e0783857a27db1.tar.xz
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] Fix some section mismatch warnings [ARM] 4417/1: Serial: Fix AMBA drivers locking [ARM] 4394/1: ARMv7: Add the TLB range operations [ARM] 4410/1: Remove extern declarations in coyote/ixdpg425-pci.c [ARM] 4416/1: NWFPE: fix undeclared symbols [ARM] 4415/1: AML5900: fix sparse warnings from map_io [ARM] 4414/1: S3C2443: sparse fix for clock.c [ARM] 4412/1: S3C2412: reset errata fix [ARM] 4411/1: KS8695: Another serial driver fix [ARM] oprofile: avoid lockdep warnings on mpcore oprofile init [ARM] Fix stacktrace FP range checking [ARM] use __used attribute [ARM] enable arbitary speed tty ioctls and split input/output speed [ARM] remove unused header file: arch/arm/mach-s3c2410/bast.h [ARM] 4406/1: Trivial NSLU2 / NAS-100D header & setup code cleanup [ARM] 4405/1: NSLU2, DSM-G600 frequency fixup code [ARM] 4404/1: Trivial IXP42x Kconfig cleanup [ARM] 4403/1: Make the PXA-I2C driver work with lockdep validator [ARM] 4402/1: S3C2443: Add physical address of HSMMC controller [ARM] 4401/1: S3C2443: Add definitions for port GPIOJ
Diffstat (limited to 'arch/arm/oprofile/op_model_mpcore.c')
-rw-r--r--arch/arm/oprofile/op_model_mpcore.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/arm/oprofile/op_model_mpcore.c b/arch/arm/oprofile/op_model_mpcore.c
index 8985007..7791da7 100644
--- a/arch/arm/oprofile/op_model_mpcore.c
+++ b/arch/arm/oprofile/op_model_mpcore.c
@@ -257,8 +257,13 @@ static void em_stop(void)
*/
static void em_route_irq(int irq, unsigned int cpu)
{
- irq_desc[irq].affinity = cpumask_of_cpu(cpu);
- irq_desc[irq].chip->set_affinity(irq, cpumask_of_cpu(cpu));
+ struct irq_desc *desc = irq_desc + irq;
+ cpumask_t mask = cpumask_of_cpu(cpu);
+
+ spin_lock_irq(&desc->lock);
+ desc->affinity = mask;
+ desc->chip->set_affinity(irq, mask);
+ spin_unlock_irq(&desc->lock);
}
static int em_setup(void)