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

From: Hans Reiser
Date: Sun Jul 16 2006 - 21:19:51 EST


Jeff Mahoney wrote:

> Hans Reiser wrote:
>
>
> Hans, we're all in agreement that we'd prefer drivers not use names with
> slashes in them,

there is nothing wrong with using names that have slashes. The thing
that is wrong is somehow needing to translate them into names with "!"'s.

> and it would be nice to correct drivers currently using
> them. The problem is that when you change the name of a device, that's a
> userspace visible change.

So don't. Why would user space care how you parse it and whether the
driver or reiserfs does it?

> Scripts that currently expect, say,
> /proc/partitions to contain cciss/<number> will break between kernel
> versions. Sysfs wants to use the device name as a pathname component,
> and as such translates the / to a !, the same as this patch proposes.
>
> Reiserfs gets involved because it expects that name to be usable as a
> file system pathname component when it is not intended to be one without
> translating slashes into another character. The difference is that
> block device names are allowed to have slashes in them, while normal
> file system names are not.

We should distinguish here between names and name components.

> The fact is that device driver names, when in
> /dev can use separate components, like /dev/cciss/0, but when used in
> the manner reiserfs wants them to be used, they can't. Also, I'm not
> talking about name spaces like struct namespace, I mean that the group
> of names that block device drivers use have different constraints than
> the group of names that are allowable as file names.
>
> The fact is that this change is required for users deploying devices
> that use slashes in their names to see the proc data for a reiserfs file
> system. You can point the finger all you want at the block drivers in
> the mean time, but it's still a reiserfs problem.

I still do not grok why you need to change / to !.

Something is wrong. Reiserfs is being asked to do something that
somebody else should be doing.

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/