Messages in this thread | | | Date | Fri, 11 May 2018 13:29:10 -0400 | From | Steven Rostedt <> | Subject | Re: [PATCH] rcu: Report a quiescent state when it's exactly in the state |
| |
On Fri, 11 May 2018 10:27:35 -0700 "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> wrote:
> On Fri, May 11, 2018 at 12:27:12PM -0400, Steven Rostedt wrote: > > On Fri, 11 May 2018 12:25:28 -0400 > > Steven Rostedt <rostedt@goodmis.org> wrote: > > > > > I would also say that one should never call schedule() directly without > > > changing its state to something other than TASK_RUNNING. Hence, calling > > > schedule directly is saying you are ready to sleep. But that is not the > > > case with cond_resched() which should always be called with the state > > > as TASK_RUNNING. > > > > To continue this, with tracing, when a task is scheduled out in the > > RUNNING state, it is considered preempted, otherwise it is not. > > I suppose another option would be for cond_resched_tasks_rcu_qs() to set > (and later clear) a per-CPU variable that causes rcu_note_context_switch() > to ignore its "preempt" parameter. Byungchul's approach seems more > straightforward, though.
I agree that I prefer Byungchul's approach better ;-)
-- Steve
| |