[OpenAFS-devel] 1.2.9: Pthreads and signals combination is broken.

Derrick J Brashear shadow@dementia.org
Wed, 7 May 2003 18:49:23 -0400 (EDT)


On Thu, 8 May 2003, Harald Barth wrote:

> > No, actually, the idea was that (except for fatal non-blockable signals)
> > only the softsig thread would take any.
>
> Now you got me really confused :-) My feeling is that the 1.2.9 code
> was written with the intent that all threads take signals (to please
> the Linux thread model). 1.2.6 code seems to be written with the POSIX
> model in mind where any thread can take a signal.

I said something other than what I meant. It's not important because I
think you figured it out. No, reading on, I guess not. The softsig thread
is for handling the signals, not receiving them. Anyhow,

> 2) The current Linux model (*) where a signal is delivered to the thread
> which happens to be active just now and then the blocking status is
> checked if the action registered by signal() is performed. If the thread
> has the signal in question blocked, it will not be delivered.

I thought the case here was the parent which was child()d got the signals,
period.

> Whatdoyouthink?

I think I'm confused.