Messages in this thread | | | Date | Fri, 23 Jan 2015 14:54:11 -0800 | From | "Paul E. McKenney" <> | Subject | Re: rcu, sched: WARNING: CPU: 30 PID: 23771 at kernel/rcu/tree_plugin.h:337 rcu_read_unlock_special+0x369/0x550() |
| |
On Fri, Jan 23, 2015 at 04:51:52PM -0500, Sasha Levin wrote: > On 01/23/2015 04:36 AM, Paul E. McKenney wrote: > > diff --git a/kernel/rcu/tree_plugin.h b/kernel/rcu/tree_plugin.h > > index 8669de884445..ec99dc16aa38 100644 > > --- a/kernel/rcu/tree_plugin.h > > +++ b/kernel/rcu/tree_plugin.h > > @@ -322,6 +322,7 @@ void rcu_read_unlock_special(struct task_struct *t) > > special = t->rcu_read_unlock_special; > > if (special.b.need_qs) { > > rcu_preempt_qs(); > > + t->rcu_read_unlock_special.need_qs = false; > > It didn't compile, I've used: > > t->rcu_read_unlock_special.b.need_qs = false;
Apologies, I should have marked it "untested". Good show on finding the correct fix.
But does your fixed version help? ;-)
Thanx, Paul
| |