[Xquartz-dev] X11 freezeup captured

Tom Lane tgl at sss.pgh.pa.us
Fri Jul 17 06:39:50 PDT 2009


Some time ago (around 2.3.2rc4) I complained of seeing random freezeups
in X11.  You asked for an Activity Monitor sample.  I just saw it again,
for the first time in months, so here is the sample.

I am currently running 2.3.3.2 (xorg-server 1.4.2-apple42).  The
symptoms are that no X11 window responds to typing or mouse, and
the X11 window title bars do not react when you move the mouse over
them.  However, you can still pull down menu items.  I found out
that the Quit item still works (even producing the helpful little
"are you sure you want to quit?" dialog).

Hope this is helpful.

			regards, tom lane


Sampling process 17400 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling X11.bin (pid 17400) every 1 millisecond
Call graph:
    1797 Thread_2507
      1797 start
        1797 main
          1797 mach_msg_server
            1797 mach_startup_server
              1797 _Xstart_x11_server
                1797 do_start_x11_server
                  1797 server_main
                    1797 X11ApplicationMain
                      1797 -[NSApplication run]
                        1791 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
                          1791 _DPSNextEvent
                            1789 BlockUntilNextEventMatchingListInMode
                              1789 ReceiveNextEventCommon
                                1786 RunCurrentEventLoopInMode
                                  1786 CFRunLoopRunInMode
                                    1786 CFRunLoopRunSpecific
                                      1776 mach_msg
                                        1776 mach_msg_trap
                                          1776 mach_msg_trap
                                      4 __CFMachPortPerform
                                        4 PullEventsFromWindowServerOnConnection(unsigned int, unsigned char)
                                          3 CGEventCreateNextEvent
                                            2 CGSGetNextEventRecordInternal
                                              2 snarfEvents
                                                1 CGSDispatchDatagramsFromStream
                                                  1 CGSDecodeEventRecord
                                                    1 CGEventCreateFromDataAndSource
                                                      1 CGEventCreateFromDataAndSource
                                                1 _CGSGetPortStreamInline
                                                  1 mach_msg
                                                    1 mach_msg_trap
                                                      1 mach_msg_trap
                                            1 CGEventCreate
                                              1 CGTypeCreateInstance
                                                1 CGTypeCreateInstanceWithAllocator
                                                  1 _CFRuntimeCreateInstance
                                                    1 __CFAllocatorSystemAllocate
                                                      1 __CFAllocatorSystemAllocate
                                          1 GetCurrentEventQueue
                                            1 pthread_self
                                              1 pthread_self
                                      2 0xffffffff
                                        2 _sigtramp
                                          2 _sigtramp
                                      1 CFRunLoopRunSpecific
                                      1 __CFRunLoopModeFindSourceForMachPort
                                        1 CFSetApplyFunction
                                          1 __CFRunLoopFindSource
                                            1 __CFRunLoopFindSource
                                      1 __CFRunLoopTimerRescheduleWithAllModes
                                        1 mk_timer_arm
                                          1 mk_timer_arm
                                      1 __bzero
                                        1 __bzero
                                2 AcquireEventFromQueue
                                  2 _NotifyEventLoopObservers
                                    2 HIApplication::EventObserver(unsigned long, OpaqueEventRef*, void*)
                                      2 HIApplication::HandleActivated(OpaqueEventRef*, unsigned char, OpaqueWindowPtr*)
                                        2 SetMenuBarObscured
                                          2 ShowBar(unsigned char, unsigned char)
                                            1 MBarDraw()
                                              1 ShowHide
                                                1 _ShowHideWindows
                                                  1 WindowData::PrepareForVisibility()
                                                    1 HIView::Render(unsigned long, CGContext*)
                                                      1 HIView::Draw(short, OpaqueGrafPtr*, unsigned long)
                                                        1 HIView::DrawComposited(short, OpaqueGrafPtr*, __HIShape const*, unsigned long, HIView*, CGContext*)
                                                          1 HIView::RecursiveDrawComposited(__HIShape const*, unsigned long, HIView*, CGContext*, unsigned char, float)
                                                            1 HIView::RecursiveDrawComposited(__HIShape const*, unsigned long, HIView*, CGContext*, unsigned char, float)
                                                              1 HIView::SendDraw(short, OpaqueGrafPtr*, __HIShape const*, CGContext*)
                                                                1 HIView::DrawCacheOrSelf(short, __HIShape const*, CGContext*)
                                                                  1 HIMenuBarView::DrawSelf(short, __HIShape const*, CGContext*)
                                                                    1 HIMenuBarView::DrawTextTitle(MenuData*, CGRect const*, __CFString const*, unsigned short, CGContext*, bool)
                                                                      1 CGContextSetRGBFillColor
                                                                        1 CGGStateGetFillColor
                                                                          1 CGColorSpaceCopyDefaultColor
                                                                            1 CGColorSpaceGetDefaultColorComponents
                                                                              1 CGColorSpaceGetDefaultColorComponents
                                            1 ResetMenuBarWindowFilter()
                                              1 +[CICGSFilter filterWithFilter:connectionID:]
                                                1 -[CICGSFilter initWithFilter:connectionID:]
                                                  1 +[NSKeyedArchiver archivedDataWithRootObject:]
                                                    1 -[NSKeyedArchiver finishEncoding]
                                                      1 __CFBinaryPlistWriteToStream
                                                        1 __CFSetGrow
                                                          1 __CFSetGrow
                                1 ReceiveNextEventCommon
                            1 SendEventToEventTarget
                              1 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)
                                1 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)
                                  1 ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)
                                    1 FindWindowAndPartFromMouseEvent
                                      1 FindWindow
                                        1 FindWindowOfClass
                                          1 FindWindowCommon(Point, OpaqueWindowPtr**, short*)
                                            1 FindPlatformWindow
                                              1 CGSFindWindowAndOwner
                                                1 _CGSFindWindow
                                                  1 mach_msg
                                                    1 mach_msg_trap
                                                      1 mach_msg_trap
                            1 _NSHandleCarbonMenuEvent
                              1 FindWindow
                                1 FindWindowOfClass
                                  1 FindWindowCommon(Point, OpaqueWindowPtr**, short*)
                                    1 FindPlatformWindow
                                      1 CGSFindWindowAndOwner
                                        1 _CGSFindWindow
                                          1 mach_msg
                                            1 mach_msg_trap
                                              1 mach_msg_trap
                        6 -[X11Application sendEvent:]
                          4 CGSDeactivateCurrContext
                            2 _CGSSetLastDeactivated
                              2 mach_msg
                                2 mach_msg_trap
                                  2 mach_msg_trap
                            2 _LSSetMetaApplicationInformationItem
                              2 _LSDoSetMetaApplicationInformation
                                2 mach_msg
                                  2 mach_msg_trap
                                    2 mach_msg_trap
                          1 -[X11Application activateX:]
                            1 ActivateTSMDocument
                              1 MyActivateTSMDocument
                                1 _HaveKeyboardInputMethodOrModeInputSources
                                  1 _CreateKeyboardInputSourcesArray_Mutable
                                    1 OSAtomicCompareAndSwapLongBarrier
                                      1 OSAtomicCompareAndSwapLongBarrier
                          1 -[X11Application(Private) sendX11NSEvent:]
                            1 +[NSEvent mouseLocation]
                              1 +[NSScreen _zeroScreenHeight]
                                1 _NXGetScreenRect
                                  1 CGSGetDisplayBounds
                                    1 lockDisplay
                                      1 CGSUnlockShmemLock
                                        1 CGSUnlockShmemLock
    1797 Thread_2603
      1797 thread_start
        1797 _pthread_start
          1797 CAPThread::Entry(CAPThread*)
            1797 HALRunLoop::OwnThread(void*)
              1797 CFRunLoopRunInMode
                1797 CFRunLoopRunSpecific
                  1797 mach_msg
                    1797 mach_msg_trap
                      1797 mach_msg_trap
    1797 Thread_2703
      1797 thread_start
        1797 _pthread_start
          1797 server_thread
            1797 dix_main
              1797 Dispatch
                1789 select$DARWIN_EXTSN
                  1789 select$DARWIN_EXTSN
                7 ProcImageText8
                  7 ImageText
                    7 doImageText
                      7 RootlessImageText8
                        7 RootlessStartDrawing
                          7 xprStartDrawing
                            7 xp_lock_window
                              6 CGSLockWindowRectBits
                                6 _CGSLockWindow
                                  6 _CGSSynchronizeWindowBackingStore
                                    6 mach_msg
                                      6 mach_msg_trap
                                        6 mach_msg_trap
                              1 xp_synchronize
                                1 _xp_synchronize
                                  1 _xp_async_dequeue
                                    1 pthread_cond_wait$UNIX2003
                                      1 __semwait_signal
                                        1 __semwait_signal
                1 WaitForSomething
                  1 BlockHandler
                    1 QuartzBlockHandler
                      1 NSPopAutoreleasePool
                        1 NSClassFromObject
                          1 NSClassFromObject
    1797 Thread_2803
      1797 thread_start
        1797 _pthread_start
          1797 xpbproxy_x_thread
            1797 xpbproxy_input_loop
              1797 pthread_cond_wait$UNIX2003
                1797 __semwait_signal
                  1797 __semwait_signal
    1797 Thread_2903
      1797 thread_start
        1797 _pthread_start
          1797 glvmDoWork
            1797 pthread_cond_wait$UNIX2003
              1797 __semwait_signal
                1797 __semwait_signal
    1797 Thread_2a03
      1797 thread_start
        1797 _pthread_start
          1797 DarwinProcessFDAdditionQueue_thread
            1797 pthread_cond_wait$UNIX2003
              1797 __semwait_signal
                1797 __semwait_signal
    1797 Thread_2b03
      1797 thread_start
        1797 _pthread_start
          1796 select$DARWIN_EXTSN
            1796 select$DARWIN_EXTSN
          1 __CFSocketManager
            1 __CFSocketHandleRead
              1 CFRunLoopWakeUp
                1 mach_msg_destroy
                  1 mach_msg_destroy_port
                    1 mach_port_deallocate
                      1 mach_msg
                        1 mach_msg_trap
                          1 mach_msg_trap
    1797 Thread_2c03
      1797 thread_start
        1797 _pthread_start
          1797 _xp_async_thread
            1796 _xp_async_dequeue
              1796 pthread_cond_wait$UNIX2003
                1796 __semwait_signal
                  1796 __semwait_signal
            1 _xp_frame_draw_cb
              1 draw_frame
                1 draw_titlebar_text
                  1 ATSUDrawText
                    1 TTextLineLayout::DrawText(unsigned long, unsigned long, long, long)
                      1 ATSUDrawGlyphs(ATSGlyphVector*, unsigned long, unsigned long, FixedPoint*, CGContext*, Float32Point*)
                        1 RenderGlyphRecordArrayWithCG
                          1 CGContextShowGlyphsWithAdvances
                            1 draw_glyphs
                              1 ripc_DrawGlyphs
                                1 ripc_DrawGlyphs

Total number in stack (recursive counted multiple, when >=5):
        9       mach_msg
        9       mach_msg_trap
        7       _pthread_start
        7       thread_start
        5       __semwait_signal
        5       pthread_cond_wait$UNIX2003

Sort by top of stack, same collapsed (when >= 5):
        __semwait_signal        7188
        mach_msg_trap        3587
        select$DARWIN_EXTSN        3585
Sample analysis of process 17400 written to file /dev/stdout


More information about the Xquartz-dev mailing list