lkml.org 
[lkml]   [2013]   [Jul]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Re: [RFC PATCH V2] tracing: Check f_dentry before accessing event_file/call in inode->i_private
    (2013/07/18 23:51), Oleg Nesterov wrote:
    > On 07/18, Masami Hiramatsu wrote:
    >>
    >> (2013/07/17 23:51), Oleg Nesterov wrote:
    >>> Well, perhaps you are right... But this TRACE_EVENT_FL_REF_MASK code
    >>> is new too, it is not that we only need a small fixlets to finish it.
    >>
    >> Would you mean that TRACE_EVENT_FL_REF_MASK may also have some problems?
    >
    > It was you who initially pointed that it does have problems ;)
    >
    > And, _afaics_ your patch which tries to fix this problem is not
    > exactly correct.

    Hm,

    > It removes trace_array_get/put from tracing_open_generic_file() and
    > tracing_release_generic_file(). This assumes that "call->flags++" is
    > enough, but it is not.

    No, it replaces trace_array_get/put with ftrace_event_file_get/put
    which calls trace_array_get/put inside.
    (Just one point, previous ftrace_event_file_get has a racy point
    when it does tr->ref++, it should be fixed.)

    > Yes, the next patch adds the "flags & TRACE_EVENT_FL_REF_MASK" check
    > into trace_remove_event_call() path. But this is still racy wrt
    > instance_delete() unless I missed something.
    >
    > IOW, I believe that either .open() should do trace_array_get(), or
    > __trace_remove_event_dirs() needs another for-each-file loop which
    > checks file->call->flags & TRACE_EVENT_FL_REF_MASK.

    Agreed :)

    >>> So I think that it makes sense to discuss the alternatives before we
    >>> decide what exactly we should do.
    >>
    >> Your approach is also interesting for me, indeed. However, it is so
    >> different from current one. I think you should clarify what bug you
    >> would like to solve and how.
    >
    > The same bugs which Steven's 1/4 tries to solve ;)

    OK, let me confirm that, would you mean we still need 2/4 - 4/4?

    Thank you,
    --
    Masami HIRAMATSU
    IT Management Research Dept. Linux Technology Center
    Hitachi, Ltd., Yokohama Research Laboratory
    E-mail: masami.hiramatsu.pt@hitachi.com




    \
     
     \ /
      Last update: 2013-07-19 09:01    [W:4.241 / U:0.128 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site