https://bugs.winehq.org/show_bug.cgi?id=29582
--- Comment #22 from Daniel Santos daniel.santos@pobox.com --- (In reply to Joe from comment #20)
To add to that. This is on OSX, so perhaps the patch is for linux only?
Ahh, well my apologies then. There are a few things I should state about the experimental posix semaphores patchset:
1. It's only been tested on Linux 2. It will only work if you build a 32-bit only wine build (wineserver has to be 32-bits). 3. It has been abandon in favor of a different route.
Also, if you want the very last revision of this patch set, you can get it from this thread: http://comments.gmane.org/gmane.comp.emulators.wine.devel/103479 Unfortunately, I ran git send-email wrong and the new patches didn't go under the correct sub-thread, so they are patches 1-9 dated September 14 (and they "rev 3" header message is at the bottom of the thread).
On the bright side a new experimental patch set to address this problem is forthcoming, but again it is untested on OSX and there is at least one mechanism that I know of that has to be coded for the BSD kernel because they don't have futexes (that I know of), so these will likely replaced by ksemaphores, but I haven't looked deeply into it yet. Lastly, there's some more work needed for ARM and PPC.
Hopefully the combination of Sebastian's shared memory patch set and the new "hybrid semaphores" will fix this problem (as well as many others).