apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject Re: Posix sems still not recommended?
Date Tue, 31 Mar 2009 06:59:41 GMT
On 30.03.2009 20:58, Jeff Trawick wrote:
> On Mon, Mar 30, 2009 at 2:33 PM, Jeff Trawick <trawick@gmail.com
> <mailto:trawick@gmail.com>> wrote:
>
>
>
> On Mon, Mar 30, 2009 at 2:07 PM, Jim Jagielski <jim@jagunet.com
> <mailto:jim@jagunet.com>> wrote:
>
> Anyone know if:
>
> # POSIX semaphores and cross-process pthread mutexes are not # used
> by default since they have less desirable behaviour when # e.g. a
> process holding the mutex segfaults.
>
> is still applicable, at least for posix sems?
>
>
> AFAIK, the Solaris-specific recovery logic for cross-process pthread
> mutexes has been working reliably for a long time, but with the
> current wind direction APR is choosing fcntl(), which has sysdef
> implementations on that
>
>
> ugh; "sysdef implications"

and quite often shows EDEADLOCK, even when you can prove there can't be
one. Especially when starting to use more than one lock of that type
(e.g. when SSL comes into the game).

> platform.
>
> no clues here about the POSIX semaphores

I would be much interested in an answer as well. Because of the
EDEADLOCK problems I did suggest using the pthread based mutex on
Solaris for a while to people and got no problem reports. But what
experience do others have?

In a related thread on the Tomcat users list about mod_jk I wrote in
February:

   I now did some searching and it turns out that the implementation of
   pthread mutexes for Solaris 10 has very recently changed quite a bit.
   So all speculations about improved pthread mutex behaviour
   (especially for "robust" mutexes) in the last years might have become
   obsolete.

   The new implementation is contained in Solaris kernel patch 137137-09
   and most likely also in Solaris 10 Update 6 (10/08). I didn't check,
   whether that update simply contains the kernel patch or the fix is
   included independently.

   Some detail is logged in Sunsolve under the bug IDs

   6296770 2160259 6664275 6697344 6729759 6564706

Regards,

Rainer

Mime
View raw message