diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2014-05-02 17:32:30 +0200 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2014-07-01 12:01:14 -0400 |
commit | 50163a939e5248a17721142f5fdfe9a31accc64f (patch) | |
tree | e5a18ed7c87365fe519b2f181eaa74acefdaffc9 /kernel | |
parent | e07e87d7680b060c0c19f1595952fd74a565b17d (diff) |
Revert "migrate_disable pushd down in atomic_dec_and_spin_lock"
This reverts commit ff9c870c3e27d58c9512fad122e91436681fee5a.
Cc: stable-rt@vger.kernel.org
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/rtmutex.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/rtmutex.c b/kernel/rtmutex.c index 4057bc607923..d1b2ca08b160 100644 --- a/kernel/rtmutex.c +++ b/kernel/rtmutex.c @@ -952,12 +952,12 @@ int atomic_dec_and_spin_lock(atomic_t *atomic, spinlock_t *lock) /* Subtract 1 from counter unless that drops it to 0 (ie. it was 1) */ if (atomic_add_unless(atomic, -1, 1)) return 0; + migrate_disable(); rt_spin_lock(lock); - if (atomic_dec_and_test(atomic)){ - migrate_disable(); + if (atomic_dec_and_test(atomic)) return 1; - } rt_spin_unlock(lock); + migrate_enable(); return 0; } EXPORT_SYMBOL(atomic_dec_and_spin_lock); |