Thread (579 messages) 579 messages, 89 authors, 2004-09-17

Re: silent semantic changes with reiser4

From: Linus Torvalds <torvalds@osdl.org>
Date: 2004-08-29 21:01:20
Also in: lkml


On Sun, 29 Aug 2004, Hans Reiser wrote:
The difference is that cat uses open() not openat().
Hans. Step back a bit. Stop this idiocy about thinking that this is all 
about you, and all about your reiser4 "metas" etc.

This is about VFS interfaces, and about being generic and _useful_.

Quite frankly, there is absolutely _zero_ point to make attributes just 
because reiser4 can implement them. Zero. Nada. Zilch. It just won't 
matter, because people are NOT GOING TO SWITCH TO REISER4 IN MASS.

So in order to make this useful, it has to be:
 - stable. This means that if Al Viro asks about locking and aliasing
   issues, you don't ignore it, you ask "how high?"
 - portable. Preferably across operating systems, but at the very _least_ 
   across filesystems. See the NFSv4 thing, for example.
 - useful to the people who would actually use it. Right now that's samba, 
   and not a whole lot else.  For everybody else, the pain of not having 
   _all_ major filesystems support it is probably so insurmountable that
   it's just not going to happen.

Do you get it? If you can't get your mind out of your little current 
reiser4 issues, don't even bother talking about it.

Look through the thread on "possible design issues for hybrids" for me
actually talking with Al on how to handle problem #1. That's one important
thing, and in fact, that one is important whether we expose it to a normal
"open()" call or not, since all the same aliasing issues exist
_regardless_ of interfaces.

"openat()" happens to be _one_ solution to #2 and #3. You haven't given 
any constructive input to _any_ of the problems, and you keep on raising 
totally irrelevant issues. Face the music, Hans. If you can't solve those 
three problems, whatever you do simply DOES NOT MATTER.

In particular, in the two last emails to you, I tried to show that
"openat()" is _independent_ of streams/attributes. That it has semantics
that have absolutely _nothing_ to do with metas. And in BOTH CASES you
could not wrap your brain around that fact, and kept on harping about
meta's.

There are bigger issues here. I'm perfectly happy to _also_ expose the
streams as regular filenames, but I've tried to explain that that doesn't
work for directories, for example, so YOU CANNOT -JUST- talk about the
filename-only thing. You do need to have a different namespace.  Full
stop. What's so hard to understand about that?

So stop ignoring the issues. Stop ignoring the fact that not everything 
revolves around how you happened to implement something. Get with the 
program. 

		Linus
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help