[Bug 4166] deadlock in GlobalUnlock

Wine Bugs wine-bugs at winehq.org
Thu Jan 5 14:33:54 CST 2006


http://bugs.winehq.org/show_bug.cgi?id=4166





------- Additional Comments From arieldembling at gmail.com  2006-05-01 14:33 -------
(From update of attachment 1626)
>This is a trace +relay,+exec,+shell,+seh,+server,+tid.
>
>Let's see a few lines before the hang...
>
>0009:Call window proc 0x4dab9a (hwnd=0x10082,msg=WM_PARENTNOTIFY,wp=00000002,lp=
>00010140)
>0009:Call user32.GetWindowLongA(00010082,00000000) ret=004dabbe
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009:Ret  user32.GetWindowLongA() retval=7eeb9454 ret=004dabbe
>0009:Call user32.DefWindowProcA(00010082,00000210,00000002,00010140) ret=004db0a
>4
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009:Ret  user32.DefWindowProcA() retval=00000000 ret=004db0a4
>0009:Ret  window proc 0x4dab9a (hwnd=0x10082,msg=WM_PARENTNOTIFY,wp=00000002,lp=
>00010140) retval=00000000
>0009:Call kernel32.94(7fa60300) ret=7fa16518
>0009:Ret  kernel32.94() retval=00000009 ret=7fa16518
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009:Call winex11.drv.ResetSelectionOwner(00010140,00000000) ret=7fa193e3
>0009:Call kernel32.TlsGetValue(00000000) ret=7f363ae7
>0009:Ret  kernel32.TlsGetValue() retval=7fef7ae8 ret=7f363ae7
>0009:Call kernel32.TlsGetValue(00000000) ret=7f38d89f
>0009:Ret  kernel32.TlsGetValue() retval=7fef7ae8 ret=7f38d89f
>0009:Ret  winex11.drv.ResetSelectionOwner() retval=00000000 ret=7fa193e3
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009: get_thread_input( tid=0009 )
>0009: get_thread_input() = 0 { focus=0x10080, capture=(nil), active=0x10080, for
>eground=(nil), menu_owner=(nil), move_size=(nil), caret=(nil), rect={4,2;4,2} }
>0009:Call winex11.drv.ResetSelectionOwner(00010140,00000001) ret=7fa18034
>0009:Call kernel32.TlsGetValue(00000000) ret=7f363ae7
>0009:Ret  kernel32.TlsGetValue() retval=7fef7ae8 ret=7f363ae7
>0009:Call kernel32.TlsGetValue(00000000) ret=7f38d89f
>0009:Ret  kernel32.TlsGetValue() retval=7fef7ae8 ret=7f38d89f
>0009:Ret  winex11.drv.ResetSelectionOwner() retval=00000000 ret=7fa18034
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009:Call kernel32.94(7fa60300) ret=7fa16518
>0009:Ret  kernel32.94() retval=00000009 ret=7fa16518
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009:Call kernel32.94(7fa60300) ret=7fa16518
>0009:Ret  kernel32.94() retval=00000009 ret=7fa16518
>0009:Call window proc 0x4de039 (hwnd=0x10140,msg=WM_DESTROY,wp=00000000,lp=00000
>000)
>0009:Call user32.GetWindowLongA(00010140,00000000) ret=004de067
>0009:Call kernel32.97(7fa60300) ret=7fa164c8
>0009:Call ntdll.RtlEnterCriticalSection(7fa60300) ret=7b8853d0
>0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7b8853d0
>0009:Ret  kernel32.97() retval=7b9008c0 ret=7fa164c8
>0009:Call kernel32.98(7fa60300) ret=7fa164f0
>0009:Call ntdll.RtlLeaveCriticalSection(7fa60300) ret=7b88557a
>0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7b88557a
>0009:Ret  kernel32.98() retval=00000000 ret=7fa164f0
>0009:Ret  user32.GetWindowLongA() retval=7eebc9f4 ret=004de067
>0009:Call kernel32.GlobalLock(7ff2d842) ret=0050fa88
>0009:Call ntdll.RtlLockHeap(7fea0000) ret=7b84c7dc
>0009:Ret  ntdll.RtlLockHeap() retval=00000001 ret=7b84c7dc
>0009:Call ntdll.RtlUnlockHeap(7fea0000) ret=7b84c875
>0009:Ret  ntdll.RtlUnlockHeap() retval=00000001 ret=7b84c875
>0009:Ret  kernel32.GlobalLock() retval=7ff3ddf0 ret=0050fa88
>0009:Call kernel32.GlobalUnlock(7ff2d842) ret=0050fa92
>0009:Call ntdll.RtlLockHeap(7fea0000) ret=7b84c951
>0009:Ret  ntdll.RtlLockHeap() retval=00000001 ret=7b84c951
>0009:Call ntdll.RtlUnlockHeap(7fea0000) ret=7b84c9ea
>0009:Ret  ntdll.RtlUnlockHeap() retval=00000001 ret=7b84c9ea
>0009:Ret  kernel32.GlobalUnlock() retval=00000001 ret=0050fa92
>0009:Call kernel32.GlobalUnlock(7ff2d842) ret=0050fa92
>0009:Call ntdll.RtlLockHeap(7fea0000) ret=7b84c951
>0009:Ret  ntdll.RtlLockHeap() retval=00000001 ret=7b84c951
>0009:Call ntdll.RtlUnlockHeap(7fea0000) ret=7b84c9ea
>0009:Ret  ntdll.RtlUnlockHeap() retval=00000001 ret=7b84c9ea
>
>... and then it repeats this last block...
>
>
>0009:Ret  kernel32.GlobalUnlock() retval=00000001 ret=0050fa92
>0009:Call kernel32.GlobalUnlock(7ff2d842) ret=0050fa92
>0009:Call ntdll.RtlLockHeap(7fea0000) ret=7b84c951
>0009:Ret  ntdll.RtlLockHeap() retval=00000001 ret=7b84c951
>0009:Call ntdll.RtlUnlockHeap(7fea0000) ret=7b84c9ea
>0009:Ret  ntdll.RtlUnlockHeap() retval=00000001 ret=7b84c9ea
>
>
>... forever.
>
>


-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the wine-bugs mailing list