[PATCH 0/3] Fix semaphore destruction (BZ #12674)
Rich Felker
dalias@libc.org
Fri Dec 5 20:30:00 GMT 2014
On Fri, Dec 05, 2014 at 07:37:48PM +0100, Torvald Riegel wrote:
> This patch set fixes
> https://sourceware.org/bugzilla/show_bug.cgi?id=12674 by either using
> 64b atomic operations (where available), or by using two separate fields
> when only 32b atomic operations are available. In the latter case, we
> keep a conservative estimate of whether there are any waiting threads in
> one bit of the field that counts the number of available tokens, thus
> allowing sem_post to atomically both add a token and determine whether
> it needs to call futex_wake.
>
> The first two patches are changes to the tests, the last big patch is
> where the actual fix resides.
I haven't read the code, but per your description of the changes, the
concepts all sound correct.
Rich
More information about the Libc-alpha
mailing list