[haiku-commits] Re: r40544 - haiku/trunk/src/tests/system/libroot/posix

  • From: Jérôme Duval <korli@xxxxxxxxxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 23 Feb 2011 13:05:20 +0100

Hi Ingo,

2011/2/18 Ingo Weinhold <ingo_weinhold@xxxxxx>:
> On 2011-02-17 at 20:37:19 [+0100], korli@xxxxxxxxxxxxxxxx wrote:
>> Author: korli
>> Date: 2011-02-17 20:37:19 +0100 (Thu, 17 Feb 2011)
>> New Revision: 40544
>> Changeset: http://dev.haiku-os.org/changeset/40544
>>
>> Added:
>>    haiku/trunk/src/tests/system/libroot/posix/pthread_signal_test.cpp
>> Modified:
>>    haiku/trunk/src/tests/system/libroot/posix/Jamfile
>> Log:
>> added a simple test which seems to reproduce the bug encountered in jamvm
>
> I believe the problem this test is running into is (part of) #5679.
> sigaction() should set the signal handler for the process, but in Haiku it
> sets the signal handler for the current (i.e. in the case: main) thread. So
> the signals sent to the other threads would kill them, if I'm reading this
> right.

Not sure it's exactly #5679. As I read the JamVM code, pthread_kill
deliver the signal to the selected thread, which should have the same
sigaction handler as the main thread (signal disposition is common to
the team). The problem I see is the sig_action array is located in
Thread whereas it should be in Team.
But you're right, threads look like being killed.

Bye,
Jérôme

Other related posts: