6.4.3 and threaded RTS problems

pepe mnislaih at gmail.com
Thu Aug 24 04:45:23 EDT 2006


"Worse is Better" gives an entertaining view on this fact.

pepe

On 24/08/06, skaller <skaller at users.sourceforge.net> wrote:
> On Thu, 2006-08-24 at 08:56 +0100, Simon Marlow wrote:
> > Hi Folks,
> >
> > Roman Leshchinskiy and I looked into the 6.4.3 crashes on Sparc/Solaris
> > yesterday.  I think we may have found the problem, and it seems likely that this
> > is the same problem affecting 6.4.3 on MacOS X.  The threaded RTS is assuming in
> > a couple of places that pthread_cond_wait() doesn't spuriously wake up, which is
> > apparently the case on Linux but not true in general.
>
> I don't believe it is the case on Linux either. I had the same
> problem: on Linux it appears to work .. but Posix allows
> spurious wakeups, our OSX/Solaris/Windows code failed.
>
> This isn't just for cond_wait: most system calls can return
> spuriously if an OS signal goes off. Somewhere I read a good article
> explaining why this is necessary for good performance.
> A signal to a condition variable should be regarded as
> a hint to recheck the condition.
>
> --
> John Skaller <skaller at users dot sf dot net>
> Felix, successor to C++: http://felix.sf.net
>
> _______________________________________________
> Glasgow-haskell-users mailing list
> Glasgow-haskell-users at haskell.org
> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
>


More information about the Glasgow-haskell-users mailing list