[Bug 50448] ntdll-NtAlertThreadByThreadId causes intermittent temporary hangs in multiple applications

WineHQ Bugzilla wine-bugs at winehq.org
Sat Jan 9 10:47:31 CST 2021


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

--- Comment #14 from Zebediah Figura <z.figura12 at gmail.com> ---
I can reproduce frequent intermittent hangs locally in the game Rift (or the
Glyph launcher; I don't know). I don't see an effect in the game, but I see
frequent err:sync messages with various critical sections, including at least
one Wine-internal CS (the wined3d CS) implying that some thread is missing a
wakeup when the CS is released. I managed, *once*, to reproduce this with
+sync, and I got this (trimmed):

188567.658:014c:01a0:trace:sync:RtlWaitOnAddress addr 00007FF30C2074D8 cmp
000000007BC72298 size 0x4 timeout fffffffffd050f80
188567.658:014c:01a0:trace:sync:NtWaitForAlertByThreadId (nil) fffffffffd050f80
188567.658:014c:01bc:trace:sync:RtlWakeAddressSingle 00007FF30C2074D8
188567.658:014c:01bc:trace:sync:NtAlertThreadByThreadId 0x1a0
188567.658:014c:01bc:trace:sync:RtlWakeAddressSingle 00007FF30C2074D8

188567.667:014c:01c0:trace:sync:RtlWaitOnAddress addr 00007FF30C2074D8 cmp
000000007BC72298 size 0x4 timeout fffffffffd050f80

188572.660:014c:01c0:trace:sync:RtlWaitOnAddress addr 00007FF30C2074D8 cmp
000000007BC72298 size 0x4 timeout ffffffffdc3cba00

The first few lines (at .658) are within expectations; nothing to see there.
But the last two lines are very weird, because *there is no call to
RtlWakeAddressSingle*. I don't understand how this can even happen; it would
imply that any thread releasing the lock between those two points saw a
LockCount of 0, which shouldn't be possible if 01c0 is waiting on it.

-- 
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