Re: Problem with debugfs

From: Kenneth
Date: Fri Sep 24 2010 - 21:25:14 EST


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
>
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/