Re: clone() and CLONE_PID

The Lost Wizard (lost@l-w.net)
Wed, 8 Sep 1999 23:16:33 -0600 (MDT)


On 9 Sep 1999, David Wragg wrote:

> POSIX is just an API; it doesn't tell you how to design a
> kernel. Generally Linux directly implements POSIX features because
> that is simpler, but for POSIX threads it's worth stepping back and
> asking what it really needs from the kernel. My opinion is that doesn't
> include pid sharing and tids.
>
> David Wragg

It is my understanding that signals cannot be guaranteed to work
according to the POSIX threads specification without the CLONE_PID option.
Please don't say this can be done reliably in userspace; it takes a severe
performance hit for signal handling and adds several levels of complexity
to any pthreads library that uses clone. The way I understand it (and it
has been a while since I read anything on the subject) is that certain
fatal signals are supposed to be received by all threads/affect all
threads no matter which thread receives it. I believe this includes at
least one signal that cannot be handled. So how do you propogate this
signal reliably to all other threads in the process?

Of course, I may have no idea what I'm talking about, too.

William Astle
"Floppity, floppity, flip / The mouse on the mobius strip; / The strip
revolved, / The mouse disolved / In a chronodimensional skip."

-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS/M/S d- s+:+ !a C++ UL++++$ P++ L+++ !E W++ !N w--- !O !M PS PE V-- Y+
PGP t+@ 5++ X !R tv+@ b+++@ !DI D? G e++ h+ y?
------END GEEK CODE BLOCK------

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