Re: [RFC][PATCH 04/20] pspace: Allow multiple instaces of the process id namespace

From: Serge E. Hallyn
Date: Thu Feb 16 2006 - 08:44:40 EST


Quoting Herbert Poetzl (herbert@xxxxxxxxxxxx):
> > 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?

I still like the following:

clone(): extended with flags for asking a private copy of various
namespaces. For the CLONE_NEWPIDSPACE flag, the pid which
is returned to the parent process is it's handle to the
new pidspace.

sys_execpid(pid, argv, envp): exec a new syscall with the requested
pid, if the pid is available. Else either return an error,
or pick a random pid. Error makes sense to me, but that's
probably debatable.

sys_fork_slide(pid): fork and slide into the pidspace belong to pid.
This way we can do things like

p = sys_fork_slide(2794);
if (p == 0) {
kill(2974);
} else {
waitpid(p, 0, 0);
}

Ok, this last one in particular needs to be improved, but these two
syscalls and the clone flags together give us all we need. Right?

-serge
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/