linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: raven@themaw.net
To: Miklos Szeredi <miklos@szeredi.hu>
Cc: mike@waychison.com, linux-fsdevel@vger.kernel.org,
	jamie@shareable.org, viro@parcelfarce.linux.theplanet.co.uk
Subject: Re: [RFC][PATCH 1/8] namespace: use global namespace semaphore
Date: Sat, 4 Jun 2005 12:13:00 +0800 (WST)	[thread overview]
Message-ID: <Pine.LNX.4.62.0506041159470.1619@donald.themaw.net> (raw)
In-Reply-To: <E1De4j1-0002ui-00@dorka.pomaz.szeredi.hu>

On Fri, 3 Jun 2005, Miklos Szeredi wrote:

> > > > > 
> > > > > This way the autofs mount won't be followed by the mount program,
> > > > > since looking up '.' does not follow mounts.
> > > > 
> > > > But a path walk must be carried out in order to set pwd (or
> > > > chroot), at which time the mount is carried out and remains busy
> > > > due to the reference that is held.
> > > 
> > > Huh?  Path walk of '.' will do nothing.  It does not follow mounts or
> > > anything.
> > 
> > Does "chdir ." make sense. Looks a bit like a noop to me.  Surely if
> > your current working directory is "." you've had to set it with a
> > provided path at some point.
> 
> OK, sorry, I misunderstood you.
> 
> But still I don't see why it is a problem if you have a reference to
> the mountpoint dentry/vfsmount.  You already have a reference with the
> mounted autofs, so adding another reference by opening a file, and
> another by changing cwd to it won't change anything at all.

I think we`ve lost track of what we originally started discussing here.
I think we started discussing why I needed the nameidata struct to be upto 
date when the follow link method was called, it simply isn't when a mount 
is followed at the end of the do_lookup call in link_path_walk.

> 
> > > So for direct mounts, the sibling mount (as opposed to the overmount)
> > > has the advantage of not having to do ugly recursion checking hacks in
> > > autofs.
> > 
> > I've found that all I really need to do is check that the follow_mount is 
> > successful and respond accordingly.
> 
> I don't see how that would work.

Seems to work fine so far.

> 
> Don't you have to somehow special-case the mount program to allow that
> to succeed in path lookup, but make all other lookups block until the
> mount is finished?

I haven't found that to be the case. There are a couple of mechanisms for 
this.

First is a in kernel module waitq for daemon notification that has been 
well tested over time. I've done quite a bit of work on the interaction 
between expire events and lookups. There are still a couple of patches I 
need to submit but it's getting there.

Second the user space daemon is implemented as an FSM which implies a 
considerable amount of serialisation wrt kernel communication through the 
pipe.

Ian


  reply	other threads:[~2005-06-04  4:23 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-30 13:19 [RFC][PATCH 1/8] namespace: use global namespace semaphore Miklos Szeredi
2005-05-31  2:58 ` Ian Kent
2005-05-31  3:23   ` Mike Waychison
2005-05-31  7:02     ` Ian Kent
2005-05-31  7:56       ` Miklos Szeredi
2005-05-31  9:34         ` Ian Kent
2005-05-31 10:05           ` Miklos Szeredi
2005-05-31 10:13             ` Miklos Szeredi
2005-05-31 15:43               ` Mike Waychison
2005-06-01  5:04               ` Ian Kent
2005-06-01  8:35                 ` Miklos Szeredi
2005-06-03  2:10                   ` Ian Kent
2005-06-03  5:28                     ` Miklos Szeredi
2005-06-04  4:13                       ` raven [this message]
2005-06-04  6:32                         ` Miklos Szeredi
2005-06-04  6:50                           ` raven
2005-06-04  7:20                             ` Miklos Szeredi
2005-06-04  7:27                               ` raven
2005-06-03 17:22                     ` Mike Waychison
2005-06-04  4:32                       ` raven
2005-06-03 17:13               ` Mike Waychison
2005-06-03 18:20                 ` Miklos Szeredi
2005-06-01  4:36             ` Ian Kent
2005-06-03 17:24               ` Mike Waychison
2005-06-04  4:38                 ` raven
2005-05-31 15:55       ` Mike Waychison
2005-05-31 16:08         ` Miklos Szeredi
2005-06-01  4:18           ` Ian Kent
2005-06-01  8:28             ` Miklos Szeredi
2005-06-03  2:23               ` Ian Kent
2005-06-03  5:18                 ` Miklos Szeredi
2005-06-04  4:53                   ` raven
2005-06-04  6:57                     ` Miklos Szeredi
2005-06-04  7:13                       ` raven
2005-06-03 17:26             ` Mike Waychison
2005-06-01  3:57         ` Ian Kent
2005-06-03 17:07           ` Mike Waychison

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=Pine.LNX.4.62.0506041159470.1619@donald.themaw.net \
    --to=raven@themaw.net \
    --cc=jamie@shareable.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=mike@waychison.com \
    --cc=miklos@szeredi.hu \
    --cc=viro@parcelfarce.linux.theplanet.co.uk \
    /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).