Re: RFC: deprecating/removing the legacy mode of devpts

From: H. Peter Anvin
Date: Sun Apr 08 2012 - 14:01:15 EST


On 04/08/2012 12:30 AM, Kay Sievers wrote:
>
> I don't think it has much to do with udev, it follows 100%
> instructions from the kernel, and it does not create the device node
> that is in the way here.
>
> Udev does not name any device in the system since a long time. Since
> quite a while it has not even the code to do mknod() and requires
> devtmpfs. The device node part of udev these day is limited to manage
> device node permissions and creating additional symlinks. All device
> node creation happens inside the kernel itself - where it belongs -
> and not in userspace.
>
> If the default behaviour of /dev/pts/* should be changed, the kernel
> should be changed to support the multi-instance mode right away
> without involving userspace. We better do not require userspace to
> gain any knowledge about such stuff. I'm confident, that we should not
> add more, or require to support multiple alternative ways of handling
> kernel internals in userspace.
>
> So, I think we either remove the '/sys/class/tty/ptmx' device from the
> system, and let the devpts code create the symlink in the 'devtmpfs'
> filesystem, or alternatively the '/sys/class/tty/ptmx' device supports
> the multi-instance mode itself, instead of requiring a symlink. Such
> stuff belongs entirely into the kernel these day. Anything else seems
> to just ask for trouble.
>

OK, this seems very reasonable, and something that could (and probably
*has to*) be done as an atomic change... maybe.

There is no way for /dev/ptmx to support the multiinstance mode since it
is located outside any devpts filesystem; it *has* to be inside the
devpts filesystem in order to function... if that wasn't the case this
whole thing would have been trivial from the get-go.

Greg, do you have any insights in what would have to be necessary
mechanics to make this.

-hpa

--
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/