Messages in this thread | | | Date | Mon, 7 Nov 2011 09:55:23 -0800 | From | "Paul E. McKenney" <> | Subject | Re: [GIT PULL rcu/next] RCU commits for 3.1 |
| |
On Mon, Nov 07, 2011 at 06:09:49PM +0100, Peter Zijlstra wrote: > On Mon, 2011-11-07 at 08:56 -0800, Paul E. McKenney wrote: > > > > If this really is a false positive, what should be used to get rid of > > the splats? > > > Probably something slightly less horrid than the below.. ;-)
Hmmm... Could the "1" below be replaced by the task's reference count? Probabilistic, but should eventually catch it.
Thanx, Paul
> --- > > diff --git a/kernel/events/core.c b/kernel/events/core.c > index d1a1bee..8f05201 100644 > --- a/kernel/events/core.c > +++ b/kernel/events/core.c > @@ -229,7 +229,7 @@ static void perf_ctx_unlock(struct perf_cpu_context *cpuctx, > static inline struct perf_cgroup * > perf_cgroup_from_task(struct task_struct *task) > { > - return container_of(task_subsys_state(task, perf_subsys_id), > + return container_of(task_subsys_state_check(task, perf_subsys_id, 1), > struct perf_cgroup, css); > } > >
| |