Re: [PATCH] pid: Don't hash pid 0.

From: Eric W. Biederman
Date: Sun Jan 29 2006 - 05:03:53 EST


Andrew Morton <akpm@xxxxxxxx> writes:

> ebiederm@xxxxxxxxxxxx (Eric W. Biederman) wrote:
>>
>> pid 0 is never exported to userspace, so hashing it servers no useful
>> purpose.
>
> uh-huh.
>
>> Explicitly not hashing pid 0 allows struct pid to be marked as not
>> hashed, and it allows us to avoid checks if for pid 0 when searching
>> for processes to signal if pid 0 does not have a special meaning.
>
> Were you planning on sending a patch to avoid those checks? Because right
> now, this patch looks like a net loss.

Yes.

I just asked for comments on linux-kernel.

Before I go further I feel honor bound to explain my biases.

.....

I am stuck out in no man land on clusters without customary OS services.
Because of their distributed nature I have applications I cannot swap,
can barely suspend, and cannot migrate to other cpus.

To solve that problem it looks to me like I need multiple namespace support
in the OS so when I migrate an application I can capture all of the OS
state the application depends on.

With respect to namespaces I have done some proof of concept implementations
and now that I know that what I want is possible I am working on a production
quality implementation.

I am starting with working my way towards multiple instances of a PID
namespace in the kernel.

What you have seen are the first couple of cleanups to get the worst
of the offenders from being a hinderance.

The next step is to fix the problem of pid reference wrap around,
inside the kernel. At least this looks to be a promising direction
to solve a rare case and lay the foundation that I will need for
multiple instances of the pid namespace.

I am doing my best to work with all interested parties and to provide
a good solution that works for everyone and not just me. Taking
everything in small obviously correct patches as I go.

Eric
-
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/