https://bugs.winehq.org/show_bug.cgi?id=46208
--- Comment #15 from Zebediah Figura z.figura12@gmail.com --- (In reply to Brendan McGrath from comment #14)
I'm still hoping to see resolution to this bug prior to the release of version 4.0.
I'm not sure if at this late stage I should concede defeat or if I should: a) resubmit the Futex patch from staging; or b) create a patch using RtlWaitOnAddress()/RtlWakeAddress()
The Futex patch does have a noticeable performance benefit over the proof of concept I created (but the proof of concept has plenty of room for improvement).
Or are you currently working on a resolution to this?
Yes, I am currently working on resolution to this. It's likely that a path using RtlWaitOnAddress() is the best way to go, but that will need bug 46099 fixed first.
It's likely this won't be ready for 4.0, which is unfortunate, but in that case it'll just have to wait until after code freeze. If nothing else the futex patch will stay in Staging until it's ready for upstream.