Crash moving structures on [DEVPREV] Symmetric Dimer: Buried Hydrogen Bond Networks

Started by actiasluna

actiasluna Lv 1

2 crashes in a row, had built structures in Blueprint. Banded sheets, froze some structures, and was moving helix when first crash occurred.

Second crash, I turned off view for symmetric chain and got 1 step further, was able to move first helix but upon trying second, crash.

Both Segmentation Faults, thread 11. (this is current and recorded issue for the monomer puzzles that use blueprint and mutate, along with the Thread 10 "double free" and variations on that theme).

Devprev latest update being run, mac OS, the usual.

Mac crashlogs for both attached

jflat06 Staff Lv 1

By moving, do you mean the move tool? (purple cross)

I believe there's a known bug with that that will cause it to occasionally crash. I can look into it.

actiasluna Lv 1

Ok.. . in Selection Interface, I freeze the helix, leaving the loops unfrozen, then click the end segment of the helix to unfreeze it. I select the helix by double clicking, then Ctrl-drag that end seg.. That is my usual way of doing it in the monomers… so no, it isn't the move tool activated.

LociOiling Lv 1

I think the crash in the attached was similar, but not 100% sure if it was the move tool.

LociOiling Lv 1

A couple of more crashes, one on a wiggle, one during an LWS recipe with just 5 minutes left on the puzzle.

The puzzle actually ran normally for about 14 hours with no crashes. I had procmon running, and collected a PML file of just under 600 KB if anyone's interested.

(Not going to try attaching it, as I suspect the spam filters would kick in. As it was, they renamed "log.v4.lws.txt" to "log.v4.lws_.txt", which seems a little odd.)

In procmon, just moments before the crash, there are suddenly tons of these QueryNameInformationFile calls with a BUFFER OVERFLOW result, like this one:

5:55:28.4750762 PM Foldit.exe 7680 QueryNameInformationFile C:\Windows\System32\oleaut32.dll BUFFER OVERFLOW Name: \W

Many of them hit the same dll multiple times, for example gdi32.dll is queried four times in quick succession. They all have "Name: \W", "Name: \F" and similar valuesin the detail field. It's not clear to me whether this is a symptom of anything, but the timing is suspicious.

The Windows event reported the problem occurring in C:\WINDOWS\AppPatch\AcLayers.DLL at 2017-05-04T22:55:29.286067200Z:

Faulting application name: Foldit.exe, version: 0.0.0.0, time stamp: 0x579aa6ee
Faulting module name: AcLayers.DLL, version: 10.0.14393.953, time stamp: 0x58ba5d8a
Exception code: 0xc0000374
Fault offset: 0x00021f87
Faulting process id: 0x1e00
Faulting application start time: 0x01d2c4abad1f33d7
Faulting application path: C:\Foldit\foldit1\Foldit.exe
Faulting module path: C:\WINDOWS\AppPatch\AcLayers.DLL
Report Id: 19b50e40-b6f3-4b90-b41e-a440e248b91a
Faulting package full name:
Faulting package-relative application ID:

LociOiling Lv 1

I did a little more digging into the crash above. In procmon, I see a new thread start. The events for the new thread are attached as a csv file. The first thing the new thread does is write "***** STARTING THREAD ActionLocalMinimize" to log.txt. This is the last thing written to log.txt.

The thread reads the .sym file. It deletes (?) an .und file. Over a second goes by, and the thread reads AcLayers.dll. Then all the QueryNameInformationFile calls happen. The BUFFER_OVERFLOWs are just a red herring, each one is matched with a SUCCESS later. No idea why it queries foldit.exe seven times with BUFFER_OVERFLOW, followed by seven times with SUCCESS. Maybe there are seven different attributes wanted. The BUFFER_OVERFLOW part is just to get the buffer size needed, which is then used on the calls that end in SUCCESS.

Shortly after all the queries complete another thread starts a process for WerFault.exe. So presumably all the QueryNameInformationFile calls are just part of Windows error reporting. Perhaps the actual error occurs after the .und file activity, triggering the AcLayers.dll action. I haven't been able to find anything online about what AcLayers.dll does, so the trail has gone cold for the moment.

actiasluna Lv 1

Reproduced the crash. Folded up and blueprinted the pattern, then froze the helices one at a time. Moved both of them successfully for a little while but finally when snugging up the core the last drag sequence (double-click unfrozen end segment of helix then left click-hold-and-drag) crashed immediately. Logs (mac and Foldit) and script log attached.

Last thing that happened from foldit log:

delta_score: 0
Playing sound: 4
***** STARTING THREAD ActionLocalMinimizePull

Excerpt of mac crashlog:

Thread 10:
0 game_library.dylib 0x02fc41e2 std::__1::enable_if<__is_forward_iterator<char*>::value, void>::type std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__init<char*>(char*, char*) + 98 1 game_library.dylib 0x02fd015c std::__1::basic_stringbuf<char, std::__1::char_traits, std::__1::allocator >::str() const + 108 2 game_library.dylib 0x007dee46 basic::basic_otstream<char, std::__1::char_traits >::basic_tstringbuf<char, std::__1::char_traits >::sync() + 44 3 game_library.dylib 0x0321f3a0 std::__1::basic_ostream<char, std::__1::char_traits >::flush() + 64 4 game_library.dylib 0x00b09e2b core::conformation::symmetry::SymmetricConformation::replace_residue(unsigned long, core::conformation::Residue const&, bool) + 185 5 game_library.dylib 0x00c23c32 core::pose::Pose::replace_residue(unsigned long, core::conformation::Residue const&, bool) + 44 6 game_library.dylib 0x02fa15fb interactive::util::copy_backbone(core::pose::Pose&, core::pose::Pose const&, unsigned long, unsigned long, unsigned long) + 682 7 game_library.dylib 0x02c8165c interactive::application::actions::cart::PoseLoopThreadActionCart::update_centroid_pose(boost::shared_ptr) + 364 8 game_library.dylib 0x02c72a4a interactive::application::actions::cart::ActionCartPull::thread_body_loop_unlocked(core::pose::Pose&) + 290 9 game_library.dylib 0x02c7fa01 interactive::application::actions::cart::PoseLoopThreadActionCart::on_thread_run() + 4669 10 game_library.dylib 0x02dc0f66 boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, interactive::application::shared::ToolActionThreaded>, boost::_bi::list1<boost::_bi::value<interactive::application::shared::ToolActionThreaded*> > >, void>::invoke(boost::detail::function::function_buffer&) + 32 11 game_library.dylib 0x02f7c103 boost::function0::operator()() const + 35 12 game_library.dylib 0x02f7a923 interactive::util::Thread::operator()() + 45 13 game_library.dylib 0x02f7aae5 interactive::util::Thread::thread_entry_func() + 31 14 game_library.dylib 0x02f7a741 interactive::util::Thread::pthread_startup_helper(void*) + 17 15 libsystem_pthread.dylib 0xa1734073 _pthread_body + 184 16 libsystem_pthread.dylib 0xa1733fbb _pthread_start + 243 17 libsystem_pthread.dylib 0xa1733876 thread_start + 34

Thread 0 crashed with X86 Thread State (32-bit):
eax: 0x1fbec000 ebx: 0x70b00000 ecx: 0x20c45f30 edx: 0x00000000
edi: 0x0c705221 esi: 0x7c1ab2f1 ebp: 0xbff30a68 esp: 0xbff30a50
ss: 0x00000023 efl: 0x00010202 eip: 0x02fc41e2 cs: 0x0000001b
ds: 0x00000023 es: 0x00000023 fs: 0x00000000 gs: 0x0000000f
cr2: 0x70b00000

Logical CPU: 2
Error Code: 0x00000004
Trap Number: 14

System log from around the time of the crash: (look at italicized text)

May 6 09:19:17 Kathleens-iMac com.apple.xpc.launchd[1] (com.apple.imfoundation.IMRemoteURLConnectionAgent): Unknown key for integer: _DirtyJetsamMemoryLimit
May 6 09:26:37 Kathleens-iMac com.apple.xpc.launchd[1] (com.apple.quicklook[1223]): Endpoint has been activated through legacy launch(3) APIs. Please switch to XPC or bootstrap_check_in(): com.apple.quicklook May 6 09:26:47 Kathleens-iMac com.apple.xpc.launchd[1] (edu.washington.foldit.3412[1209]): Service exited due to signal: Segmentation fault: 11 sent by exc handler[0] May 6 09:26:47 Kathleens-iMac com.apple.xpc.launchd[1] (com.apple.ReportCrash[1224]): Endpoint has been activated through legacy launch(3) APIs. Please switch to XPC or bootstrap_check_in(): com.apple.ReportCrash
May 6 09:27:08 Kathleens-iMac com.apple.xpc.launchd[1] (com.apple.imfoundation.IMRemoteURLConnectionAgent): Unknown key for integer: _DirtyJetsamMemoryLimit
May 6 09:27:09 — last message repeated 1 time —
May 6 09:27:09 Kathleens-iMac com.apple.appkit.xpc.openAndSavePanelService[1245]: assertion failed: 16E195: libxpc.dylib + 74307 [ABC45890-DA23-3A4A-B50B-1384BD4CBBDF]: 0x89
May 6 09:27:31 Kathleens-iMac com.apple.xpc.launchd[1] (com.apple.imfoundation.IMRemoteURLConnectionAgent): Unknown key for integer: _DirtyJetsamMemoryLimit
May 6 09:27:51 Kathleens-iMac DocumentPopoverViewService[1254]: BUG in libdispatch client: kevent[EVFILT_MACHPORT] monitored resource vanished before the source cancel handler was invoked
May 6 09:28:42 Kathleens-iMac syslogd[49]: ASL Sender Statistics
May 6 09:28:53 Kathleens-iMac LogViewer[1257]: assertion failed: 16E195: libxpc.dylib + 74307 [ABC45890-DA23-3A4A-B50B-1384BD4CBBDF]: 0x89
May 6 09:29:11 Kathleens-iMac LogViewer[1257]: BUG in libdispatch client: kevent[EVFILT_MACHPORT] monitored resource vanished before the source cancel handler was invoked