This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] [BZ #15392] Remove fork child pid assertion


On Mon, Nov 17, 2014 at 2:38 AM, Torvald Riegel <triegel@redhat.com> wrote:
> On Fri, 2014-11-14 at 17:29 -0800, Ricky Zhou wrote:
>> This assertion is no longer always true, since a forked child may be in
>> a different PID namespace than its parent, and the two namespace may
>> have PID collisions.
>
> If that's true, process-shared synchronization facilities based on the
> thread ID (e.g., mutexes) might not work anymore.
>
> Do we at least need a note in the documentation that this is the case?
> Or do we still need to implement it?
>
> Is there any glibc-internal synchronization that this could break?
>
> I believe we deal with these issues before dropping the assert.
Within a PID namespace, all thread IDs should remain unique, and a
process cannot have threads in different PID namespaces
(http://lxr.free-electrons.com/source/kernel/fork.c#L1217), so I'm
having trouble coming up with a situation where removing this assert
would allow badness to happen down the line.

Ricky


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]