lkml.org 
[lkml]   [2010]   [Sep]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Problem with debugfs
    Hi, all,

    Yes, the problem is from code review, rather than in practice. I just wrote a
    doc to introduce debugfs, and then I could not find a way to protect the
    variable:)

    I think add a comment to the header file will be good enough for this.

    -- Kenneth


    On Tue, Sep 21, 2010 at 02:13:10PM +0800, Kenneth wrote:
    > Hello, Mr. Greg,
    >
    > I'm sorry I had not checked the git before sending my last mail.
    >
    > For the problem I mention, consider this scenarios:
    >
    > 1. mm/hwpoinson-inject.c create a debugfs file with
    > debugfs_create_u64("corrupt-filter-flags-mask", ...,
    > &hwpoison_filter_flags_mask)
    > 2. hwpoison_filter_flags_mask is supposed to be protected by filp->priv->mutex
    > of this file when it is accessed from user space.
    > 3. but when it is accessed from mm/memory-failure.c:hwpoison_filter_flags,
    > there is no way for the function to protect the operation (so it simply
    > ignore it). This may create a competition problem.
    >
    > It should be a problem.
    >
    > I'm sorry from my poor English skill.
    >
    > Best Regards
    > Kenneth Lee
    >
    > On Tue, Sep 21, 2010 at 10:21:12AM +0800, kenny wrote:
    > > Hi, there,
    > >
    > > I do not know who is the maintainer for debugfs now. But I think there is
    > > problem with its API: It uses filp->priv->mutex to protect the read/write (to
    > > the file) for the value of its attribute, but the mutex is not exported to the
    > > API user. Therefore, there is no way to protect its value when you directly
    > > use the value in your module.
    > >
    > > Is my understanding correct?
    > >
    > > Thanks
    > >
    > >
    > > Best Regards
    > > Kenneth Lee
    >
    >



    \
     
     \ /
      Last update: 2010-09-27 20:09    [W:0.023 / U:0.324 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site