2006-01-12 01:23:17

by Russell Leighton

[permalink] [raw]
Subject: clone() + glibc thread safe?


Can you safely use glibc functions in a thread safe way (e.g., malloc()
and friends) from threads generated by:

clone(f, stack, CLONE_FS|CLONE_FILES|CLONE_VM, t)

Thx


Russ



2006-01-12 07:28:35

by Arjan van de Ven

[permalink] [raw]
Subject: Re: clone() + glibc thread safe?

On Wed, 2006-01-11 at 20:40 -0500, Russell Leighton wrote:
> Can you safely use glibc functions in a thread safe way (e.g., malloc()
> and friends) from threads generated by:
>
> clone(f, stack, CLONE_FS|CLONE_FILES|CLONE_VM, t)

no

unless you tell glibc you're using threads (by using the glibc threading
primitives) glibc doesn't provide such thread safety.
(glibc at runtime knows you have threads and switches to thread-safe
operations)