Messages in this thread | | | Date | Mon, 4 Aug 2014 05:37:27 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [PATCH v3 tip/core/rcu 1/9] rcu: Add call_rcu_tasks() |
| |
On Mon, Aug 04, 2014 at 02:25:15PM +0200, Peter Zijlstra wrote: > On Mon, Aug 04, 2014 at 04:50:44AM -0700, Paul E. McKenney wrote: > > OK, I will bite... > > > > What kinds of tasks are on a runqueue, but neither ->on_cpu nor > > PREEMPT_ACTIVE? > > Userspace tasks, they don't necessarily get PREEMPT_ACTIVE when > preempted. Now obviously you're not _that_ interested in userspace tasks > for this, so that might be ok.
Right, I detect userspace tasks using RCU's scheduling-clock handler. (And code to handle the NO_HZ_FULL case is under construction.)
> But the main point was, you cannot use ->on_cpu or PREEMPT_ACTIVE > without holding rq->lock.
OK, got it.
Thanx, Paul
| |