diff options
Diffstat (limited to 'arch/powerpc/lib/locks.c')
-rw-r--r-- | arch/powerpc/lib/locks.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/lib/locks.c b/arch/powerpc/lib/locks.c index 58e14fba11b1..55c79086f263 100644 --- a/arch/powerpc/lib/locks.c +++ b/arch/powerpc/lib/locks.c | |||
@@ -86,8 +86,10 @@ void arch_spin_unlock_wait(arch_spinlock_t *lock) | |||
86 | { | 86 | { |
87 | while (lock->slock) { | 87 | while (lock->slock) { |
88 | HMT_low(); | 88 | HMT_low(); |
89 | preempt_disable(); | ||
89 | if (SHARED_PROCESSOR) | 90 | if (SHARED_PROCESSOR) |
90 | __spin_yield(lock); | 91 | __spin_yield(lock); |
92 | preempt_enable(); | ||
91 | } | 93 | } |
92 | HMT_medium(); | 94 | HMT_medium(); |
93 | } | 95 | } |