Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 May 2008 07:27:26 +0800
From:      David Xu <davidxu@freebsd.org>
To:        Daniel Eischen <deischen@freebsd.org>
Cc:        freebsd-threads@freebsd.org
Subject:   Re: pthread_cleanup_push as a macro
Message-ID:  <48408D5E.2010609@freebsd.org>
In-Reply-To: <Pine.GSO.4.64.0805301905020.20343@sea.ntplx.net>
References:  <483FA1C0.2010506@freebsd.org> <200805301748.29689.jhb@freebsd.org> <Pine.GSO.4.64.0805301905020.20343@sea.ntplx.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Daniel Eischen wrote:
> On Fri, 30 May 2008, John Baldwin wrote:
>
>> On Friday 30 May 2008 02:42:08 am David Xu wrote:
>>> I would like to make pthread_cleanup_push and pthread_cleanup_pop as a
>>> pair of macros, the current implementation has to malloc() and free() a
>>> pthread_cleanup memory block everytime, this is slow, the new one
>>> simply uses stack space, note that other OSes have already done it in
>>> this way. The patch keeps old functions and should not have binary
>>> compatible problem.
>>>
>>> http://people.freebsd.org/~davidxu/patch/pthread_cleanup_push.patch
>>
>> Please do!
>
> I agree - Solaris does this too.  I am unsure why you really need
> a strong_reference - I would prefer something that doesn't require
> it.
>

This becauses original _pthread_cleanup_push and _pthread_cleanup_pop are
functions but not weak aliases, it is to keep compatibility.






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48408D5E.2010609>