All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Emelyanov <xemul-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
To: Richard Weinberger <richard-/L3Ra7n9ekc@public.gmane.org>
Cc: containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
	Serge Hallyn
	<serge.hallyn-GeWIH/nMZzLQT0dZR+AlfA@public.gmane.org>,
	Oleg Nesterov <oleg-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	David Howells <dhowells-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	"Eric W. Biederman"
	<ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org>,
	Andrew Morton
	<akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>,
	Vasily Kulikov <segoon-cxoSlKxDwOJWk0Htik3J/w@public.gmane.org>,
	Al Viro <viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org>
Subject: Re: [PATCH v2] /proc/pid/status: show all sets of pid according to ns
Date: Thu, 29 May 2014 14:02:06 +0400	[thread overview]
Message-ID: <5387059E.9010105@parallels.com> (raw)
In-Reply-To: <538703D0.7030308-/L3Ra7n9ekc@public.gmane.org>

On 05/29/2014 01:54 PM, Richard Weinberger wrote:
> Am 29.05.2014 11:41, schrieb Pavel Emelyanov:
>> On 05/29/2014 01:21 PM, Richard Weinberger wrote:
>>> Am 29.05.2014 11:07, schrieb Pavel Emelyanov:
>>>> On 05/29/2014 09:59 AM, Vasily Kulikov wrote:
>>>>> On Wed, May 28, 2014 at 23:27 +0400, Pavel Emelyanov wrote:
>>>>>> On 05/28/2014 10:28 PM, Vasily Kulikov wrote:
>>>>>>> On Wed, May 28, 2014 at 16:44 +0400, Pavel Emelyanov wrote:
>>>>>>> It will be simplier
>>>>>>> to parse the file -- if 'ns_ids' file contains some ID then this ID for
>>>>>>> every ns can be obtained regardless of the specific ID name (SID, PID,
>>>>>>> PGID, etc.).
>>>>>>
>>>>>> True, but given a task PID how to determine which pid namespaces it lives in
>>>>>> to get the idea of how PIDs map to each other? Maybe we need some explicit
>>>>>> API for converting (ID, NS1, NS2) into (ID)?
>>>>>
>>>>> AFAIU the idea of the patch is to add a new debugging information which
>>>>> can be trivially obtained via 'cat /proc/...':
>>>>
>>>> I agree, but this ability will be very useful by checkpoint-restore project
>>>> too and I'd really appreciate if the API we have for that would be scalable
>>>> enough. Per-task proc file works for me, but how about sid-s and pgid-s?
>>>
>>> What kind of information does CRIU need?
>>
>> We need to know what pid namespaces a task lives in and how pid, sid and
>> pgid look in all of them. A short example with pids only
> 
> So use case is to checkpoint/restore nested containers? :)

Yes, but there's one more scenario. AFAIK some applications create pid namespaces 
themselves, without starting what is typically called "a container" :) And when 
such an applications are run inside, well ... "more real" container (e.g. using
openvz, lxc or docker tools) we face this issue.

Thanks,
Pavel

WARNING: multiple messages have this Message-ID (diff)
From: Pavel Emelyanov <xemul@parallels.com>
To: Richard Weinberger <richard@nod.at>
Cc: Vasily Kulikov <segoon@openwall.com>,
	<containers@lists.linux-foundation.org>,
	Serge Hallyn <serge.hallyn@ubuntu.com>,
	<linux-kernel@vger.kernel.org>, Oleg Nesterov <oleg@redhat.com>,
	David Howells <dhowells@redhat.com>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Al Viro <viro@zeniv.linux.org.uk>
Subject: Re: [PATCH v2] /proc/pid/status: show all sets of pid according to ns
Date: Thu, 29 May 2014 14:02:06 +0400	[thread overview]
Message-ID: <5387059E.9010105@parallels.com> (raw)
In-Reply-To: <538703D0.7030308@nod.at>

On 05/29/2014 01:54 PM, Richard Weinberger wrote:
> Am 29.05.2014 11:41, schrieb Pavel Emelyanov:
>> On 05/29/2014 01:21 PM, Richard Weinberger wrote:
>>> Am 29.05.2014 11:07, schrieb Pavel Emelyanov:
>>>> On 05/29/2014 09:59 AM, Vasily Kulikov wrote:
>>>>> On Wed, May 28, 2014 at 23:27 +0400, Pavel Emelyanov wrote:
>>>>>> On 05/28/2014 10:28 PM, Vasily Kulikov wrote:
>>>>>>> On Wed, May 28, 2014 at 16:44 +0400, Pavel Emelyanov wrote:
>>>>>>> It will be simplier
>>>>>>> to parse the file -- if 'ns_ids' file contains some ID then this ID for
>>>>>>> every ns can be obtained regardless of the specific ID name (SID, PID,
>>>>>>> PGID, etc.).
>>>>>>
>>>>>> True, but given a task PID how to determine which pid namespaces it lives in
>>>>>> to get the idea of how PIDs map to each other? Maybe we need some explicit
>>>>>> API for converting (ID, NS1, NS2) into (ID)?
>>>>>
>>>>> AFAIU the idea of the patch is to add a new debugging information which
>>>>> can be trivially obtained via 'cat /proc/...':
>>>>
>>>> I agree, but this ability will be very useful by checkpoint-restore project
>>>> too and I'd really appreciate if the API we have for that would be scalable
>>>> enough. Per-task proc file works for me, but how about sid-s and pgid-s?
>>>
>>> What kind of information does CRIU need?
>>
>> We need to know what pid namespaces a task lives in and how pid, sid and
>> pgid look in all of them. A short example with pids only
> 
> So use case is to checkpoint/restore nested containers? :)

Yes, but there's one more scenario. AFAIK some applications create pid namespaces 
themselves, without starting what is typically called "a container" :) And when 
such an applications are run inside, well ... "more real" container (e.g. using
openvz, lxc or docker tools) we face this issue.

Thanks,
Pavel

  parent reply	other threads:[~2014-05-29 10:02 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-28 10:24 [PATCH v2] /proc/pid/status: show all sets of pid according to ns Chen Hanxiao
2014-05-28 10:24 ` Chen Hanxiao
     [not found] ` <1401272683-1659-1-git-send-email-chenhanxiao-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2014-05-28 12:44   ` Pavel Emelyanov
2014-05-28 12:44     ` Pavel Emelyanov
     [not found]     ` <5385DA19.2060008-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2014-05-28 18:28       ` Vasily Kulikov
2014-05-28 18:28         ` Vasily Kulikov
2014-05-28 19:27         ` Pavel Emelyanov
2014-05-28 19:27         ` Pavel Emelyanov
     [not found]           ` <53863889.9080509-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2014-05-29  5:59             ` Vasily Kulikov
2014-05-29  5:59               ` Vasily Kulikov
2014-05-29  9:07               ` Pavel Emelyanov
2014-05-29  9:07                 ` Pavel Emelyanov
2014-05-29  9:21                 ` Richard Weinberger
     [not found]                   ` <5386FC0C.9000307-/L3Ra7n9ekc@public.gmane.org>
2014-05-29  9:41                     ` Pavel Emelyanov
2014-05-29  9:41                       ` Pavel Emelyanov
     [not found]                       ` <538700B5.5070601-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2014-05-29  9:54                         ` Richard Weinberger
2014-05-29  9:54                           ` Richard Weinberger
     [not found]                           ` <538703D0.7030308-/L3Ra7n9ekc@public.gmane.org>
2014-05-29 10:02                             ` Pavel Emelyanov [this message]
2014-05-29 10:02                               ` Pavel Emelyanov
     [not found]                               ` <5387059E.9010105-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2014-05-29 10:19                                 ` Richard Weinberger
2014-05-29 10:19                                   ` Richard Weinberger
     [not found]                                   ` <538709A5.60000-/L3Ra7n9ekc@public.gmane.org>
2014-05-29 10:36                                     ` Pavel Emelyanov
2014-05-29 10:36                                       ` Pavel Emelyanov
2014-05-29  9:53                 ` chenhanxiao
     [not found]                   ` <5871495633F38949900D2BF2DC04883E52A481-ZEd+hNNJ6a5ZYpXjqAkB5jz3u5zwRJJDAzI0kPv9QBlmR6Xm/wNWPw@public.gmane.org>
2014-05-29 10:40                     ` Pavel Emelyanov
2014-05-29 10:40                       ` Pavel Emelyanov
     [not found]                 ` <5386F8EA.8050501-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2014-05-29  9:21                   ` Richard Weinberger
2014-05-29  9:53                   ` chenhanxiao-BthXqXjhjHXQFUHtdCDX3A
2014-05-29 11:12                   ` Vasily Kulikov
2014-05-29 11:12                     ` Vasily Kulikov
2014-05-29 11:31                     ` Pavel Emelyanov
2014-05-29 11:31                       ` Pavel Emelyanov
     [not found]                       ` <53871A92.9000004-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2014-05-29 11:59                         ` Vasily Kulikov
2014-05-29 11:59                           ` Vasily Kulikov
2014-05-29 12:53                           ` Pavel Emelyanov
2014-05-29 12:53                             ` Pavel Emelyanov
     [not found]                             ` <53872DAD.1070502-bzQdu9zFT3WakBO8gow8eQ@public.gmane.org>
2014-05-31  6:07                               ` Vasily Kulikov
2014-05-31  6:07                                 ` Vasily Kulikov
2014-05-31 20:08                                 ` Eric W. Biederman
2014-05-31 20:08                                   ` Eric W. Biederman

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=5387059E.9010105@parallels.com \
    --to=xemul-bzqdu9zft3wakbo8gow8eq@public.gmane.org \
    --cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
    --cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=dhowells-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=oleg-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=richard-/L3Ra7n9ekc@public.gmane.org \
    --cc=segoon-cxoSlKxDwOJWk0Htik3J/w@public.gmane.org \
    --cc=serge.hallyn-GeWIH/nMZzLQT0dZR+AlfA@public.gmane.org \
    --cc=viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.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.