Re: silent semantic changes with reiser4

Linus Torvalds
2004-08-26T16:35:55Z

On Thu, 26 Aug 2004, Christoph Hellwig wrote:
>
> > Are you saying that with reiser4, you can open a device or fifo with
> > O_DIRECTORY?
>
> That's what I thought, but as far as I can follow the code this is not
> actually true.

It should be possible to do, though. There's nothing really different in
making the "default" (unnamed) fork be a special device or a fifo.

And it would be perfectly ok for O_DIRECTORY to open such a file, as long
as it opens the directory branch, not the special device.

I advocated (long ago) something like this for /dev handling, just because
I think it would make sense to have

/dev/hda <- special file
/dev/hda/part1 <- partition 1 (aka /dev/hda1)

which just seems like a very obvious and intuitive interface to me. Of
course, we have so much legacy in /dev that there's no real point to doing
this, but it's still an appealing approach, I think.

But I do take Al's concerns seriously. I like the notion of supporting
"containers", but there are undoubtedly serious issues in the notion. I
don't strictly know exactly _how_ to implement it sanely (I can talk about
using the vfsmnt structure all I like, but the fact is, it's a different
thing from a normal mount, and there may be serious problems indeed
there).

Still, I really do like the idea of merging the notion of file and
directory into one notion of "container". I absolutely _detest_ files with
internal structure that tools have to know about (ie I hate seeing all
those embedded formats that I can't use "grep" on - MIME being one case).
I'd much rather see a "group of files" and a "file with a grouping of
information".

(Now, flattening that "group of files" is obviously needed for serial
protocols, so I think MIME/tar/xxxx are fine for _transporting_ data, but
I'm saying that outside of transport I really prefer a "collection of
files" approach).

Linus