linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Al Viro <viro@ZenIV.linux.org.uk>
To: Erez Zadok <ezk@cs.sunysb.edu>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>,
	Miklos Szeredi <miklos@szeredi.hu>,
	akpm@linux-foundation.org, dave@linux.vnet.ibm.com,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [patch 01/10] vfs: add path_create() and path_mknod()
Date: Thu, 3 Apr 2008 02:46:22 +0100	[thread overview]
Message-ID: <20080403014622.GW9785@ZenIV.linux.org.uk> (raw)
In-Reply-To: <200804030137.m331b1O8004886@agora.fsl.cs.sunysb.edu>

On Wed, Apr 02, 2008 at 09:37:01PM -0400, Erez Zadok wrote:
> Since you've hinted of major vfs changes post-25, here's my take.
> 
> Right now I (and to a similar extent ecryptfs too) needs to keep track of
> vfsmounts for various reasons:
> 
> - to grab a reference so the lower filesystems/mounts won't disappear on me

Umm...  Strictly speaking that's not true; you can grab an active reference
to superblock and then superblock will stay.  vfsmount is usually more
convenient, but that's it.

> - to pass it to dentry_open (opening the lower file)
> - some fs ops pass a vfsmount (umount_begin, show_options)

Thank Trond for the former, BTW ;-)  Both methods will be back to sanity;
for umount_begin() the only obstacle is cifs mess, where we do unconditional
(and bogus) work at each umount(2).  With that fixed, we'll be back to
calling it only for forced umount and passing it only superblock.
->show_options() can and should revert immediately after 2.6.25; thanks
for pointing that one out.

> - some fs ops or vfs helpers require a nameidata or struct path which embed
>   a vfsmount inside

*ONLY* ->follow_link().  Which has to, by definition...  The rest will be
gone by .26.

> - sometimes it's ok to pass NULL for those things, sometimes it's not ok

See above.  This crap will be gone.  For ->follow_link() nobody is allowed
to pass NULL as nameidata, period.

> In the longer run, is there a way that a stackable f/s could traverse the
> namespace below it w/o knowing or caring how they are composed (assorted r-w
> and r-o bind mounts and such)?

Eh?  Explain, please...

  reply	other threads:[~2008-04-03  1:46 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-02 20:12 [patch 00/10] vfs: add helpers to check r/o bind mounts Miklos Szeredi
2008-04-02 20:12 ` [patch 01/10] vfs: add path_create() and path_mknod() Miklos Szeredi
2008-04-02 20:54   ` Al Viro
2008-04-02 21:11     ` Miklos Szeredi
2008-04-02 21:48       ` Al Viro
2008-04-02 22:21         ` Trond Myklebust
2008-04-02 22:36           ` Al Viro
2008-04-02 23:19             ` Trond Myklebust
2008-04-02 23:40               ` Al Viro
2008-04-02 23:47                 ` Al Viro
2008-04-03  0:42                   ` Trond Myklebust
2008-04-03  0:47                     ` Erez Zadok
2008-04-03  1:00                       ` Al Viro
2008-04-03  1:37                         ` Erez Zadok
2008-04-03  1:46                           ` Al Viro [this message]
2008-04-03  2:21                             ` Erez Zadok
2008-04-03  2:32                               ` Al Viro
2008-04-03 23:24                                 ` Erez Zadok
2008-04-04 11:04                                   ` Miklos Szeredi
2008-04-03  0:58                     ` Al Viro
2008-04-03  7:32         ` Miklos Szeredi
2008-04-03 22:32           ` Erez Zadok
2008-04-03 12:33     ` Stephen Smalley
2008-04-02 21:00   ` Dave Hansen
2008-04-02 21:19   ` Dave Hansen
2008-04-02 20:12 ` [patch 02/10] vfs: add path_mkdir() Miklos Szeredi
2008-04-02 22:15   ` Erez Zadok
2008-04-02 20:12 ` [patch 03/10] vfs: add path_rmdir() Miklos Szeredi
2008-04-02 20:12 ` [patch 04/10] vfs: add path_unlink() Miklos Szeredi
2008-04-02 20:12 ` [patch 05/10] vfs: add path_symlink() Miklos Szeredi
2008-04-02 20:12 ` [patch 06/10] vfs: add path_link() Miklos Szeredi
2008-04-02 20:12 ` [patch 07/10] vfs: add path_rename() Miklos Szeredi
2008-04-04 17:56   ` Erez Zadok
2008-04-04 18:04     ` Miklos Szeredi
2008-04-02 20:12 ` [patch 08/10] vfs: add path_setattr() Miklos Szeredi
2008-04-02 20:12 ` [patch 09/10] vfs: add path_setxattr() Miklos Szeredi
2008-04-02 20:12 ` [patch 10/10] vfs: add path_removexattr() Miklos Szeredi
2008-04-02 21:22 ` [patch 00/10] vfs: add helpers to check r/o bind mounts Erez Zadok
2008-04-09  0:53 ` [PATCH] Unionfs: use the new path_* VFS helpers Erez Zadok
2008-04-10 11:10   ` Miklos Szeredi
2008-04-10 12:02     ` [PATCH] Call LSM functions outside VFS helper functions Tetsuo Handa
2008-04-10 12:17       ` Matthew Wilcox
2008-04-10 12:56       ` Miklos Szeredi
  -- strict thread matches above, loose matches on Subject: below --
2008-05-05 10:16 [patch 00/10] vfs: add helpers to check r/o bind mounts v3 Miklos Szeredi
2008-05-05 10:16 ` [patch 01/10] vfs: add path_create() and path_mknod() Miklos Szeredi
2008-05-06  4:12   ` Andrew Morton
2008-05-06  4:24     ` Al Viro
2008-05-06  5:46       ` Andrew Morton
2008-05-06  6:24       ` Miklos Szeredi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080403014622.GW9785@ZenIV.linux.org.uk \
    --to=viro@zeniv.linux.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=dave@linux.vnet.ibm.com \
    --cc=ezk@cs.sunysb.edu \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    --cc=trond.myklebust@fys.uio.no \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).