Re: pthread_cond_broadcast and FUTEX_REQUEUE
Jakub Jelinek <[email protected]> Tue, 18 May 2004 04:50:41 -0400
| Newsgroups | gmane.comp.lib.phil |
|---|---|
| Message-ID | <[email protected]> |
On Tue, May 18, 2004 at 12:40:54PM +0530, Dinakar Guniguntala wrote: > I noticed that pthread_cond_broadcast still uses the FUTEX_REQUEUE > functionality in the latest CVS sources whereas this has been > removed in RHEL 3.0 update 2. Since there seems to be a testcase > that demonstrates this problem, > (http://bugme.osdl.org/show_bug.cgi?id=2364) > I was wondering if the fix will get into CVS as well. > > I had also previously noted that another fix for this problem would be to > continue to use FUTEX_REQUEUE without releasing the internal > condvar lock to prevent corruption of the counters. There are actually 2 different problems with current pthread_cond_broadcast: https://www.redhat.com/archives/phil-list/2004-April/msg00002.html http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=115349 I'm aware of. The latter is fixed by changes Ulrich wrote during the last days and are currently in testing, the former can be solved by adding a new futex(2) operation, FUTEX_CMP_REQUEUE, plus corresponding glibc changes. Please wait a few days until these changes get enough testing, then at least the #115349 fix can go in immediately, the latter needs to wait for kernel people buy-in. Jakub