http://bugs.winehq.org/show_bug.cgi?id=30330
--- Comment #10 from Simon Simon80@gmail.com 2012-04-01 23:05:27 CDT --- Created attachment 39644 --> http://bugs.winehq.org/attachment.cgi?id=39644 0001-Remove-support-for-GL_ARB_sync.patch
I strongly suspect that I'm having the same issue, which started since World of Tanks released version 0.7.2. However, the shader error is a red herring. The real problem is the deadlock: err:ntdll:RtlpWaitForCriticalSection section 0x7bcb0ee4 "../../../dlls/ntdll/loader.c: loader_section" wait timed out in thread 0041, blocked by 0009, retrying (60 sec)
I noticed that Debian's ancient 1.1.34 packages didn't freeze on login, so I used git bisect and found that the problems start with commit 96b150929b0791c7c30ade49d55cedf2d608537e: wined3d: Add an ARB_sync implementation of event queries. I manually reverted this in 1.5.1, tried again, and got as far as logging into the game (previously impossible due to deadlock), at which point I hit another deadlock that only happens after committing to join a battle, which makes this highly undesirable to test on one's real account: err:ntdll:RtlpWaitForCriticalSection section 0x7bcb13e0 "virtual.c: csVirtual" wait timed out in thread 0038, blocked by 0009, retrying (60 sec) err:ntdll:RtlpWaitForCriticalSection section 0x110060 "heap.c: main process heap section" wait timed out in thread 0009, blocked by 0038, retrying (60 sec) err:ntdll:RtlpWaitForCriticalSection section 0x110060 "heap.c: main process heap section" wait timed out in thread 0044, blocked by 0038, retrying (60 sec) err:ntdll:RtlpWaitForCriticalSection section 0x110060 "heap.c: main process heap section" wait timed out in thread 0036, blocked by 0038, retrying (60 sec) err:ntdll:RtlpWaitForCriticalSection section 0x110060 "heap.c: main process heap section" wait timed out in thread 0037, blocked by 0038, retrying (60 sec) err:ntdll:RtlpWaitForCriticalSection section 0x110060 "heap.c: main process heap section" wait timed out in thread 0045, blocked by 0038, retrying (60 sec)
I quickly removed GL_ARB_sync from the extension map altogether and tried again, and found that it worked. I haven't had a chance to test this more than once, but I had several failed attempts before I made this change, which decreases the likelihood that it was a coincidence.
I'm attaching a patch that works around the issue by removing support for GL_ARB_sync.