Re: [GIT PULL] vfs.git

From: Al Viro
Date: Thu Dec 11 2014 - 13:06:32 EST


On Thu, Dec 11, 2014 at 05:18:21PM +0100, Miklos Szeredi wrote:
> On Wed, Dec 10, 2014 at 8:13 PM, Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
>
> > * killing a bunch of ->f_path.dentry users (and f_dentry macro).
> > Getting that completed will make life much simpler for unionmount/overlayfs,
> > since then we'll be able to limit the places sensitive to file _dentry_
> > to reasonably few. Which allows to have file_inode(file) pointing to
> > inode in a covered layer, with dentry pointing to (negative) dentry in
> > union one. Still not complete, but much closer now.
>
> If we want f_path to point to union path, then shouldn't we be hiding
> it from all but core VFS? Filesystems have no business looking at the
> mount anyway. And looking at the union dentry will be just an endless
> source of bugs.
>
> Also some API changes are in order, like passing dentry to ->iterate()
> for "readdirplus" like operations, since f_path.dentry won't be usable
> for that purpose. Alternatively replace f_inode with f_dentry and
> make file_inode() use that.

Check the remaining users of ->f_path.dentry. I agree that they ought to
be encapsulated into a sane set of helpers - raw access to ->f_path in
filesystems is asking for serious trouble. And we have very few such places
remaining.

FWIW, I would prefer to have the whole stack of underlying dentries reachable
in a uniform way...

PS: I'll send review of your multilayer stuff today.
--
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/