2013-06-05

Finder deadlock

Some time ago I've had this beautiful Finder hang:
Sampling process 76934 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling Finder (pid 76934) every 1 millisecond
Process:         Finder [76934]
Path:            /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder
Load Address:    0x1009b9000
Identifier:      com.apple.finder
Version:         10.8.2 (10.8.2)
Build Info:      Finder_FE-808002004000000~2
Code Type:       X86-64 (Native)
Parent Process:  launchd [143]

Date/Time:       2013-05-02 14:27:49.667 +0200
OS Version:      Mac OS X 10.8.3 (12D78)
Report Version:  7

Call graph:
    2528 Thread_16076403   DispatchQueue_1: com.apple.main-thread  (serial)
    + 2528 start  (in libdyld.dylib) + 1  [0x7fff82e8b7e1]
    +   2528 ???  (in Finder)  load address 0x1009b9000 + 0x5b86  [0x1009beb86]
    +     2528 NSApplicationMain  (in AppKit) + 869  [0x7fff8ac0bc06]
    +       2528 -[NSApplication run]  (in AppKit) + 517  [0x7fff8ac671d3]
    +         2528 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]  (in AppKit) + 128  [0x7fff8ac6fe22]
    +           2528 _DPSNextEvent  (in AppKit) + 685  [0x7fff8ac70563]
    +             2528 BlockUntilNextEventMatchingListInMode  (in HIToolbox) + 62  [0x7fff8bf90ae3]
    +               2528 ReceiveNextEventCommon  (in HIToolbox) + 356  [0x7fff8bf90c52]
    +                 2528 RunCurrentEventLoopInMode  (in HIToolbox) + 209  [0x7fff8bf90eb4]
    +                   2528 CFRunLoopRunSpecific  (in CoreFoundation) + 290  [0x7fff84ce40e2]
    +                     2037 __CFRunLoopRun  (in CoreFoundation) + 1078  [0x7fff84ce4916]
    +                     ! 2037 __CFRunLoopServiceMachPort  (in CoreFoundation) + 195  [0x7fff84cdf233]
    +                     !   2037 mach_msg  (in libsystem_kernel.dylib) + 70  [0x7fff868fac42]
    +                     !     2037 mach_msg_trap  (in libsystem_kernel.dylib) + 10  [0x7fff868fb686]
    +                     444 __CFRunLoopRun  (in CoreFoundation) + 789  [0x7fff84ce47f5]
    +                     ! 444 __CFRunLoopDoSources0  (in CoreFoundation) + 107  [0x7fff84cc13cb]
    +                     !   444 CFSetApplyFunction  (in CoreFoundation) + 158  [0x7fff84cc171e]
    +                     !     368 CFBasicHashApply  (in CoreFoundation) + 128  [0x7fff84cc17b0]
    +                     !     : 361 __CFSetApplyFunction_block_invoke_0  (in CoreFoundation) + 18  [0x7fff84dac9c2]
    +                     !     : | 361 __CFRunLoopCollectSources0  (in CoreFoundation) + 21,27,...  [0x7fff84cc1935,0x7fff84cc193b,...]
    +                     !     : 7 __CFSetApplyFunction_block_invoke_0  (in CoreFoundation) + 0,1,...  [0x7fff84dac9b0,0x7fff84dac9b1,...]
    +                     !     48 CFBasicHashApply  (in CoreFoundation) + 79  [0x7fff84cc177f]
    +                     !     : 48 CFBasicHashGetBucket  (in CoreFoundation) + 29,52,...  [0x7fff84cc17ed,0x7fff84cc1804,...]
    +                     !     28 CFBasicHashApply  (in CoreFoundation) + 51,84,...  [0x7fff84cc1763,0x7fff84cc1784,...]
    +                     19 __CFRunLoopRun  (in CoreFoundation) + 1529  [0x7fff84ce4ad9]
    +                     ! 10 __CFRunLoopDoTimer  (in CoreFoundation) + 1285  [0x7fff84cff5f5]
    +                     ! : 9 __CFRepositionTimerInMode  (in CoreFoundation) + 227  [0x7fff84cfa803]
    +                     ! : | 9 mk_timer_arm  (in libsystem_kernel.dylib) + 10  [0x7fff868fb7b2]
    +                     ! : 1 __CFRepositionTimerInMode  (in CoreFoundation) + 105  [0x7fff84cfa789]
    +                     ! :   1 _CFArrayReplaceValues  (in CoreFoundation) + 23  [0x7fff84cbdea7]
    +                     ! 5 __CFRunLoopDoTimer  (in CoreFoundation) + 557  [0x7fff84cff31d]
    +                     ! : 5 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__  (in CoreFoundation) + 20  [0x7fff84cff804]
    +                     ! :   2 __NSFireTimer  (in Foundation) + 96  [0x7fff87aacaf3]
    +                     ! :   | 1 -[IKAnimationManager onAnimationTimer]  (in ImageKit) + 16  [0x7fff8ebf4172]
    +                     ! :   | 1 -[IKAnimationManager removeAnimationsOutOfDate]  (in ImageKit) + 119  [0x7fff8ebf388f]
    +                     ! :   1 __NSFireTimer  (in Foundation) + 32  [0x7fff87aacab3]
    +                     ! :   | 1 objc_memmove_collectable  (in libobjc.A.dylib) + 0  [0x7fff861e6c74]
    +                     ! :   1 __NSFireTimer  (in Foundation) + 80  [0x7fff87aacae3]
    +                     ! :   | 1 -[NSObject retain]  (in libobjc.A.dylib) + 70  [0x7fff861fe626]
    +                     ! :   1 __NSFireTimer  (in Foundation) + 115  [0x7fff87aacb06]
    +                     ! :     1 -[NSObject release]  (in libobjc.A.dylib) + 17  [0x7fff861fe6f1]
    +                     ! :       1 _objc_rootReleaseWasZero  (in libobjc.A.dylib) + 126  [0x7fff861e5f5b]
    +                     ! :         1 objc::DenseMap, objc::DenseMapInfo >::find(objc_object* const&)  (in libobjc.A.dylib) + 35  [0x7fff861e6005]
    +                     ! :           1 objc::DenseMap, objc::DenseMapInfo >::LookupBucketFor(objc_object* const&, std::__1::pair*&) const  (in libobjc.A.dylib) + 206  [0x7fff861e5e12]
    +                     ! 2 __CFRunLoopDoTimer  (in CoreFoundation) + 978  [0x7fff84cff4c2]
    +                     ! : 2 CFSetGetValues  (in CoreFoundation) + 413  [0x7fff84cf85bd]
    +                     ! :   1 CFBasicHashGetElements  (in CoreFoundation) + 128  [0x7fff84cc5330]
    +                     ! :   | 1 CFBasicHashGetBucket  (in CoreFoundation) + 25  [0x7fff84cc17e9]
    +                     ! :   1 CFBasicHashGetElements  (in CoreFoundation) + 1  [0x7fff84cc52b1]
    +                     ! 1 __CFRunLoopDoTimer  (in CoreFoundation) + 649  [0x7fff84cff379]
    +                     ! : 1 pthread_mutex_lock  (in libsystem_c.dylib) + 270  [0x7fff8a931cf3]
    +                     ! :   1 pthread_threadid_np  (in libsystem_c.dylib) + 6  [0x7fff8a92d1ee]
    +                     ! 1 __CFRunLoopDoTimer  (in CoreFoundation) + 1400  [0x7fff84cff668]
    +                     12 __CFRunLoopRun  (in CoreFoundation) + 929  [0x7fff84ce4881]
    +                     ! 10 __CFRunLoopDoObservers  (in CoreFoundation) + 369  [0x7fff84d09381]
    +                     ! : 10 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__  (in CoreFoundation) + 23  [0x7fff84d09417]
    +                     ! :   6 FlushAllBuffers(__CFRunLoopObserver*, unsigned long, void*)  (in HIToolbox) + 229  [0x7fff8bf970b6]
    +                     ! :   | 3 FlushWindowObject(WindowData*, void**, unsigned char)  (in HIToolbox) + 926  [0x7fff8bf8f437]
    +                     ! :   | + 3 CGSFlushWindowContentRegion  (in CoreGraphics) + 98  [0x7fff841f8049]
    +                     ! :   | +   2 CGSFlushWindowRegion  (in CoreGraphics) + 47  [0x7fff841f80c8]
    +                     ! :   | +   ! 2 CGSGetWindowDirtyShapeRegion  (in CoreGraphics) + 92  [0x7fff841f8269]
    +                     ! :   | +   !   2 region_create_with_shape  (in CoreGraphics) + 56  [0x7fff841d34f9]
    +                     ! :   | +   !     2 CGTypeCreateInstance  (in CoreGraphics) + 79  [0x7fff841d3616]
    +                     ! :   | +   !       2 _CFRuntimeCreateInstance  (in CoreFoundation) + 275,85  [0x7fff84cb2dd3,0x7fff84cb2d15]
    +                     ! :   | +   1 CGSFlushWindowRegion  (in CoreGraphics) + 142  [0x7fff841f8127]
    +                     ! :   | +     1 CFRelease  (in CoreFoundation) + 1571  [0x7fff84cb8803]
    +                     ! :   | +       1 szone_free  (in libsystem_c.dylib) + 570  [0x7fff8a94797e]
    +                     ! :   | 2 FlushWindowObject(WindowData*, void**, unsigned char)  (in HIToolbox) + 859  [0x7fff8bf8f3f4]
    +                     ! :   | + 1 GetWindowProperty  (in HIToolbox) + 56  [0x7fff8bf8f8d5]
    +                     ! :   | + ! 1 GetWindowData(OpaqueWindowPtr*)  (in HIToolbox) + 24  [0x7fff8bf7c1a2]
    +                     ! :   | + !   1 HIObject::IsRefValid(void*)  (in HIToolbox) + 32  [0x7fff8bf7942a]
    +                     ! :   | + !     1 HLTBSearchRefTable  (in HIToolbox) + 20  [0x7fff8bf69397]
    +                     ! :   | + 1 GetWindowPropertyCore(WindowData*, unsigned int, unsigned int, unsigned long, unsigned long*, void*)  (in HIToolbox) + 51  [0x7fff8bf8f4d7]
    +                     ! :   | +   1 HIGetCollectionItem  (in HIToolbox) + 24  [0x7fff8bfbe52e]
    +                     ! :   | +     1 GetCollectionItem  (in CarbonCore) + 31  [0x7fff884cd069]
    +                     ! :   | +       1 FindItem(OpaqueCollection*, unsigned int, int, unsigned long*)  (in CarbonCore) + 114  [0x7fff884cd10e]
    +                     ! :   | 1 FlushWindowObject(WindowData*, void**, unsigned char)  (in HIToolbox) + 75  [0x7fff8bf8f0e4]
    +                     ! :   |   1 GetWindowPropertyCore(WindowData*, unsigned int, unsigned int, unsigned long, unsigned long*, void*)  (in HIToolbox) + 51  [0x7fff8bf8f4d7]
    +                     ! :   |     1 HIGetCollectionItem  (in HIToolbox) + 24  [0x7fff8bfbe52e]
    +                     ! :   |       1 GetCollectionItem  (in CarbonCore) + 31  [0x7fff884cd069]
    +                     ! :   |         1 FindItem(OpaqueCollection*, unsigned int, int, unsigned long*)  (in CarbonCore) + 82  [0x7fff884cd0ee]
    +                     ! :   4 FlushAllBuffers(__CFRunLoopObserver*, unsigned long, void*)  (in HIToolbox) + 562  [0x7fff8bf97203]
    +                     ! :     3 CFRunLoopTimerSetNextFireDate  (in CoreFoundation) + 533  [0x7fff84cfc5f5]
    +                     ! :     + 2 __CFRepositionTimerInMode  (in CoreFoundation) + 227  [0x7fff84cfa803]
    +                     ! :     + ! 2 mk_timer_arm  (in libsystem_kernel.dylib) + 10  [0x7fff868fb7b2]
    +                     ! :     + 1 __CFRepositionTimerInMode  (in CoreFoundation) + 105  [0x7fff84cfa789]
    +                     ! :     +   1 _CFArrayReplaceValues  (in CoreFoundation) + 23  [0x7fff84cbdea7]
    +                     ! :     1 CFRunLoopTimerSetNextFireDate  (in CoreFoundation) + 353  [0x7fff84cfc541]
    +                     ! :       1 __CFRunLoopFindMode  (in CoreFoundation) + 216  [0x7fff84ce4268]
    +                     ! :         1 CFSetGetValue  (in CoreFoundation) + 102  [0x7fff84cd9b16]
    +                     ! :           1 CFBasicHashFindBucket  (in CoreFoundation) + 1743  [0x7fff84cb12ef]
    +                     ! :             1 __CFSetStandardHashKey  (in CoreFoundation) + 0  [0x7fff84cc1330]
    +                     ! 1 __CFRunLoopDoObservers  (in CoreFoundation) + 87  [0x7fff84d09267]
    +                     ! : 1 -[__NSArrayM count]  (in CoreFoundation) + 0  [0x7fff84cdf7d0]
    +                     ! 1 __CFRunLoopDoObservers  (in CoreFoundation) + 213  [0x7fff84d092e5]
    +                     5 __CFRunLoopRun  (in CoreFoundation) + 728  [0x7fff84ce47b8]
    +                     ! 4 __CFRunLoopDoObservers  (in CoreFoundation) + 369  [0x7fff84d09381]
    +                     ! : 4 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__  (in CoreFoundation) + 23  [0x7fff84d09417]
    +                     ! :   2 __NSConnectionDoQueuedWork  (in Foundation) + 82  [0x7fff87aeddff]
    +                     ! :   | 1 _objc_rootAutorelease2(objc_object*)  (in libobjc.A.dylib) + 28  [0x7fff861fdbbd]
    +                     ! :   | 1 lastConversationInfo  (in Foundation) + 128  [0x7fff87ae6013]
    +                     ! :   |   1 -[NSObject retain]  (in libobjc.A.dylib) + 110  [0x7fff861fe64e]
    +                     ! :   |     1 objc::DenseMap, objc::DenseMapInfo >::FindAndConstruct(objc_object* const&)  (in libobjc.A.dylib) + 32  [0x7fff861e5d16]
    +                     ! :   |       1 objc::DenseMap, objc::DenseMapInfo >::LookupBucketFor(objc_object* const&, std::__1::pair*&) const  (in libobjc.A.dylib) + 58  [0x7fff861e5d7e]
    +                     ! :   1 __NSConnectionDoQueuedWork  (in Foundation) + 510  [0x7fff87aedfab]
    +                     ! :   | 1 _CFAutoreleasePoolPop  (in CoreFoundation) + 34  [0x7fff84cdfd72]
    +                     ! :   |   1 (anonymous namespace)::AutoreleasePoolPage::pop(void*)  (in libobjc.A.dylib) + 527  [0x7fff861e726f]
    +                     ! :   1 __NSConnectionDoQueuedWork  (in Foundation) + 611  [0x7fff87aee010]
    +                     ! :     1 objc_msgSend_fixedup  (in libobjc.A.dylib) + 0  [0x7fff861e340c]
    +                     ! 1 __CFRunLoopDoObservers  (in CoreFoundation) + 414  [0x7fff84d093ae]
    +                     3 __CFRunLoopRun  (in CoreFoundation) + 1400  [0x7fff84ce4a58]
    +                     ! 3 CFArrayAppendValue  (in CoreFoundation) + 91  [0x7fff84cbde6b]
    +                     !   3 -[__NSArrayM insertObject:atIndex:]  (in CoreFoundation) + 334  [0x7fff84cf32ae]
    +                     2 __CFRunLoopRun  (in CoreFoundation) + 1545  [0x7fff84ce4ae9]
    +                     ! 2 CFRelease  (in CoreFoundation) + 170  [0x7fff84cb828a]
    +                     !   1 -[__NSArrayM dealloc]  (in CoreFoundation) + 114  [0x7fff84cdf5e2]
    +                     !   : 1 -[__NSArrayM countByEnumeratingWithState:objects:count:]  (in CoreFoundation) + 6  [0x7fff84cdf3a6]
    +                     !   1 objc_msgSend_vtable14  (in libobjc.A.dylib) + 0  [0x7fff861e4740]
    +                     2 __CFRunLoopRun  (in CoreFoundation) + 1983,1346  [0x7fff84ce4c9f,0x7fff84ce4a22]
    +                     1 __CFRunLoopRun  (in CoreFoundation) + 891  [0x7fff84ce485b]
    +                     ! 1 __CFRunLoopServiceMachPort  (in CoreFoundation) + 195  [0x7fff84cdf233]
    +                     !   1 mach_msg  (in libsystem_kernel.dylib) + 1  [0x7fff868fabfd]
    +                     1 __CFRunLoopRun  (in CoreFoundation) + 1090  [0x7fff84ce4922]
    +                     ! 1 pthread_mutex_lock  (in libsystem_c.dylib) + 0  [0x7fff8a931be5]
    +                     1 __CFRunLoopRun  (in CoreFoundation) + 1126  [0x7fff84ce4946]
    +                     ! 1 mach_port_extract_member  (in libsystem_kernel.dylib) + 31  [0x7fff868fc68f]
    +                     !   1 _kernelrpc_mach_port_extract_member_trap  (in libsystem_kernel.dylib) + 10  [0x7fff868fb64a]
    +                     1 __CFRunLoopRun  (in CoreFoundation) + 1386  [0x7fff84ce4a4a]
    +                       1 CFArrayCreateMutable  (in CoreFoundation) + 192  [0x7fff84cbb880]
    +                         1 -[__NSPlaceholderArray initWithCapacity:]  (in CoreFoundation) + 116  [0x7fff84cf2fb4]
    +                           1 +[__NSArrayM __new:::::]  (in CoreFoundation) + 80  [0x7fff84dc7760]
    +                             1 __CFAllocateObject2  (in CoreFoundation) + 18  [0x7fff84cf3052]
    +                               1 class_createInstance  (in libobjc.A.dylib) + 102  [0x7fff861e5bc8]
    +                                 1 calloc  (in libsystem_c.dylib) + 48  [0x7fff8a945c54]
    +                                   1 malloc_zone_calloc  (in libsystem_c.dylib) + 79  [0x7fff8a9454ae]
    +                                     1 szone_calloc  (in libsystem_c.dylib) + 1  [0x7fff8a9476cb]
    2528 Thread_16076408   DispatchQueue_2: com.apple.libdispatch-manager  (serial)
    + 2528 _dispatch_mgr_thread  (in libdispatch.dylib) + 54  [0x7fff83b319ee]
    +   2528 _dispatch_mgr_invoke  (in libdispatch.dylib) + 883  [0x7fff83b31dea]
    +     2528 kevent  (in libsystem_kernel.dylib) + 10  [0x7fff868fdd16]
    2528 Thread_16080188: com.apple.CFSocket.private
    + 2528 thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
    +   2528 _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
    +     2528 __CFSocketManager  (in CoreFoundation) + 1302  [0x7fff84d23f46]
    +       2528 __select  (in libsystem_kernel.dylib) + 10  [0x7fff868fd322]
    2528 Thread_16868364: com.apple.CoreAnimation.render-server
    + 2528 thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
    +   2528 _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
    +     2528 thread_fun  (in QuartzCore) + 25  [0x7fff85136dc6]
    +       2528 CA::Render::Server::server_thread(void*)  (in QuartzCore) + 403  [0x7fff850b217b]
    +         2528 mach_msg  (in libsystem_kernel.dylib) + 70  [0x7fff868fac42]
    +           2528 mach_msg_trap  (in libsystem_kernel.dylib) + 10  [0x7fff868fb686]
    2528 Thread_21120624: com.apple.NSURLConnectionLoader
    + 2528 thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
    +   2528 _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
    +     2528 __NSThread__main__  (in Foundation) + 1345  [0x7fff87acecd2]
    +       2528 +[NSURLConnection(Loader) _resourceLoadLoop:]  (in Foundation) + 356  [0x7fff87a70b66]
    +         2528 CFRunLoopRunSpecific  (in CoreFoundation) + 290  [0x7fff84ce40e2]
    +           2528 __CFRunLoopRun  (in CoreFoundation) + 1078  [0x7fff84ce4916]
    +             2528 __CFRunLoopServiceMachPort  (in CoreFoundation) + 195  [0x7fff84cdf233]
    +               2528 mach_msg  (in libsystem_kernel.dylib) + 70  [0x7fff868fac42]
    +                 2528 mach_msg_trap  (in libsystem_kernel.dylib) + 10  [0x7fff868fb686]
    2528 Thread_21120627: JavaScriptCore::BlockFree
    + 2528 thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
    +   2528 _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
    +     2528 WTF::wtfThreadEntryPoint(void*)  (in JavaScriptCore) + 15  [0x7fff8f60d2bf]
    +       2528 JSC::BlockAllocator::blockFreeingThreadMain()  (in JavaScriptCore) + 90  [0x7fff8f5f7c5a]
    +         2528 WTF::ThreadCondition::timedWait(WTF::Mutex&, double)  (in JavaScriptCore) + 118  [0x7fff8f3d4ee6]
    +           2527 _pthread_cond_wait  (in libsystem_c.dylib) + 869  [0x7fff8a930fe9]
    +           ! 2527 __psynch_cvwait  (in libsystem_kernel.dylib) + 10  [0x7fff868fd0fa]
    +           1 cerror_nocancel  (in libsystem_kernel.dylib) + 28  [0x7fff868fe4f0]
    2528 Thread_21120628: JavaScriptCore::Marking
    + 2528 thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
    +   2528 _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
    +     2528 WTF::wtfThreadEntryPoint(void*)  (in JavaScriptCore) + 15  [0x7fff8f60d2bf]
    +       2528 JSC::MarkStackThreadSharedData::markingThreadMain()  (in JavaScriptCore) + 214  [0x7fff8f55a9b6]
    +         2528 JSC::SlotVisitor::drainFromShared(JSC::SlotVisitor::SharedDrainMode)  (in JavaScriptCore) + 212  [0x7fff8f55aad4]
    +           2528 _pthread_cond_wait  (in libsystem_c.dylib) + 869  [0x7fff8a930fe9]
    +             2528 __psynch_cvwait  (in libsystem_kernel.dylib) + 10  [0x7fff868fd0fa]
    2528 Thread_21120629: JavaScriptCore::Marking
    + 2528 thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
    +   2528 _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
    +     2528 WTF::wtfThreadEntryPoint(void*)  (in JavaScriptCore) + 15  [0x7fff8f60d2bf]
    +       2528 JSC::MarkStackThreadSharedData::markingThreadMain()  (in JavaScriptCore) + 214  [0x7fff8f55a9b6]
    +         2528 JSC::SlotVisitor::drainFromShared(JSC::SlotVisitor::SharedDrainMode)  (in JavaScriptCore) + 212  [0x7fff8f55aad4]
    +           2528 _pthread_cond_wait  (in libsystem_c.dylib) + 869  [0x7fff8a930fe9]
    +             2528 __psynch_cvwait  (in libsystem_kernel.dylib) + 10  [0x7fff868fd0fa]
    2528 Thread_21120630: JavaScriptCore::Marking
    + 2528 thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
    +   2528 _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
    +     2528 WTF::wtfThreadEntryPoint(void*)  (in JavaScriptCore) + 15  [0x7fff8f60d2bf]
    +       2528 JSC::MarkStackThreadSharedData::markingThreadMain()  (in JavaScriptCore) + 214  [0x7fff8f55a9b6]
    +         2528 JSC::SlotVisitor::drainFromShared(JSC::SlotVisitor::SharedDrainMode)  (in JavaScriptCore) + 212  [0x7fff8f55aad4]
    +           2528 _pthread_cond_wait  (in libsystem_c.dylib) + 869  [0x7fff8a930fe9]
    +             2528 __psynch_cvwait  (in libsystem_kernel.dylib) + 10  [0x7fff868fd0fa]

    1 Thread_24512490   DispatchQueue_72: TSystemNotificationTask  (serial)
    + 1 start_wqthread  (in libsystem_c.dylib) + 13  [0x7fff8a9191d1]
    +   1 _pthread_wqthread  (in libsystem_c.dylib) + 404  [0x7fff8a92ed0b]
    +     1 _dispatch_worker_thread2  (in libdispatch.dylib) + 249  [0x7fff83b301c3]
    +       1 _dispatch_queue_invoke  (in libdispatch.dylib) + 52  [0x7fff83b302f1]
    +         1 _dispatch_queue_drain  (in libdispatch.dylib) + 180  [0x7fff83b30448]
    +           1 _dispatch_queue_invoke  (in libdispatch.dylib) + 72  [0x7fff83b30305]
    +             1 _dispatch_source_invoke  (in libdispatch.dylib) + 691  [0x7fff83b3129b]
    +               1 _dispatch_client_callout  (in libdispatch.dylib) + 8  [0x7fff83b2f0b6]
    +                 1 receive_and_dispatch_rcv_msg  (in CarbonCore) + 170  [0x7fff884e2f91]
    +                   1 FSEventsD2F_server  (in CarbonCore) + 81  [0x7fff884e3014]
    +                     1 _Xcallback_rpc  (in CarbonCore) + 292  [0x7fff884e313f]
    +                       1 implementation_callback_rpc  (in CarbonCore) + 1625  [0x7fff884e381c]
    +                         1 TSystemNotificationTask::HandleFileChanged(__FSEventStream const*, void*, unsigned long, void*, unsigned int const*, unsigned long long const*)  (in DesktopServicesPriv) + 84  [0x7fff835ca23e]
    +                           1 TNode::HandleChange(char*, unsigned int, TCountedPtr const&)  (in DesktopServicesPriv) + 2903  [0x7fff835cadcf]
    +                             1 TNode::HandleRecursiveListeners()  (in DesktopServicesPriv) + 281  [0x7fff835cb67d]
    +                               1 operator new(unsigned long)  (in libc++.1.dylib) + 38  [0x7fff87e1b105]
    +                                 1 malloc  (in libsystem_c.dylib) + 41  [0x7fff8a945c07]
    +                                   1 malloc_zone_malloc  (in libsystem_c.dylib) + 71  [0x7fff8a9451b3]
    +                                     1 szone_malloc_should_clear  (in libsystem_c.dylib) + 971  [0x7fff8a952b38]
    +                                       1 tiny_malloc_from_free_list  (in libsystem_c.dylib) + 45  [0x7fff8a9521a5]
    1 Thread_24512654   DispatchQueue_207: TFSVolumeInfo::GetSyncGCDQueue  (serial)
      1 start_wqthread  (in libsystem_c.dylib) + 13  [0x7fff8a9191d1]
        1 _pthread_wqthread  (in libsystem_c.dylib) + 404  [0x7fff8a92ed0b]
          1 _dispatch_worker_thread2  (in libdispatch.dylib) + 249  [0x7fff83b301c3]
            1 _dispatch_queue_invoke  (in libdispatch.dylib) + 52  [0x7fff83b302f1]
              1 _dispatch_queue_drain  (in libdispatch.dylib) + 235  [0x7fff83b3047f]
                1 _dispatch_client_callout  (in libdispatch.dylib) + 8  [0x7fff83b2f0b6]
                  1 _dispatch_call_block_and_release  (in libdispatch.dylib) + 15  [0x7fff83b32f01]
                    1 __PostNodeTaskRequest_block_invoke_0  (in DesktopServicesPriv) + 91  [0x7fff8359aba1]
                      1 ExceptionSafeBlock(void ()() block_pointer)  (in DesktopServicesPriv) + 12  [0x7fff8359ac00]
                        1 __block_global_1  (in DesktopServicesPriv) + 82  [0x7fff8360e11f]
                          1 TNode::HandleNodeRequest(TCountedPtr const&, TCountedPtr const&)  (in DesktopServicesPriv) + 757  [0x7fff8359af4b]
                            1 TNode::HandleSync(TCountedPtr const&, TNodePtr const&)  (in DesktopServicesPriv) + 42  [0x7fff835be948]
                              1 TNode::HandleSync(unsigned int)  (in DesktopServicesPriv) + 389  [0x7fff835aa8c1]
                                1 CFURLCreateFileReferenceURL  (in CoreFoundation) + 264  [0x7fff84d4f228]
                                  1 _retainedComponentString  (in CoreFoundation) + 275  [0x7fff84cd2de3]
                                    1 CFStringCreateWithSubstring  (in CoreFoundation) + 651  [0x7fff84cca8fb]
                                      1 __CFStringCreateImmutableFunnel3  (in CoreFoundation) + 2707  [0x7fff84cb2983]
                                        1 _CFRuntimeCreateInstance  (in CoreFoundation) + 405  [0x7fff84cb2e55]

Total number in stack (recursive counted multiple, when >=5):
        8       _pthread_start  (in libsystem_c.dylib) + 327  [0x7fff8a92c7a2]
        8       thread_start  (in libsystem_c.dylib) + 13  [0x7fff8a9191e1]
        5       __psynch_cvwait  (in libsystem_kernel.dylib) + 0  [0x7fff868fd0f0]
        5       _pthread_cond_wait  (in libsystem_c.dylib) + 869  [0x7fff8a930fe9]
        5       start_wqthread  (in libsystem_c.dylib) + 13  [0x7fff8a9191d1]

Sort by top of stack, same collapsed (when >= 5):
        __psynch_cvwait  (in libsystem_kernel.dylib)        12639
        __workq_kernreturn  (in libsystem_kernel.dylib)        7582
        mach_msg_trap  (in libsystem_kernel.dylib)        7093
        __select  (in libsystem_kernel.dylib)        2528
        kevent  (in libsystem_kernel.dylib)        2528
        __CFRunLoopCollectSources0  (in CoreFoundation)        361
        CFBasicHashGetBucket  (in CoreFoundation)        49
        CFBasicHashApply  (in CoreFoundation)        28
        mk_timer_arm  (in libsystem_kernel.dylib)        11
        __CFSetApplyFunction_block_invoke_0  (in CoreFoundation)        7

What's interesting here are the lines like these:

2528 Thread_21120628: JavaScriptCore::Marking

Inside Finder.app there is a JavaScriptCore doing your text rendering!

I was so (unpleasantly) surprised by this. I thought M$ tried this also, 10 years ago, and failed horribly.
Well, to ease the worries. It's just part of JS core that has been used, not the full JS implementation.

I've reported a bug to Apple about this issue.

No comments:

Post a Comment