Re: [PATCH] reiserfs: fix handling of device names with /'s in them

From: Hans Reiser
Date: Mon Jul 17 2006 - 15:05:40 EST


Jeff Mahoney wrote:

> Hans Reiser wrote:
>
> >Jeff Mahoney wrote:
>
> >>Hans Reiser wrote:
> >>
> >>>I don't understand your patch and cannot support it as it is written.
> >>>Perhaps you can call me and explain it on the phone.
> >>
> >>I seriously can't tell if you're deliberately trying to be difficult or
> >>not. It's a simple "replace / with ! before sending the name to procfs."
> >>
> >>Reiserfs requests that a procfs directory called
> >>/proc/fs/reiserfs/<blockdev> be created. Some block devices contain
> >>slashes, so with cciss/c123 it attempts to create a directory called
> >>/proc/fs/reiserfs/cciss/c123, but cciss/ doesn't exist, shouldn't, and
> >>never will.
>
> >Why not check to see if it does not exist, and create it if not, as
> >needed, and skip the !'s....?
>
>
> 1) Because then the behavior of /proc/fs/reiserfs/ would be
> inconsistent. Devices that contain slashes end up being one level deeper
> than other devices, which is silly and a userspace visible change.

And you think translating / to ! is less work for user space?

> Tools
> that wish to parse the information would then need added complexity to
> traverse into the next level to reach that information.
>
> 2) The block-device-as-path-name-component behavior is already defined
> by sysfs (/sys/block), and it should be consistent.

Translate that as, "I won't recompile my brain no matter what you do to
make me."

You blindly copied how someone else in a hurry did it without a thought
to whether it was done right, and now you don't want to change it. You
should have asked me about it before coding it.

Replace block-device-as-path-name-component with
block-device-as-path-name-suffix, and everything is very consistent.
And elegant.

Jeff, you are a programmer, not an architect, and when you disregard
architects we end up with things like the performance disaster that is
V3 acls.

Replacing / with ! is hideous. Someone added a nifty elegance to block
device naming, and you are desecrating it.

Hans
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/