On Wed, 15 Aug 2012 13:21:50 -0400 "J. Bruce Fields" wrote: > On Wed, Aug 15, 2012 at 05:48:08PM +0200, Miklos Szeredi wrote: > > From: Miklos Szeredi > > > > Add a new inode operation i_op->open(). This is for stacked > > Shouldn't that "->open()" be "->dentry_open()" ? > > --b. > > > filesystems that want to return a struct file from a different > > filesystem. > > > > Signed-off-by: Miklos Szeredi > > --- > > Documentation/filesystems/Locking | 2 ++ > > Documentation/filesystems/vfs.txt | 7 +++++++ > > fs/namei.c | 9 ++++++--- > > fs/open.c | 23 +++++++++++++++++++++-- > > include/linux/fs.h | 2 ++ > > 5 files changed, 38 insertions(+), 5 deletions(-) > > > > diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking > > index 0f103e3..d222b6a 100644 > > --- a/Documentation/filesystems/Locking > > +++ b/Documentation/filesystems/Locking > > @@ -64,6 +64,7 @@ prototypes: > > int (*atomic_open)(struct inode *, struct dentry *, > > struct file *, unsigned open_flag, > > umode_t create_mode, int *opened); > > + int (*dentry_open)(struct dentry *, struct file *, const struct cred *); > > > > locking rules: > > all may block > > @@ -92,6 +93,7 @@ removexattr: yes > > fiemap: no > > update_time: no > > atomic_open: yes > > +open: no > > and that last line should be +dentry_open: no ?? NeilBrown