This is the mail archive of the libc-alpha@sources.redhat.com 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]

Re: LinuxThreads cancellation bug.


On 6 Nov 2000, Ulrich Drepper wrote:

> Date: 06 Nov 2000 17:54:49 -0800
> From: Ulrich Drepper <drepper@redhat.com>
> Reply-To: Ulrich Drepper <drepper@cygnus.com>
> To: Kaz Kylheku <kaz@ashi.footprints.net>
> Cc: libc-alpha@sources.redhat.com
> Subject: Re: LinuxThreads cancellation bug.
> 
> Kaz Kylheku <kaz@ashi.footprints.net> writes:
> 
> > I believe that it is sufficient, simply because that extrication
> > pointer is not registered if the thread's cancelation is disabled,
> > so kill() will be called rather than restart(). The thread's signal
> > handler will note that cancelation is disabled and not do anything.
> 
> I'm not convinced at all.  If it's working it is far too complicated.

I agree; if it's not obvious why it works, some reader of the code may waste
time wondering about it, convincing him or herself that it does.  Secondly, it
may break without someone noticing (as has already happened!!!).  The 2.1.2 and
earlier versions depended on that logic of not having an explicit test, and I
broke it miserably.  As a result, 2.1.3 shipped with cancelation disabling
horribly broken.

I must apologize for that one!


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