]> Pileus Git - ~andy/linux/blobdiff - kernel/mutex.c
Merge commit 'v2.6.30-rc5' into sched/core
[~andy/linux] / kernel / mutex.c
index 507cf2b5e9f1e6328b2e335a3a05c0ead6a0ff3e..6ca5fe96e393a5176428e95b34d6aa9fcc20de2b 100644 (file)
@@ -249,7 +249,9 @@ __mutex_lock_common(struct mutex *lock, long state, unsigned int subclass,
 
                /* didnt get the lock, go to sleep: */
                spin_unlock_mutex(&lock->wait_lock, flags);
-               __schedule();
+               preempt_enable_no_resched();
+               schedule();
+               preempt_disable();
                spin_lock_mutex(&lock->wait_lock, flags);
        }