On Sat, 2009-01-03 at 23:01 -0800, Russ Cox wrote:
> On Sat, Jan 3, 2009 at 9:12 PM, Roman V. Shaposhnik <[email protected]> wrote:
> > [complaint about # names]
Please let me know what kind of keywords or emoticons I am supposed
to include in my emails to indicate that they are *not* complaints,
but rather invitations for a discussion.
> No one has yet offered a working, cleaner idea.
Not to even suggest a 100% cleanliness, but simply
as a matter of incremental improvements here's one
simple idea.
Wouldn't the approach of treating #X as channels
instead of full fledged parallel namespace be at least
somewhat cleaner than what we have today? If the only
thing that any of the "#X" permitted was to issue a
mount/bind syscall, it would, IMHO, simplify and
clean at least the following areas:
1.1. the need for less than ideal special case in
namec():
switch(name[0]){
case '#':
Not that we would get rid of it 100%, but it seems
much more appropriate in bindmount()
1.2. the need for an implicit and poorly documented
and thus confusing ->attach in namec():
switch(name[0]){
case '#':
.....
c = devtab[t]->attach(up->genbuf+n);
1.3. an ability of userspace applications to bypass
the venerable namespace mechanics
The above seems like a net gain, doesn't it?
Thanks,
Roman.