linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RESEND 0/2] Expose task pid_ns_for_children to userspace
@ 2017-03-30 10:27 Kirill Tkhai
  2017-03-30 10:27 ` [PATCH RESEND 1/2] ns: Allow ns_entries to have custom symlink content Kirill Tkhai
       [not found] ` <149086931397.4388.9604947335273204415.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
  0 siblings, 2 replies; 8+ messages in thread
From: Kirill Tkhai @ 2017-03-30 10:27 UTC (permalink / raw)
  To: agruenba, keescook, linux-api, linux-kernel, viro, oleg, paul,
	ebiederm, avagin, linux-fsdevel, mtk.manpages, akpm, luto, mingo,
	serge

pid_ns_for_children set by a task is known only to the task itself,
and it's impossible to identify it from outside.

It's a big problem for checkpoint/restore software like CRIU,
because it can't correctly handle tasks, that do setns(CLONE_NEWPID)
in proccess of their work. If they have a custom pid_ns_for_children
before dump, they must have the same ns after restore. Otherwise,
restored task bumped into enviroment it does not expect.

This patchset solves the problem. It exposes pid_ns_for_children
to ns directory in standard way with the name "pid_for_children":

~# ls /proc/5531/ns -l | grep pid
lrwxrwxrwx 1 root root 0 Jan 14 16:38 pid -> pid:[4026531836]
lrwxrwxrwx 1 root root 0 Jan 14 16:38 pid_for_children -> pid:[4026532286]

---

Kirill Tkhai (2):
      ns: Allow ns_entries to have custom symlink content
      pidns: Expose task pid_ns_for_children to userspace


 fs/nsfs.c               |    4 +++-
 fs/proc/namespaces.c    |    1 +
 include/linux/proc_ns.h |    2 ++
 kernel/pid_namespace.c  |   25 +++++++++++++++++++++++++
 4 files changed, 31 insertions(+), 1 deletion(-)

--
Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-03-31 15:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-30 10:27 [PATCH RESEND 0/2] Expose task pid_ns_for_children to userspace Kirill Tkhai
2017-03-30 10:27 ` [PATCH RESEND 1/2] ns: Allow ns_entries to have custom symlink content Kirill Tkhai
     [not found] ` <149086931397.4388.9604947335273204415.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2017-03-30 10:27   ` [PATCH RESEND 2/2] pidns: Expose task pid_ns_for_children to userspace Kirill Tkhai
     [not found]     ` <149086967937.4388.471494976517194744.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2017-03-30 22:05       ` Andrew Morton
2017-03-31  1:04         ` Andrei Vagin
     [not found]           ` <20170331010409.GA22895-1ViLX0X+lBJGNQ1M2rI3KwRV3xvJKrda@public.gmane.org>
2017-03-31  9:45             ` Kirill Tkhai
     [not found]               ` <0825f166-6f20-59a9-45a9-5ffe9009150e-5HdwGun5lf+gSpxsJD1C4w@public.gmane.org>
2017-03-31 15:06                 ` Kees Cook
     [not found]                   ` <CAGXu5jJYTrOB1A0V9V8NOtLUF_D52RwtqFUcfsCiC-Jm3Z5G2w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-03-31 15:25                     ` Kirill Tkhai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).