2001-03-16 13:52:22

by Ian Soboroff

[permalink] [raw]
Subject: devfs vs. devpts


I'm running 2.4.2ac7, and am having problems with Unix98 ptys.
Occasionally rxvt and Eterm fail to run because they can't get
permission to create their entry in /dev/pts. So i wondered if i have
a devfs problem, which led me to the following...

In Documentation/filesystems/devfs/README, it is thus written:

Disable devpts
I've had a report of devpts mounted on /dev/pts
not working correctly. Since devfs will also manage /dev/pts,
there is no need to mount devpts as well. You should either
edit your /etc/fstab so devpts is not mounted, or disable
devfs from your kernel configuration.

i don't have devpts mounted under 2.4.2 (debian checks whether you
have devfs before mounting devpts), so i tried building my kernel with
Unix 98 pty support but without the devpts filesystem. i get the
following error at the very end of 'make bzImage':

drivers/char/char.o: In function `pty_close':
drivers/char/char.o(.text+0x6646): undefined reference to `devpts_pty_kill'
make: *** [vmlinux] Error 1

so the devfs documentation is wrong; pty_close depends on
functionality from devpts. and secondly, has anyone else had problems
under 2.4.x creating entries in /dev/pts?

ian

--
----
Ian Soboroff [email protected]
University of MD Baltimore County http://www.cs.umbc.edu/~ian


2001-03-16 15:44:11

by John Jasen

[permalink] [raw]
Subject: Re: devfs vs. devpts

On 16 Mar 2001, Ian Soboroff wrote:

> i don't have devpts mounted under 2.4.2 (debian checks whether you
> have devfs before mounting devpts), so i tried building my kernel with
> Unix 98 pty support but without the devpts filesystem. i get the
> following error at the very end of 'make bzImage':

snipped from .config:

#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
# CONFIG_SERIAL_CONSOLE is not set
# CONFIG_SERIAL_EXTENDED is not set
# CONFIG_SERIAL_NONSTANDARD is not set
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256

#
# File systems
#
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
CONFIG_DEVFS_DEBUG=y
...
# CONFIG_DEVPTS_FS is not set

from my /etc/devfsd.conf, I have:
REGISTER pts/.* MKOLDCOMPAT
UNREGISTER pts/.* RMOLDCOMPAT

and for permissions:
REGISTER pts/.* IGNORE

uname -a:
Linux grim 2.4.2-ac18 #3 SMP Mon Mar 12 12:05:18 EST 2001 i686 unknown

--
-- John E. Jasen ([email protected])
-- In theory, theory and practise are the same. In practise, they aren't.

2001-03-16 17:32:19

by Nathan Walp

[permalink] [raw]
Subject: Re: devfs vs. devpts

John Jasen wrote:
>
> On 16 Mar 2001, Ian Soboroff wrote:
>
> > i don't have devpts mounted under 2.4.2 (debian checks whether you
> > have devfs before mounting devpts), so i tried building my kernel with
> > Unix 98 pty support but without the devpts filesystem. i get the
> > following error at the very end of 'make bzImage':
>
> snipped from .config:
>
> #
> # Character devices
> #
> CONFIG_VT=y
> CONFIG_VT_CONSOLE=y
> CONFIG_SERIAL=y
> # CONFIG_SERIAL_CONSOLE is not set
> # CONFIG_SERIAL_EXTENDED is not set
> # CONFIG_SERIAL_NONSTANDARD is not set
> CONFIG_UNIX98_PTYS=y
> CONFIG_UNIX98_PTY_COUNT=256
>
> #
> # File systems
> #
> CONFIG_DEVFS_FS=y
> CONFIG_DEVFS_MOUNT=y
> CONFIG_DEVFS_DEBUG=y
> ...
> # CONFIG_DEVPTS_FS is not set
>
> from my /etc/devfsd.conf, I have:
> REGISTER pts/.* MKOLDCOMPAT
> UNREGISTER pts/.* RMOLDCOMPAT
>
> and for permissions:
> REGISTER pts/.* IGNORE
>

I had the same problem, so i added those devfsd lines to my config
files, and everything's peachy now. I'm thinking it's a debian problem,
cause everything was fine till I ran a dist-upgrade. I didn't notice it
right away, and I did random kernel stuff before I did notice it. Ian,
which debian are you running, I'm using sid.

Nathan