From: "Rob Pike" <robpike@gmail.com>
To: "Fans of the OS Plan 9 from Bell Labs" <9fans@9fans.net>
Subject: Re: [9fans] How to implement a moral equivalent of automounter in Plan9?
Date: Tue, 2 Dec 2008 21:23:00 -0800 [thread overview]
Message-ID: <7359f0490812022123s7702736ep83ea45fa8059bbb8@mail.gmail.com> (raw)
In-Reply-To: <dd6fe68a0812021555r11e4b29aheac6b20b852ed0b@mail.gmail.com>
On Tue, Dec 2, 2008 at 3:55 PM, Russ Cox <rsc@swtch.com> wrote:
>> a couple of questions come to mind. how does writing
>> to a ns interact with shared namespaces? does it automaticly
>> fork the namespace? seems iffy. which leads to the next
>> obvious question
>>
>> how do you prevent a race between changing the namespace and
>> opening fds?
>>
>> and, what about open file descriptors?
>>
>> seems like a big can of worms.
>
> None of these questions are any different in this
> context than if there was simply some other process
> sharing the name space and doing the same manipulations.
>
> A writable #p/pid/ns seems strange to me
> (not nearly as natural as Roman suggested),
> but maybe it would be fine. No one has cared
> enough to explore it.
>
> I don't think a writable #p/pid/ns would really
> help you write an automounter. You don't know
> the pid you are getting the 9P request from
> (maybe it is on another machine!).
>
> If I had to write an automounter like you describe
> and I was going to tweak the kernel to make it
> easier, I would change name spaces to be hierarchical,
> so that rfork(RFNAMEG) (or perhaps some new bit)
> insulates the parent from the child's modifications
> but not vice versa. Then the automounter can sit
> in some early name space and mount things, and all
> the name spaces that were forked off would see them.
> That is easier to reason about than writing #p/pid/ns.
>
> Russ
Long ago I considered making the namespace not hierarchical but a set
of spaces. The first level of complexity upwards would be to have two
spaces: one that is per-process and one that is global or per-machine.
It could of course be extended to more generality, hierarchy, etc.
The reason I didn't was that the existing one-space system was almost
good enough and any generalization seemed either too complex or too
specific. There seemed no guiding principle to organize the design.
So I left it alone even though in so doing I was leaving a problem on the table.
-rob
prev parent reply other threads:[~2008-12-03 5:23 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-01 7:25 Roman Shaposhnik
2008-12-01 8:38 ` Fco. J. Ballesteros
2008-12-01 14:34 ` erik quanstrom
2008-12-01 14:40 ` Francisco J Ballesteros
2008-12-01 15:08 ` erik quanstrom
2008-12-01 15:16 ` Francisco J Ballesteros
2008-12-01 17:48 ` Russ Cox
2008-12-01 18:17 ` ron minnich
2008-12-01 18:31 ` Roman V. Shaposhnik
2008-12-01 21:18 ` Dan Cross
2008-12-02 18:12 ` Roman V. Shaposhnik
2008-12-02 18:18 ` [9fans] How to implement a moral equivalent of automounter erik quanstrom
2008-12-02 19:25 ` Roman V. Shaposhnik
2008-12-02 19:29 ` erik quanstrom
2008-12-02 20:12 ` hiro
2008-12-02 21:14 ` Roman V. Shaposhnik
2008-12-02 21:35 ` erik quanstrom
2008-12-03 1:26 ` Roman V. Shaposhnik
2008-12-03 1:42 ` Dan Cross
2008-12-03 2:13 ` erik quanstrom
2008-12-04 7:39 ` Dave Eckhardt
2008-12-04 14:58 ` Steve Simon
2008-12-05 4:57 ` Nathaniel W Filardo
2008-12-05 12:10 ` Steve Simon
2008-12-04 17:57 ` Roman V. Shaposhnik
2008-12-05 4:35 ` Dave Eckhardt
2008-12-05 4:43 ` erik quanstrom
2008-12-06 5:16 ` Roman Shaposhnik
2008-12-06 13:58 ` erik quanstrom
2008-12-06 5:14 ` Roman Shaposhnik
2008-12-06 14:27 ` erik quanstrom
2008-12-07 0:03 ` Roman Shaposhnik
2008-12-07 0:16 ` [9fans] How to implement a moral equivalent ofautomounter erik quanstrom
2008-12-07 5:20 ` Rob Pike
2008-12-07 5:30 ` akumar
2008-12-07 5:53 ` Roman Shaposhnik
2008-12-07 20:32 ` Noah Evans
2008-12-01 18:25 ` [9fans] How to implement a moral equivalent of automounter in Plan9? Roman V. Shaposhnik
2008-12-01 22:48 ` Bakul Shah
2008-12-01 23:11 ` [9fans] How to implement a moral equivalent of automounter in geoff
2008-12-02 18:15 ` Roman V. Shaposhnik
2008-12-02 0:55 ` [9fans] How to implement a moral equivalent of automounter in Plan9? Russ Cox
2008-12-02 18:04 ` Roman V. Shaposhnik
2008-12-02 18:31 ` Nathaniel W Filardo
2008-12-02 19:34 ` Roman V. Shaposhnik
2008-12-02 20:05 ` hiro
2008-12-02 21:17 ` Roman V. Shaposhnik
2008-12-02 21:29 ` erik quanstrom
2008-12-02 23:55 ` Russ Cox
2008-12-03 0:07 ` erik quanstrom
2008-12-03 1:21 ` Roman V. Shaposhnik
2008-12-03 1:36 ` Dan Cross
2008-12-06 5:24 ` Roman Shaposhnik
2008-12-06 10:52 ` Dan Cross
2008-12-03 5:23 ` Rob Pike [this message]
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=7359f0490812022123s7702736ep83ea45fa8059bbb8@mail.gmail.com \
--to=robpike@gmail.com \
--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).