[lkml]   [2020]   [Mar]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH RFC tip/core/rcu 09/16] rcu-tasks: Add an RCU-tasks rude variant
On Mon, Mar 16, 2020 at 3:47 PM Joel Fernandes <> wrote:
> On Thu, Mar 12, 2020 at 11:16:55AM -0700, wrote:
> > From: "Paul E. McKenney" <>
> >
> > This commit adds a "rude" variant of RCU-tasks that has as quiescent
> > states schedule(), cond_resched_tasks_rcu_qs(), userspace execution,
> > and (in theory, anyway) cond_resched(). Updates make use of IPIs and
> > force an IPI and a context switch on each online CPU. This variant
> > is useful in some situations in tracing.
> Would it be possible to better clarify that the "rude version" works only
> from preempt-disabled regions? Is that also true for the "non-rude" version?
> Also it would be good to clarify better in cover letter, how these new
> flavors relate to the existing Tasks-RCU implementation.
> In the existing one, a quiescent state is a task updating its context switch
> counters such that it went to sleep at least once, implying there is no
> chance it is on an about to be destroyed trampoline.
> However, here we are trying to determine if a task state is no longer on an
> RQ (which I gleaned from the first patch). Sounds very similar, would the
> context switch counters not help in that determination as well? If it is Ok,
> it would be good to describe in cover letter about what is exactly is a
> quiescent state and what exactly is a reader section in the cover letter, for
> both non-rude and rude version. Thanks!

Just curious, why is the "rude" version better than SRCU? Seems the
schedule_on_each_cpu() would be much slower than SRCU especially if
there are 1000s of CPUs involved. Is there any reason that is a better


- Joel

 \ /
  Last update: 2020-03-16 21:19    [W:0.232 / U:23.800 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site