Merge tag 'linux-kselftest-kunit-fixes-5.11-rc3' of git://git.kernel.org/pub/scm...
[linux/fpc-iii.git] / Documentation / filesystems / devpts.rst
bloba03248ddfb4cd8d21250db1afcbb558374815b46
1 .. SPDX-License-Identifier: GPL-2.0
3 =====================
4 The Devpts Filesystem
5 =====================
7 Each mount of the devpts filesystem is now distinct such that ptys
8 and their indicies allocated in one mount are independent from ptys
9 and their indicies in all other mounts.
11 All mounts of the devpts filesystem now create a ``/dev/pts/ptmx`` node
12 with permissions ``0000``.
14 To retain backwards compatibility the a ptmx device node (aka any node
15 created with ``mknod name c 5 2``) when opened will look for an instance
16 of devpts under the name ``pts`` in the same directory as the ptmx device
17 node.
19 As an option instead of placing a ``/dev/ptmx`` device node at ``/dev/ptmx``
20 it is possible to place a symlink to ``/dev/pts/ptmx`` at ``/dev/ptmx`` or
21 to bind mount ``/dev/ptx/ptmx`` to ``/dev/ptmx``.  If you opt for using
22 the devpts filesystem in this manner devpts should be mounted with
23 the ``ptmxmode=0666``, or ``chmod 0666 /dev/pts/ptmx`` should be called.
25 Total count of pty pairs in all instances is limited by sysctls::
27     kernel.pty.max = 4096       - global limit
28     kernel.pty.reserve = 1024   - reserved for filesystems mounted from the initial mount namespace
29     kernel.pty.nr               - current count of ptys
31 Per-instance limit could be set by adding mount option ``max=<count>``.
33 This feature was added in kernel 3.4 together with
34 ``sysctl kernel.pty.reserve``.
36 In kernels older than 3.4 sysctl ``kernel.pty.max`` works as per-instance limit.