From: sukadev@us.ibm.com
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: "H. Peter Anvin" <hpa@zytor.com>,
"Eric W. Biederman" <ebiederm@xmission.com>,
Andrew Morton <akpm@osdl.org>,
serue@us.ibm.com, matthltc@us.ibm.com,
Pavel Emelyanov <xemul@openvz.org>,
Containers <containers@lists.osdl.org>,
linux-kernel@vger.kernel.org, Greg KH <greg@kroah.com>
Subject: Re: Per-instance devpts
Date: Sun, 3 Aug 2008 10:46:46 -0700 [thread overview]
Message-ID: <20080803174646.GA20254@us.ibm.com> (raw)
In-Reply-To: <20080803130439.743ff0ae@lxorguk.ukuu.org.uk>
Alan Cox [alan@lxorguk.ukuu.org.uk] wrote:
| > > 1. /dev/ptmx would have to change to a symlink, ptmx -> pts/ptmx.
| >
| > IIRC, /dev/tty also needs a similar symlink.
|
| Making them symlinks is asking for trouble because some code does go
| around using stat and the like and tools like MAKEDEV have definite ideas.
|
| For /dev/tty the definition is precisely that it is your controlling
| tty. No reference to namespace and a task whose controlling tty is in a
| different namespace should still open the controlling tty not some
| parallel in another universe when you open /dev/tty.
Well, I thought the problem was something like this:
If /dev/pts/1 is the controlling terminal and there are multiple mounts
of devpts, when we open /dev/tty, kernel would somehow have to find the
right instance of devpts.
When init_dev() calls devpts_get_tty(), it would need to specify the devpts
instance. So tty_open() of "/dev/tty" would somehow have to find it based on
the /dev/tty inode (which could be in ext3).
(I thought the issue was similar with /dev/ptmx, ptmx allocates a new
index, /dev/tty accesses an existing index, but both need to somehow
find the right pts instance -no ?)
|
| If you want to make sure the controlling tty is in the right namespace
| that can be done in userspace when transferring control into a namespace.
| In many cases I doubt that is even what is wanted.
|
| > > 2. Permissions on /dev/ptmx would not be persistent, and would have to
| > > be set via devpts mount options (unless they're 0666 root.tty, which
| > > would presumably be the default.)
| > > 3. The /proc/sys/kernel/pty limit would be global; a per-filesystem
| > > limit could be added on top or instead (presumably via a filesystem
| > > mount options.)
| > >
| > > I worry #1 would have substantial user-space impact, but I don't see a way
| > > around it, since there would be no obvious way to associate /dev/ptmx with
| > > a filesystem.
|
| /dev/tty and /dev/ptmx already primarily operate by identifying a device
| and switching the work to that. Actually putting a bit of namespace logic
| in the driver code so the actual files stay as expected (device nodes
| etc) seems a *lot* simpler than trying to do symlink hacks.
|
| Alan
next prev parent reply other threads:[~2008-08-03 17:46 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-12 17:29 [PATCH 0/4] Helper patches for PTY namespaces sukadev
2008-04-12 17:32 ` [PATCH 1/4]: Propagate error code from devpts_pty_new sukadev
2008-04-12 17:32 ` [PATCH 2/4]: Factor out PTY index allocation sukadev
2008-04-12 17:33 ` [PATCH 3/4]: Move devpts globals into init_pts_ns sukadev
2008-04-12 17:34 ` [PATCH 4/4]: Enable multiple mounts of /dev/pts sukadev
[not found] ` <20080412172933.GA19295-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-04-12 17:39 ` [PATCH 0/4] Helper patches for PTY namespaces Subrata Modak
[not found] ` <bb33bcf20804121039u409ae37q2dead849ca24dfa-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-12 18:05 ` sukadev-r/Jw6+rmf7HQT0dZR+AlfA
[not found] ` <20080412180533.GE19449-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-04-14 11:20 ` [LTP] " Subrata Modak
[not found] ` <1208172006.5762.21.camel-NRFfyExJdYpgXGGE5LP+UZlqa2bBAFbm0E9HWUfgJXw@public.gmane.org>
2008-04-14 12:31 ` Veerendra Chandrappa
[not found] ` <OF766ECBB8.8B7DAFCE-ON6525742B.00437346-6525742B.0043FD8A-xthvdsQ13ZrQT0dZR+AlfA@public.gmane.org>
2008-04-14 12:31 ` Subrata Modak
[not found] ` <1208176260.5762.36.camel-NRFfyExJdYpgXGGE5LP+UZlqa2bBAFbm0E9HWUfgJXw@public.gmane.org>
2008-04-22 7:11 ` Subrata Modak
[not found] ` <1208848319.4847.16.camel-NRFfyExJdYpgXGGE5LP+UZlqa2bBAFbm0E9HWUfgJXw@public.gmane.org>
2008-04-22 12:25 ` Serge E. Hallyn
[not found] ` <20080422122530.GB8331-6s5zFf/epYLPQpwDFJZrxKsjOiXwFzmk@public.gmane.org>
2008-04-22 15:08 ` [LTP] " Subrata Modak
2008-04-23 18:01 ` H. Peter Anvin
2008-04-12 18:09 ` H. Peter Anvin
2008-04-12 18:09 ` H. Peter Anvin
2008-04-12 18:35 ` Al Viro
2008-04-12 18:54 ` Multiple instances of devpts H. Peter Anvin
2008-04-12 19:15 ` Eric W. Biederman
[not found] ` <1208027757.28187.25.camel-xJGG6ySDJhrj0SQisxZUdA@public.gmane.org>
2008-04-12 19:24 ` H. Peter Anvin
2008-04-12 19:24 ` H. Peter Anvin
[not found] ` <48010C70.2030902-YMNOUZJC4hwAvxtiuMwx3w@public.gmane.org>
2008-04-12 19:30 ` H. Peter Anvin
2008-04-12 19:30 ` H. Peter Anvin
2008-04-12 19:06 ` [PATCH 0/4] Helper patches for PTY namespaces Eric W. Biederman
2008-04-13 0:59 ` Serge E. Hallyn
[not found] ` <1208027215.28187.17.camel-xJGG6ySDJhrj0SQisxZUdA@public.gmane.org>
2008-08-01 18:12 ` Per-instance devpts H. Peter Anvin
2008-08-01 18:12 ` H. Peter Anvin
2008-08-01 19:23 ` Dave Hansen
2008-08-01 19:35 ` Al Viro
2008-08-01 19:37 ` H. Peter Anvin
[not found] ` <f73f7ab80808020004j15b0d0e5x5fa911242641b34d@mail.gmail.com>
2008-08-02 7:06 ` Kyle Moffett
[not found] ` <f73f7ab80808020006i7f0ac456ve9b9f73568c11294-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-08-02 15:33 ` H. Peter Anvin
2008-08-02 15:33 ` H. Peter Anvin
2008-08-02 8:54 ` Bastian Blank
2008-08-03 5:08 ` sukadev
[not found] ` <20080803050800.GA4322-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2008-08-03 11:31 ` H. Peter Anvin
2008-08-03 11:31 ` H. Peter Anvin
2008-08-03 12:04 ` Alan Cox
2008-08-03 12:04 ` Alan Cox
2008-08-03 17:46 ` sukadev [this message]
2008-08-03 17:54 ` Alan Cox
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080803174646.GA20254@us.ibm.com \
--to=sukadev@us.ibm.com \
--cc=akpm@osdl.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=containers@lists.osdl.org \
--cc=ebiederm@xmission.com \
--cc=greg@kroah.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matthltc@us.ibm.com \
--cc=serue@us.ibm.com \
--cc=xemul@openvz.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.