lkml.org 
[lkml]   [2015]   [May]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH RESEND 0/3] tracing/mm: Fix suspicious rcu_dereference_check() usage warnings
On Tue, 12 May 2015 13:36:01 -0700
Andrew Morton <akpm@linux-foundation.org> wrote:

> On Tue, 12 May 2015 16:03:51 -0400 Steven Rostedt <rostedt@goodmis.org> wrote:
>
> > On Tue, 12 May 2015 12:59:26 +0530
> > Shreyas B Prabhu <shreyas@linux.vnet.ibm.com> wrote:
> >
> > > Hi Steven,
> > > On closer look, there is no particular maintainer who picks changes to
> > > this file. Can you please pick these up?
> >
> > Perhaps Andrew Morton?
> >
> > No problem, I can take these too.
> >
>
> I grabbed them, thanks.
>
> > + TP_CONDITION(cpu_online(smp_processor_id())),
>
> Are we sure these can't generate check_preemption_disabled() warnings?
> Is there some reason why all these calls always occur with preemption
> disabled?

Good catch. I don't think the code does.

Now, I'm not sure if we should just add a raw_smp_processor_id(). The
idea is just to make sure that the CPU we are running on is online,
because it is possible to call theses trace points when the CPU is
going offline. If that happens, then there's a race with RCU.

Since a task can not be migrated to an offline CPU, we don't need to
worry about the cpu_online(smp_processor_id()) returning a false
positive. A false negative would just skip a tracepoint, but I'm not
sure that is possible either.

In any case, comments should also be added to why the condition is
there.

-- Steve


\
 
 \ /
  Last update: 2015-05-12 23:01    [W:0.043 / U:2.188 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site