Re: [patch 00/13] vfs: add helpers to check r/o bind mounts

From: Miklos Szeredi
Date: Thu Apr 24 2008 - 10:17:23 EST


> > On Thu, Apr 24, 2008 at 03:05:21PM +0200, Miklos Szeredi wrote:
> > > Several calls to nfsd_setattr() for starters. But I didn't do a full
> > > audit of all vfs_* callers, there might well be others.
>
> BTW, nfsd_setattr() on r/o ->ex_mnt *will* fail. Again, check fh_verify()
> and see what it does with MAY_SATTR.

Ahh, nice and racy. __mnt_is_readonly() is't supposed to be used for
this sort of thing.

> And I certainly agree that it ought to be replaced by will/wont pair to
> close the remount race. One that had been there all along. All fh_verify()
> callers of that kind need it - we want to pull mnt_{will,wont}_write()
> pair into callers *and* stretch to protect the entire relevant area.
>
> Which contains vfs_...() in case of nfsd_create, etc. See what I mean?
> That's exactly the thing I'd been talking about - the area we want to
> cover is _bigger_ than vfs_...() and contains nfsd-specific logic. IOW,
> doesn't get folded into any VFS-provided helper.

I still don't get it why it needs to cover nfsd-specifi logic. What
does nfsd have to do with r/o mounts?

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