[Gc] Re: pthread_cancel(3) confuses 'GC_suspend_all ()'
hans.boehm at hp.com
Tue Sep 15 11:56:56 PDT 2009
> -----Original Message-----
> From: gc-bounces at napali.hpl.hp.com
> [mailto:gc-bounces at napali.hpl.hp.com] On Behalf Of Ludovic Courtès
> Sent: Tuesday, September 15, 2009 12:25 AM
> To: gc at napali.hpl.hp.com
> Subject: [Gc] Re: pthread_cancel(3) confuses 'GC_suspend_all ()'
> Thanks for the quick reply and detailed analysis!
> "Boehm, Hans" <hans.boehm at hp.com> writes:
> > Thus I'd be inclined to go ahead and disable cancellation
> across all
> > potential cancellation points we can find, including the one in the
> > handler, documenting that one as potentially not completely
> > We should also add the warning that Posix asynchronous cancellation
> > should never be used with the collector (or, in my opinion, without
> > it).
> It makes sense to me. Glibc's pthread_setcancelstate(3)
> shouldn't introduce much overhead, so that's probably OK.
> Any idea how many cancellation points lie in libgc code that
> holds the allocation lock?
I think not a lot. I'll make a pass over the code to try to get the obvious ones. The hard part will be to find the ones I forget.
More information about the Gc