diff options
author | Steven Miao <realmz6@gmail.com> | 2013-07-16 13:25:21 +0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-16 08:42:10 -0700 |
commit | 16fc5bc4c76b9ac335c2b39943f29c5d047a822d (patch) | |
tree | 4fec6c0ff241a555e83e9128bd6cb168cc8792b8 /arch/blackfin | |
parent | f2ec26a3d41c8a07861aed23bc8c8eb7d9445d62 (diff) | |
download | lwn-16fc5bc4c76b9ac335c2b39943f29c5d047a822d.tar.gz lwn-16fc5bc4c76b9ac335c2b39943f29c5d047a822d.zip |
smp: blackfin: fix check error, using atomic_ops to handle atomic_t type
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Steven Miao <realmz6@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/blackfin')
-rw-r--r-- | arch/blackfin/mach-common/smp.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/blackfin/mach-common/smp.c b/arch/blackfin/mach-common/smp.c index 961d8392e5e3..b5f9ed7d4856 100644 --- a/arch/blackfin/mach-common/smp.c +++ b/arch/blackfin/mach-common/smp.c @@ -147,7 +147,7 @@ static irqreturn_t ipi_handler_int1(int irq, void *dev_instance) platform_clear_ipi(cpu, IRQ_SUPPLE_1); bfin_ipi_data = &__get_cpu_var(bfin_ipi); - while ((pending = xchg(&bfin_ipi_data->bits, 0)) != 0) { + while ((pending = atomic_xchg(&bfin_ipi_data->bits, 0)) != 0) { msg = 0; do { msg = find_next_bit(&pending, BITS_PER_LONG, msg + 1); @@ -182,8 +182,8 @@ static void bfin_ipi_init(void) struct ipi_data *bfin_ipi_data; for_each_possible_cpu(cpu) { bfin_ipi_data = &per_cpu(bfin_ipi, cpu); - bfin_ipi_data->bits = 0; - bfin_ipi_data->count = 0; + atomic_set(&bfin_ipi_data->bits, 0); + atomic_set(&bfin_ipi_data->count, 0); } } |