public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Herbert Poetzl <herbert@13thfloor.at>
To: Kirill Korotaev <dev@sw.ru>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>,
	linux-kernel@vger.kernel.org, vserver@list.linux-vserver.org,
	"Serge E. Hallyn" <serue@us.ibm.com>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Dave Hansen <haveblue@us.ibm.com>,
	Arjan van de Ven <arjan@infradead.org>,
	Suleiman Souhlal <ssouhlal@FreeBSD.org>,
	Hubertus Franke <frankeh@watson.ibm.com>,
	Cedric Le Goater <clg@fr.ibm.com>,
	Kyle Moffett <mrmacman_g4@mac.com>, Greg <gkurz@fr.ibm.com>,
	Linus Torvalds <torvalds@osdl.org>, Andrew Morton <akpm@osdl.org>,
	Greg KH <greg@kroah.com>, Rik van Riel <riel@redhat.com>,
	Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>,
	Andrey Savochkin <saw@sawoct.com>,
	Kirill Korotaev <dev@openvz.org>, Andi Kleen <ak@suse.de>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Jeff Garzik <jgarzik@pobox.com>,
	Trond Myklebust <trond.myklebust@fys.uio.no>,
	Jes Sorensen <jes@sgi.com>
Subject: Re: [RFC][PATCH 04/20] pspace: Allow multiple instaces of the process id namespace
Date: Wed, 15 Feb 2006 14:31:32 +0100	[thread overview]
Message-ID: <20060215133131.GD28677@MAIL.13thfloor.at> (raw)
In-Reply-To: <43F31972.3030902@sw.ru>

On Wed, Feb 15, 2006 at 03:07:14PM +0300, Kirill Korotaev wrote:
> Hello Eric,
> 
> >>memory barrier doesn't help. you really need to think about.
> >Except for instances where you need an atomic read/modify/write the
> >only primitives you have are reads, writes and barriers.
> >
> >I have all of the correct reads and writes therefore the only thing
> >that could help are barriers if the logic is otherwise sane.
> the problem is that you do read/write for synchronization of other 
> operations (fork/pspace leader die).
> i.e. you try to make a serialization, you see? It doesn't work this way.
> 
> ....
> 
> >This exchange seems to have a hostile and not a cooperative tone so
> >I will finish the investigation and bug fixing elsewhere.
> Eric, I think it turned this way because you started pointing to our 
> bugs in VPIDs, while having lots of own and not working code.
> I can point you another _really_ disastrous bugs in your IPC and 
> networking virtualization. But discussing bugs is not want I want, you 
> see? I want us to make some solution suatable for all the parties.

that's good!

> And while you have not working solution it is hard to discuss whether
> it is good or not, whether it is beatutiful or not. It is incomplete
> and doesn't work. So many statements that one solution is better than
> another are not valid.

well, it's kind of moot to demand a final solution just
to discuss the implementation ...
usually software design happens before the implementation
and the implementation details can be fed back into the
cycle later ...

> And we are too cycled on PIDs. Why? I think this is the most minor 
> feature which can easily live out of mainstream if needed, while 
> virtualization is the main goal.

although I could be totally ignorant regarding the PID
stuff, it seems to me that it pretty well reflects the
requirements for virtualization in general, while being
simple enough to check/test several solutions ...

why? simple: it reflects the way 'containers' work in
general, it has all the issues with administration and
setup, similar to 'guests' (it requires some management
and access from outside, while providing security and
isolation inside), containers could be easily built on
top of that or as an addition to the pid space structures
at the same time it's easy to test, and issues will show
up quite early, so that they can be discussed and, if
necessary, solved without rewriting an entire framework.

> I also don't understand why you are eager to introduce new sys calls 
> like pkill(path_to_process), but is trying to use waitpid() for pspace 
> die notifications? Maybe it is simply better to introduce container 
> specific syscalls which should be clean and tidy, instead of messing 
> things up with clone()/waitpid() and so on? The more simple code we 
> have, the better it is for all of us.

now that you mention it, maybe we should have a few
rounds how those 'generic' container syscalls would 
look like?

best,
Herbert

> If possible keep posting your patches. I would even ask you to add me to 
> CC always. You are doing a really good job and discussion solutions is 
> the only possible way to push something to mainstream I suppose.
> I would also be happy to arrange a meeting with the interested parties, 
> since talking eye to eye can be much more productive.
> 
> >I expect that there might be a few more issues like this.  My only
> >expectation was that the code was complete enough to discuss semantics
> >and kernel mechanisms for creating a namespaces, and the code has
> >successfully served that purpose.
> To some extent yes.
> 
> Kirill

  reply	other threads:[~2006-02-15 13:31 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-06 19:19 [RFC][PATCH 0/20] Multiple instances of the process id namespace Eric W. Biederman
2006-02-06 19:22 ` [RFC][PATCH 01/20] pid: Intoduce the concept of a wid (wait id) Eric W. Biederman
2006-02-06 19:27   ` [RFC][PATCH 02/20] pspace: The parent process id of pid 1 is always 0 Eric W. Biederman
2006-02-06 19:29     ` [RFC][PATCH 03/20] pid: Introduce a generic helper to test for init Eric W. Biederman
2006-02-06 19:34       ` [RFC][PATCH 04/20] pspace: Allow multiple instaces of the process id namespace Eric W. Biederman
2006-02-06 19:36         ` [RFC][PATCH 05/20] sched: Fixup the scheduler syscalls to deal with pspaces Eric W. Biederman
2006-02-06 19:39           ` [RFC][PATCH 06/20] cad_pid: Fixup the cad_pid users to assume it is in the initial process id namespace Eric W. Biederman
2006-02-06 19:41             ` [RFC][PATCH 07/20] tty: Update the tty layer to work with pspaces Eric W. Biederman
2006-02-06 19:44               ` [RFC][PATCH 08/20] vt: Update the virtual console to handle pspaces Eric W. Biederman
2006-02-06 19:46                 ` [RFC][PATCH 09/20] ptrace: Update ptrace " Eric W. Biederman
2006-02-06 19:49                   ` [RFC][PATCH 10/20] capabilities: Update the capabilities code to " Eric W. Biederman
2006-02-06 19:51                     ` [RFC][PATCH 11/20] ioprio: Update ioprio " Eric W. Biederman
2006-02-06 19:54                       ` [RFC][PATCH 12/20] fcntl: Update fcntl to work with pspaces Eric W. Biederman
2006-02-06 19:57                         ` [RFC][PATCH 13/20] kthread: Update kthread " Eric W. Biederman
2006-02-06 19:59                           ` [RFC][PATCH 14/20] mm: Update vmscan " Eric W. Biederman
2006-02-06 20:00                             ` [RFC][PATCH 15/20] posix-timers: Update posix timers " Eric W. Biederman
2006-02-06 20:02                               ` [PATCH 16/20] nfs: Don't use pids to track the lockd server process Eric W. Biederman
2006-02-06 20:03                                 ` [RFC][PATCH 17/20] usb: Fixup usb so it works with pspaces Eric W. Biederman
2006-02-06 20:05                                   ` [RFC][PATCH 18/20] posix-mqueue: Make mqueues work with pspspaces Eric W. Biederman
2006-02-06 20:07                                     ` [RFC][PATCH 19/20] pspace: Upcate the pid_max sysctl to work in a per pspace fashion Eric W. Biederman
2006-02-06 20:12                                       ` [RFC][PATCH 20/20] proc: Update /proc to support multiple pid spaces Eric W. Biederman
2006-02-10 20:40                                         ` Kirill Korotaev
2006-02-11 10:10                                           ` Eric W. Biederman
2006-02-06 20:41                                   ` [RFC][PATCH 17/20] usb: Fixup usb so it works with pspaces Serge E. Hallyn
2006-02-06 20:53                                     ` Eric W. Biederman
2006-02-07 16:41         ` [RFC][PATCH 04/20] pspace: Allow multiple instaces of the process id namespace William Lee Irwin III
2006-02-07 17:05           ` Eric W. Biederman
2006-02-10 20:30         ` Kirill Korotaev
2006-02-11  9:42           ` Eric W. Biederman
2006-02-11 10:11           ` Eric W. Biederman
2006-02-11 10:43           ` Eric W. Biederman
2006-02-13  8:53             ` Kirill Korotaev
2006-02-13 16:40             ` Dave Hansen
2006-02-11 11:03           ` Eric W. Biederman
2006-02-13  9:02             ` Kirill Korotaev
2006-02-13 21:31               ` Serge E. Hallyn
2006-02-13 23:41               ` Eric W. Biederman
2006-02-11 11:57           ` Eric W. Biederman
2006-02-13  9:22             ` Kirill Korotaev
2006-02-13 17:02               ` Serge E. Hallyn
2006-02-14  5:59                 ` Eric W. Biederman
2006-02-14  5:54               ` Eric W. Biederman
2006-02-14 18:45                 ` Dave Hansen
2006-02-15 12:07                 ` Kirill Korotaev
2006-02-15 13:31                   ` Herbert Poetzl [this message]
2006-02-16 13:44                     ` Serge E. Hallyn
2006-02-20  9:27                       ` Kirill Korotaev
2006-02-20 17:04                         ` Herbert Poetzl
2006-02-21 16:29                           ` Kirill Korotaev
2006-02-21 23:23                             ` Herbert Poetzl
2006-02-20 11:29                     ` Kirill Korotaev
2006-02-20 12:34                       ` Herbert Poetzl
2006-02-20 14:11                         ` Kirill Korotaev
2006-02-20 15:08                           ` Herbert Poetzl
2006-03-01 22:06                             ` Cedric Le Goater
2006-02-15 18:40                   ` Eric W. Biederman
2006-02-06 19:56       ` [RFC][PATCH 03/20] pid: Introduce a generic helper to test for init Dave Hansen
2006-02-06 20:22         ` Eric W. Biederman
2006-02-07 15:08       ` Geert Uytterhoeven
2006-02-07 15:17         ` Eric W. Biederman
2006-02-06 19:54   ` [RFC][PATCH 01/20] pid: Intoduce the concept of a wid (wait id) Serge E. Hallyn
2006-02-06 20:23     ` Eric W. Biederman
2006-02-07 17:39   ` Jeff Dike
2006-02-07 18:32     ` Eric W. Biederman
2006-02-10 18:51   ` Kirill Korotaev
2006-02-11  9:25     ` Eric W. Biederman
2006-02-13  8:43       ` Kirill Korotaev
2006-02-14  0:04         ` Eric W. Biederman
2006-02-06 20:40 ` [RFC][PATCH 0/20] Multiple instances of the process id namespace Hubertus Franke
2006-02-06 20:51   ` Eric W. Biederman
2006-02-06 21:07     ` Hubertus Franke
2006-02-06 21:56       ` Eric W. Biederman
2006-02-07  0:48 ` Dave Hansen
2006-02-07  5:14   ` Eric W. Biederman
2006-02-07  9:33   ` Andi Kleen
2006-02-08  4:19     ` Randy.Dunlap
2006-02-08  4:28       ` Eric W. Biederman
2006-02-08  4:51         ` Randy.Dunlap

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=20060215133131.GD28677@MAIL.13thfloor.at \
    --to=herbert@13thfloor.at \
    --cc=ak@suse.de \
    --cc=akpm@osdl.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=arjan@infradead.org \
    --cc=benh@kernel.crashing.org \
    --cc=clg@fr.ibm.com \
    --cc=dev@openvz.org \
    --cc=dev@sw.ru \
    --cc=ebiederm@xmission.com \
    --cc=frankeh@watson.ibm.com \
    --cc=gkurz@fr.ibm.com \
    --cc=greg@kroah.com \
    --cc=haveblue@us.ibm.com \
    --cc=jes@sgi.com \
    --cc=jgarzik@pobox.com \
    --cc=kuznet@ms2.inr.ac.ru \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mrmacman_g4@mac.com \
    --cc=riel@redhat.com \
    --cc=saw@sawoct.com \
    --cc=serue@us.ibm.com \
    --cc=ssouhlal@FreeBSD.org \
    --cc=torvalds@osdl.org \
    --cc=trond.myklebust@fys.uio.no \
    --cc=vserver@list.linux-vserver.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox