[Bug 31246] New: QQMusic deadlock on exit with buitin msvcr80

wine-bugs at winehq.org wine-bugs at winehq.org
Wed Jul 18 16:12:13 CDT 2012


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

             Bug #: 31246
           Summary: QQMusic deadlock on exit with buitin msvcr80
           Product: Wine
           Version: 1.5.9
          Platform: x86
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: -unknown
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: fracting at gmail.com
    Classification: Unclassified


1. Download QQMusic installer
http://dl_dir.qq.com/music/clntupate/QQMusic2011.exe

2. Install with Wine
wine-1.5.9-33-gb20a1f5

3. Workaround Bug 27109 by `winetricks vcrun6`

4. Workaround Bug 30512 by `winetricks vcrun2008` + native alt80.dll

5. Workaround Bug 27304 by `winetricks gdiplus`.

6. Set msvcr80 to builtin

7. 
$ cd "~/.wine/drive_c/Program Files/Tencent/QQMusic"
$ wine QQMusic.exe 

8. Wait for some seconds

9. Right click the system tray icon of QQMusic, then "Exit"/"退出" in the menu.
If you can't read Chinese, just click the last item ;-) (With a red power key
icon)

Expect Result:
QQ Music should exit

Actual Result:
Deadlock:
--- snip ---
0009:err:ntdll:RtlpWaitForCriticalSection section 0x7bcd0944 "loader.c:
loader_section" wait timed out in thread 0009, blocked by 0040, retrying (60
sec)
002b:err:ntdll:RtlpWaitForCriticalSection section 0x7bcd0944 "loader.c:
loader_section" wait timed out in thread 002b, blocked by 0040, retrying (60
sec)
002e:err:ntdll:RtlpWaitForCriticalSection section 0x7bcd0944 "loader.c:
loader_section" wait timed out in thread 002e, blocked by 0040, retrying (60
sec)
0028:err:ntdll:RtlpWaitForCriticalSection section 0x7bcd0944 "loader.c:
loader_section" wait timed out in thread 0028, blocked by 0040, retrying (60
sec)
003c:err:ntdll:RtlpWaitForCriticalSection section 0x7bcd0944 "loader.c:
loader_section" wait timed out in thread 003c, blocked by 0040, retrying (60
sec)

--- snip ---

How reproducible:
>50%, depends on how long you wait after QQMusic starts. If you click the "Exit/退出" item very early then there maybe no deadlock, for me it seems waiting for 5 seconds before clicking "exit/退出" is enough to get the deadlock.
Never get a deadlock with native msvcr80.

Additional info:
1. I can reproduce the deadlock when +relay trace is enable.
2. With +msvcrt trace, I found the only log regarding thread 0040 is:
--- snip ---
0040:trace:msvcrt:DllMain (0x7e030000, DLL_THREAD_ATTACH, (nil)) pid(8),
tid(40), tls(0)
0040:trace:msvcrt:_endthread (void)
--- snip ---

will attach a +msvcrt,+tid log

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
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