[Bug 50448] Recent changes to ntdll-NtAlertThreadByThreadId causes that threads in some applications might look up causing periodical lookups

WineHQ Bugzilla wine-bugs at winehq.org
Tue Jan 5 19:58:28 CST 2021


https://bugs.winehq.org/show_bug.cgi?id=50448

--- Comment #6 from Zebediah Figura <z.figura12 at gmail.com> ---
Actually, I just realized an even easier race. It's not quite documented, but
two simultaneous calls to RtlWakeAddressSingle() apparently should always wake
at least two threads, and my patches violated that. I've pushed a fix as
<https://github.com/wine-staging/wine-staging/commit/dfddef9654d4a24642c61c287a93f22eb7a51e12>.

I think that this indirectly ends up fixing the race described in comment 5 as
well. At least one other thread will end up waking 010c before 0108 does (while
010c is the only thread actually waiting on the lock) and so 0108 wakes 00fc
instead.

Please test with current wine-staging (and without the patch from comment 5); I
think that should end up fixing this bug completely.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list