9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Tim Newsham <newsham@lava.net>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] v9fs question
Date: Mon, 13 Jul 2009 14:42:20 -1000	[thread overview]
Message-ID: <Pine.BSI.4.64.0907131434270.5249@malasada.lava.net> (raw)
In-Reply-To: <13426df10907131616k203f0676yb181157cac24d179@mail.gmail.com>

> Could we solve this by making private mounts the default (or only
> allowed) behavior?

I've wondered if there's enough context information
that the fs driver could "fake" per-process mount points
directly.  For example, I mount v9fs on /n.  Initially
I have no remote mounts in there, but I have /n/ctl.
I echo "mount 1.2.3.4 foo" to /n/ctl and now I have
/n/foo which is served from 1.2.3.4 for my process, but
other processes dont see /n/foo.  I fork a child and it
gets /n/foo, too.  In the child I mount another directory
and the changes are seen in both the child and the parent.
I then echo "copyns" to /n/ctl and then perform another
mount and the new mount is visible in the child process but
not the parent process.

This would of course require that the kernel filesystem
(probably vfs layer) could distinguish who made a filesystem
request.  It might also require some hackery to get the
inheritance on fork working properly (although perhaps some
existing unix mechanism could be reused for this purpose, such
as session and process group stuff).

Feasible at all in Linux? *BSD?  Win32?

Upsides: Kernel doesnt need to otherwise support any notion
of mount namespace.  Removes security concerns of per-process
namespaces since you could never rebind over /etc/passwd or
other important files.

Downsides: Perhaps not possible.  Mount/bind namespaces not
universally present, only within certain mount points.

> ron

Tim Newsham
http://www.thenewsh.com/~newsham/



  parent reply	other threads:[~2009-07-14  0:42 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-11 18:46 Tim Newsham
2009-07-11 18:50 ` Eric Van Hensbergen
2009-07-11 19:03   ` Tim Newsham
2009-07-11 19:47     ` Eric Van Hensbergen
2009-07-11 20:03     ` J.R. Mauro
2009-07-12  3:19       ` Uriel
2009-07-13  8:24     ` sqweek
2009-07-13  8:51       ` hiro
2009-07-13 14:20       ` Eric Van Hensbergen
2009-07-13 20:44         ` hiro
2009-07-13 21:45           ` hiro
2009-07-13 22:05             ` Eric Van Hensbergen
2009-07-13 22:18               ` J.R. Mauro
2009-07-13 23:16                 ` ron minnich
2009-07-13 23:22                   ` Eric Van Hensbergen
2009-07-13 23:37                     ` ron minnich
2009-07-13 23:47                       ` Eric Van Hensbergen
2009-07-13 23:41                   ` J.R. Mauro
2009-07-13 23:50                     ` erik quanstrom
2009-07-14  0:00                       ` J.R. Mauro
2009-07-14  0:06                         ` erik quanstrom
2009-07-14  0:01                     ` Eric Van Hensbergen
2009-07-14  0:08                       ` ron minnich
2009-07-14  0:46                         ` J.R. Mauro
2009-07-14  0:42                       ` J.R. Mauro
2009-07-14  0:58                         ` Eric Van Hensbergen
2009-07-14  1:28                           ` Latchesar Ionkov
2009-07-14  1:35                             ` Devon H. O'Dell
2009-07-14  2:05                             ` Tim Newsham
2009-07-14  0:42                   ` Tim Newsham [this message]
2009-07-14  0:50                     ` erik quanstrom
2009-07-14  0:56                     ` Eric Van Hensbergen
2009-07-14  4:51                     ` lucio
2009-07-14  4:29                 ` lucio
2009-07-14  4:26               ` lucio
2009-07-13 22:00           ` Eric Van Hensbergen
2009-07-14 19:05         ` sqweek
2009-07-14 20:11           ` Eric Van Hensbergen
2009-07-13 14:59       ` lucio
2009-07-13 15:04         ` Eric Van Hensbergen
2009-07-13 15:08       ` Latchesar Ionkov
2009-07-13 19:51         ` Tim Newsham
2009-07-14  7:34         ` sqweek
2009-07-14 11:08           ` roger peppe
2009-07-14 11:20             ` hiro
2009-07-14 12:48             ` Eric Van Hensbergen
2009-07-14 15:45             ` ron minnich
2009-07-14 16:31             ` Tim Newsham
2009-07-14 20:21               ` roger peppe
2009-07-14 13:10           ` Eric Van Hensbergen
2009-07-14 13:23             ` erik quanstrom
2009-07-14 14:26               ` Eric Van Hensbergen
2009-07-14 14:44                 ` erik quanstrom
2009-07-14 14:33           ` Latchesar Ionkov
2009-07-14 14:54             ` Eric Van Hensbergen
2009-07-14 15:01               ` erik quanstrom
2009-07-14 15:13                 ` Eric Van Hensbergen
2009-07-14 15:19                   ` erik quanstrom
2009-07-14 15:37                     ` Eric Van Hensbergen
2009-07-14 16:12                       ` erik quanstrom
2009-07-14 16:19                         ` Eric Van Hensbergen
2009-07-14 15:06               ` Latchesar Ionkov
2009-07-14 15:48                 ` ron minnich
2009-07-14 15:59                   ` Eric Van Hensbergen
2009-07-14 14:37           ` Latchesar Ionkov

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.BSI.4.64.0907131434270.5249@malasada.lava.net \
    --to=newsham@lava.net \
    --cc=9fans@9fans.net \
    /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).