9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: "ron minnich" <rminnich@gmail.com>
To: "Fans of the OS Plan 9 from Bell Labs" <9fans@cse.psu.edu>
Subject: Re: [9fans] 9P vs. FUSE
Date: Fri, 10 Aug 2007 08:51:58 -0700	[thread overview]
Message-ID: <13426df10708100851i7a385abbx2aa8e83ec32ff74b@mail.gmail.com> (raw)
In-Reply-To: <a4e6962a0708100645o40d78c12lc3fc162cdbb22c45@mail.gmail.com>

On 8/10/07, Eric Van Hensbergen <ericvh@gmail.com> wrote:

>
> However, it was decided at the last IWP9 that we had probably taken
> the wrong approach with 9p2000.u and it would probably have been
> better to extend 9p with new operations that had different
> syntax/semantics from standard 9p as these would be easier to filter
> out.

And, before anyone jumps on this idea too hard, this approach works;
it's how I solved this messy problem in 1998. It was well worth trying
the .u variant, however, as you can't know some things until you try
them :-)

> It was further suggested by some that a better approach on Linux/UNIX
> would have been to take what we know from 9p and design a protocol
> specific to the VFS (similar to FUSE but capable of transparent
> network, etc.)

That's probably true. What's weird is the first one I did (for 2.0.3x)
fit into Linux VFS layer just fine. That's because the Linux VFS was
not as "mature" as it is now, and it was actually far easier in 1998
than it is now to fit a "non-standard" VFS into Linux. Back in 1998 I
had
- plan 9 style union mounts
- private name spaces that worked for all programs
- 9p mounts

and it was all pretty easy. The newer VFS layer has frozen more design
assumptions into practice, with the result that it is harder, not
easier, to put interesting file systems into Linux. It was a bit
harder for 2.2, even harder for 2.4 and, as you know, a pain in the
neck in 2.6. It's easier, I suppose, to put boring file systems in,
that act like all the other ones. There's a paper in that reality
somewhere ...

> However, such support is mainly necessary for folks looking to remote
> access feature rich on-disk file-systems.  I believe straight 9p is
> more than adequate for 99% of synthetic file systems with something as
> simple as 9p2000.u giving you extra bits necessary for basic UNIX
> compatibility.

I think that you are absolutely right. My experience certainly
supports this statement ...

It's an interesting idea to rethink v9fs with the current Linux VFS in
mind. I had not heard that one. It makes a lot of sense, however.

At the Google meeting, one discussion about putting private name
spaces in-kernel (as opposed to the current 9p-fuse which several at
Google are using) was to just have a per-user name space, mounted at
some well known place, and work with that. This was also very similar
to what I did on the original: codify the mount point to be at
/private: all users had to do a private mount (which was not a
privileged operation, hence easy) at /private; no user could see
anothers private mount; and I never had to deal with the issue of
multi-user access to single file, which has caused some work (see the
code). On the old stuff, for each private namespace file, there was
only one user, and you figured out who it was by looking in the
"inode". Going to one user per mount might also make life simpler.
That would, however, go against another idea, which was to use 9p to
serve root partitions. I'm not a big believer in network-mounted root
file systems, so am less concerned with this :-)

ron


  reply	other threads:[~2007-08-10 15:51 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-10 11:42 Enrico Weigelt
2007-08-10 11:57 ` Skip Tavakkolian
2007-08-10 12:19 ` Iruata Souza
     [not found] ` <2d66a95ea087868174cfdc519a48a2d7@9netics.com>
2007-08-10 12:33   ` Enrico Weigelt
2007-08-10 12:36     ` erik quanstrom
2007-08-10 12:42       ` Lucio De Re
     [not found]     ` <22bce9d3afa44ed70b739ea77d5d8046@quanstro.net>
2007-08-10 12:48       ` Enrico Weigelt
2007-08-10 13:18         ` erik quanstrom
     [not found]         ` <f17c25af999bb93211e069e6109bb154@quanstro.net>
2007-08-10 13:36           ` Enrico Weigelt
2007-08-10 13:42             ` andrey mirtchovski
2007-08-10 13:44             ` erik quanstrom
2007-08-10 13:45     ` Eric Van Hensbergen
2007-08-10 15:51       ` ron minnich [this message]
2007-08-10 16:32         ` Latchesar Ionkov
2007-08-10 16:39           ` Eric Van Hensbergen
2007-08-10 18:16           ` ron minnich
2007-08-10 18:25             ` Latchesar Ionkov
2007-08-10 18:35               ` Eric Van Hensbergen
2007-08-10 19:16       ` Uriel
2007-08-10 19:21         ` ron minnich
2007-08-10 19:29           ` Charles Forsyth
2007-08-10 21:57             ` ron minnich
2007-08-10 19:29         ` Eric Van Hensbergen
2007-08-10 19:32         ` Latchesar Ionkov
2007-08-10 19:02     ` Uriel
2007-08-10 19:21       ` Charles Forsyth
2007-08-10 19:26         ` erik quanstrom

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=13426df10708100851i7a385abbx2aa8e83ec32ff74b@mail.gmail.com \
    --to=rminnich@gmail.com \
    --cc=9fans@cse.psu.edu \
    /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).