diff options
Diffstat (limited to 'arch/powerpc/lib/locks.c')
-rw-r--r-- | arch/powerpc/lib/locks.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/powerpc/lib/locks.c b/arch/powerpc/lib/locks.c index bb7cfecf2788..0c9c8d7d0734 100644 --- a/arch/powerpc/lib/locks.c +++ b/arch/powerpc/lib/locks.c | |||
@@ -32,7 +32,7 @@ void __spin_yield(arch_spinlock_t *lock) | |||
32 | return; | 32 | return; |
33 | holder_cpu = lock_value & 0xffff; | 33 | holder_cpu = lock_value & 0xffff; |
34 | BUG_ON(holder_cpu >= NR_CPUS); | 34 | BUG_ON(holder_cpu >= NR_CPUS); |
35 | yield_count = lppaca_of(holder_cpu).yield_count; | 35 | yield_count = be32_to_cpu(lppaca_of(holder_cpu).yield_count); |
36 | if ((yield_count & 1) == 0) | 36 | if ((yield_count & 1) == 0) |
37 | return; /* virtual cpu is currently running */ | 37 | return; /* virtual cpu is currently running */ |
38 | rmb(); | 38 | rmb(); |
@@ -57,7 +57,7 @@ void __rw_yield(arch_rwlock_t *rw) | |||
57 | return; /* no write lock at present */ | 57 | return; /* no write lock at present */ |
58 | holder_cpu = lock_value & 0xffff; | 58 | holder_cpu = lock_value & 0xffff; |
59 | BUG_ON(holder_cpu >= NR_CPUS); | 59 | BUG_ON(holder_cpu >= NR_CPUS); |
60 | yield_count = lppaca_of(holder_cpu).yield_count; | 60 | yield_count = be32_to_cpu(lppaca_of(holder_cpu).yield_count); |
61 | if ((yield_count & 1) == 0) | 61 | if ((yield_count & 1) == 0) |
62 | return; /* virtual cpu is currently running */ | 62 | return; /* virtual cpu is currently running */ |
63 | rmb(); | 63 | rmb(); |