Re: [PATCH tip/core/rcu 06/22] rcu: Rename cond_resched_rcu_qs() to cond_resched_tasks_rcu_qs()

From: Peter Zijlstra
Date: Mon Apr 23 2018 - 08:49:40 EST

On Mon, Apr 23, 2018 at 05:32:23AM -0700, Paul E. McKenney wrote:
> On Mon, Apr 23, 2018 at 10:53:47AM +0200, Peter Zijlstra wrote:
> > On Sun, Apr 22, 2018 at 07:32:11PM -0700, Paul E. McKenney wrote:
> > > Commit e31d28b6ab8f ("trace: Eliminate cond_resched_rcu_qs() in favor
> > > of cond_resched()") substituted cond_resched() for the earlier call
> > > to cond_resched_rcu_qs(). However, the new-age cond_resched() does
> > > not do anything to help RCU-tasks grace periods because (1) RCU-tasks
> > > is only enabled when CONFIG_PREEMPT=y and (2) cond_resched() is a
> > > complete no-op when preemption is enabled. This situation results
> > > in hangs when running the trace benchmarks.
> >
> > But a few patches earlier you tried to address that..
> Yes. And all this patch does is change the name to better match
> what this primitive actually does.
> I could merge the two patches, if that would help.

I understood the earlier patch was actually changing cond_resched() to
also work for task-rcu; which resulted in it acually not being a no-op
for PREEMPT anymore.

But then here you say it doesn't because it's a no-op.

It's not about the rename.. It is about one patch changing PREEMPT
cond_resched to not be a no-op and you here justifying things because
PREEMPT cond_resched it a no-op.