diff options
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2012-07-02 07:08:42 -0700 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2012-07-02 11:39:19 -0700 |
commit | cba6d0d64ee53772b285d0c0c288deefbeaf7775 (patch) | |
tree | b2d3de62d15a77d23708c1af6f188c86f0d87fb9 /include/linux/sched.h | |
parent | 6887a4131da3adaab011613776d865f4bcfb5678 (diff) | |
download | op-kernel-dev-cba6d0d64ee53772b285d0c0c288deefbeaf7775.zip op-kernel-dev-cba6d0d64ee53772b285d0c0c288deefbeaf7775.tar.gz |
Revert "rcu: Move PREEMPT_RCU preemption to switch_to() invocation"
This reverts commit 616c310e83b872024271c915c1b9ab505b9efad9.
(Move PREEMPT_RCU preemption to switch_to() invocation).
Testing by Sasha Levin <levinsasha928@gmail.com> showed that this
can result in deadlock due to invoking the scheduler when one of
the runqueue locks is held. Because this commit was simply a
performance optimization, revert it.
Reported-by: Sasha Levin <levinsasha928@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Tested-by: Sasha Levin <levinsasha928@gmail.com>
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 4059c0f..06a4c5f 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -1871,22 +1871,12 @@ static inline void rcu_copy_process(struct task_struct *p) INIT_LIST_HEAD(&p->rcu_node_entry); } -static inline void rcu_switch_from(struct task_struct *prev) -{ - if (prev->rcu_read_lock_nesting != 0) - rcu_preempt_note_context_switch(); -} - #else static inline void rcu_copy_process(struct task_struct *p) { } -static inline void rcu_switch_from(struct task_struct *prev) -{ -} - #endif #ifdef CONFIG_SMP |