Adding a band during do_global_wiggle_all sometimes causes a hang

Case number:845829-992087
Topic:Crash/Hang
Opened by:Timo van der Laan
Status:Open
Type:Bug
Opened on:Sunday, March 11, 2012 - 13:30
Last modified:Saturday, March 17, 2012 - 11:45

I routinely use adding a band to stop scripts in a decent state. (Modified the scripts to do that)

However sometimes this causes a hang in the game client.

(Sun, 03/11/2012 - 13:30  |  6 comments)


infjamc's picture
User offline. Last seen 2 years 32 weeks ago. Offline
Joined: 02/20/2009
Groups: Contenders

And on a related note... removing bands while a global wiggle is in the process of being stopped may also cause the same result.

spmm's picture
User offline. Last seen 28 weeks 9 hours ago. Offline
Joined: 08/05/2010
Groups: Void Crushers

agreed causes problems with some scripts, not all and not when just wiggling

spdenne's picture
User offline. Last seen 28 weeks 1 day ago. Offline
Joined: 10/01/2011
Groups: Void Crushers

I just got my client non-responsive, adding a band. Three active threads using roughly 10 million, 5 million, and half a million cycles per second respectively:

ntoskrnl.exe!memset+0x64a
ntoskrnl.exe!KeWaitForMultipleObjects+0xd52
ntoskrnl.exe!KeWaitForMutexObject+0x19f
ntoskrnl.exe!__misaligned_access+0xba4
ntoskrnl.exe!__misaligned_access+0x1821
ntoskrnl.exe!KeWaitForMultipleObjects+0xf5d
ntoskrnl.exe!KeWaitForMultipleObjects+0x26a
ntoskrnl.exe!NtWaitForSingleObject+0x40f
ntoskrnl.exe!IoReportTargetDeviceChange+0xe6d
ntoskrnl.exe!KeSynchronizeExecution+0x3a43
wow64cpu.dll!TurboDispatchJumpAddressEnd+0x6c0
wow64cpu.dll!TurboDispatchJumpAddressEnd+0xf5
wow64.dll!Wow64SystemServiceEx+0x1ce
wow64.dll!Wow64LdrpInitialize+0x429
ntdll.dll!RtlIsDosDeviceName_U+0x24c87
ntdll.dll!LdrInitializeThunk+0xe
ntdll.dll!ZwWaitForMultipleObjects+0x15
kernel32.dll!WaitForMultipleObjectsEx+0x8e
kernel32.dll!WaitForMultipleObjects+0x18
dsound.dll+0x4280
dsound.dll+0x4fc3
kernel32.dll!BaseThreadInitThunk+0x12
ntdll.dll!RtlInitializeExceptionChain+0x63
ntdll.dll!RtlInitializeExceptionChain+0x36

ntoskrnl.exe!memset+0x64a
ntoskrnl.exe!KeWaitForMultipleObjects+0xd52
ntoskrnl.exe!KeWaitForMutexObject+0x19f
ntoskrnl.exe!__misaligned_access+0xba4
ntoskrnl.exe!__misaligned_access+0x1821
ntoskrnl.exe!KeWaitForMultipleObjects+0xf5d
ntoskrnl.exe!KeWaitForMultipleObjects+0x26a
ntoskrnl.exe!NtWaitForSingleObject+0x40f
ntoskrnl.exe!IoReportTargetDeviceChange+0xe6d
ntoskrnl.exe!KeSynchronizeExecution+0x3a43
wow64cpu.dll!TurboDispatchJumpAddressEnd+0x6c0
wow64cpu.dll!TurboDispatchJumpAddressEnd+0xf5
wow64.dll!Wow64SystemServiceEx+0x1ce
wow64.dll!Wow64LdrpInitialize+0x429
ntdll.dll!RtlIsDosDeviceName_U+0x24c87
ntdll.dll!LdrInitializeThunk+0xe
ntdll.dll!ZwWaitForMultipleObjects+0x15
kernel32.dll!BaseThreadInitThunk+0x12
ntdll.dll!RtlInitializeExceptionChain+0x63
ntdll.dll!RtlInitializeExceptionChain+0x36

ntoskrnl.exe!memset+0x64a
ntoskrnl.exe!KeWaitForMultipleObjects+0xd52
ntoskrnl.exe!KeWaitForMutexObject+0x19f
ntoskrnl.exe!__misaligned_access+0xba4
ntoskrnl.exe!__misaligned_access+0x1821
ntoskrnl.exe!KeWaitForMultipleObjects+0xf5d
ntoskrnl.exe!KeWaitForMultipleObjects+0x26a
ntoskrnl.exe!NtWaitForSingleObject+0x40f
ntoskrnl.exe!IoReportTargetDeviceChange+0xe6d
ntoskrnl.exe!KeSynchronizeExecution+0x3a43
wow64cpu.dll!TurboDispatchJumpAddressEnd+0x6c0
wow64cpu.dll!TurboDispatchJumpAddressEnd+0xf5
wow64.dll!Wow64SystemServiceEx+0x1ce
wow64.dll!Wow64LdrpInitialize+0x429
ntdll.dll!RtlIsDosDeviceName_U+0x24c87
ntdll.dll!LdrInitializeThunk+0xe
ntdll.dll!ZwWaitForMultipleObjects+0x15
kernel32.dll!WaitForMultipleObjectsEx+0x8e
kernel32.dll!WaitForMultipleObjects+0x18
dsound.dll+0x12da
dsound.dll+0x2e13
dsound.dll+0x2d94
dsound.dll+0x29ae
kernel32.dll!BaseThreadInitThunk+0x12
ntdll.dll!RtlInitializeExceptionChain+0x63
ntdll.dll!RtlInitializeExceptionChain+0x36

spdenne's picture
User offline. Last seen 28 weeks 1 day ago. Offline
Joined: 10/01/2011
Groups: Void Crushers

My foldit app just hung again, with the same three threads using CPU, in dsound.dll+0x4f9d, WINMM.dll!timeEndPeriod+0x3f5, and dsound.dll!DirectSoundCreate+0x26664, and this time with a fourth thread at game_library.dll!library_main+0x261380

The circumstances were slightly different: this time I clicked on the cancel button to stop a script, while it s doing do_global_wiggle_backbone. The cursor has changed to the wait cursor, and CPU usage is really low (0.09, 0.04, and two <0.01%)

brow42's picture
User offline. Last seen 3 weeks 1 day ago. Offline
Joined: 09/19/2011
Groups: None

I've had many hangs, as spdenne says, almost always when I canceled a wiggle (no bands involved). First really noticed it during the recent Flu design puzzle after patching to the then-new main (up to 4 times in a day). Several of the hangs were during precise local wiggle, which is a really simple script. I couldn't see anything interesting in the log file.

Joined: 06/17/2010

Instead of updating dev/main just install 2 instances of foldit: one dev and second main. To copy solution between clients just share it to yourself.
I`m using windows dev and main and linux main on vm - not have "hanging" troubles.

Sitemap

Developed by: UW Center for Game Science, UW Institute for Protein Design, Northeastern University, Vanderbilt University Meiler Lab, UC Davis
Supported by: DARPA, NSF, NIH, HHMI, Amazon, Microsoft, Adobe, RosettaCommons