[ 3505.600] ==================== GDB Backtrace ============ [ 3505.600] [ 3505.600] Done by /usr/bin/xorg-backtrace V1.0 [ 3505.600] [ 3505.600] GNU gdb (GDB) 7.2-ubuntu [ 3505.600] This GDB was configured as "x86_64-linux-gnu". [ 3505.600] [ 3505.600] ==================== Backtrace ================ [ 3505.600] [ 3505.600] Thread 1 (Thread 0x7f430b0a6700 (LWP 12973)): [ 3505.600] [ 3505.600] [ 3505.600] #0 0x00007f430a41069e in __libc_waitpid (pid=, stat_loc=0x7fffb7b1156c, options=) at ../sysdeps/unix/sysv/linux/waitpid.c:32 [ 3505.600] [ 3505.600] #1 0x000000000045f89d in xorg_backtrace_gdb () at ../../os/backtrace.c:77 [ 3505.600] [ 3505.600] #2 xorg_backtrace () at ../../os/backtrace.c:120 [ 3505.600] [ 3505.600] #3 0x000000000045f70d in OsSigHandler (signo=11, sip=0x7fffb7b11830, unused=0x0) at ../../os/osinit.c:139 [ 3505.600] [ 3505.600] #4 [ 3505.600] No symbol table info available. [ 3505.600] [ 3505.600] [ 3505.600] #5 0x00007f43075933a1 in dixGetPrivateAddr (client=, draw=0x24cede0, front=0x24d8600, back=0x24d8630, target_msc=0x7fffb7b11d10, divisor=, remainder=0, func=0x7f43077c88e0 , data=0x24cede0) at /usr/include/xorg/privates.h:123 [ 3505.600] No locals. [ 3505.600] [ 3505.600] 118 */ [ 3505.600] 119 static inline void * [ 3505.600] 120 dixGetPrivateAddr(PrivatePtr *privates, const DevPrivateKey key) [ 3505.600] 121 { [ 3505.600] 122 assert(key->initialized); [ 3505.600] 123 * return (char *) (*privates) + key->offset; [ 3505.600] 124 } [ 3505.600] 125 [ 3505.600] 126 /* [ 3505.600] 127 * Fetch a private pointer stored in the object [ 3505.600] [ 3505.600] [ 3505.600] #6 dixLookupPrivate (client=, draw=0x24cede0, front=0x24d8600, back=0x24d8630, target_msc=0x7fffb7b11d10, divisor=, remainder=0, func=0x7f43077c88e0 , data=0x24cede0) at /usr/include/xorg/privates.h:165 [ 3505.600] No locals. [ 3505.600] [ 3505.600] 160 */ [ 3505.600] 161 static inline pointer [ 3505.600] 162 dixLookupPrivate(PrivatePtr *privates, const DevPrivateKey key) [ 3505.600] 163 { [ 3505.600] 164 if (key->size) [ 3505.600] 165 * return dixGetPrivateAddr(privates, key); [ 3505.600] 166 else [ 3505.600] 167 return dixGetPrivate(privates, key); [ 3505.601] 168 } [ 3505.601] 169 [ 3505.601] [ 3505.601] [ 3505.601] #7 ListDelDRI2ClientEvents (client=, draw=0x24cede0, front=0x24d8600, back=0x24d8630, target_msc=0x7fffb7b11d10, divisor=, remainder=0, func=0x7f43077c88e0 , data=0x24cede0) at radeon_dri2.c:499 [ 3505.601] No locals. [ 3505.601] [ 3505.601] 494 [ 3505.601] 495 static void [ 3505.601] 496 ListDelDRI2ClientEvents(ClientPtr client, struct list *entry) [ 3505.601] 497 { [ 3505.601] 498 DRI2ClientEventsPtr pClientPriv; [ 3505.601] 499 * pClientPriv = GetDRI2ClientEvents(client); [ 3505.601] 500 [ 3505.601] 501 if (!pClientPriv) { [ 3505.601] 502 return; [ 3505.601] 503 } [ 3505.601] [ 3505.601] [ 3505.601] #8 radeon_dri2_schedule_swap (client=, draw=0x24cede0, front=0x24d8600, back=0x24d8630, target_msc=0x7fffb7b11d10, divisor=, remainder=0, func=0x7f43077c88e0 , data=0x24cede0) at radeon_dri2.c:988 [ 3505.601] scrn = 0x1e5de20 [ 3505.601] vbl = {request = {type = 3081837840, sequence = 32767, signal = 139925862819924}, reply = {type = 3081837840, sequence = 32767, tval_sec = 139925862819924, tval_usec = 3}} [ 3505.601] ret = [ 3505.601] crtc = -1 [ 3505.601] current_msc = [ 3505.601] region = {extents = {x1 = 0, y1 = 0, x2 = 512, y2 = 512}, data = 0x0} [ 3505.601] [ 3505.601] 983 [ 3505.601] 984 radeon_dri2_copy_region(draw, ®ion, front, back); [ 3505.601] 985 [ 3505.601] 986 DRI2SwapComplete(client, draw, 0, 0, 0, DRI2_BLIT_COMPLETE, func, data); [ 3505.601] 987 if (swap_info) { [ 3505.601] 988 * ListDelDRI2ClientEvents(swap_info->client, &swap_info->link); [ 3505.601] 989 free(swap_info); [ 3505.601] 990 } [ 3505.601] 991 [ 3505.601] 992 radeon_dri2_unref_buffer(front); [ 3505.601] [ 3505.601] [ 3505.601] #9 0x00007f43077c7e13 in DRI2SwapBuffers (client=, pDraw=0x24cede0, target_msc=, divisor=, remainder=, swap_target=0x7fffb7b11d10, func=0x7f43077c88e0 , data=0x24cede0) at ../../../../hw/xfree86/dri2/dri2.c:850 [ 3505.601] pScreen = 0x1e717f0 [ 3505.601] pPriv = [ 3505.601] pDestBuffer = 0x24d8600 [ 3505.601] pSrcBuffer = 0x1 [ 3505.601] ret = [ 3505.601] ust = 0 [ 3505.601] current_msc = 0 [ 3505.601] __func__ = "DRI2SwapBuffers" [ 3505.601] [ 3505.601] 845 /* glXSwapBuffersMscOML could have a 0 target_msc, honor it */ [ 3505.601] 846 *swap_target = target_msc; [ 3505.601] 847 } [ 3505.601] 848 [ 3505.601] 849 pPriv->swapsPending++; [ 3505.601] 850 * ret = (*ds->ScheduleSwap)(client, pDraw, pDestBuffer, pSrcBuffer, [ 3505.601] 851 swap_target, divisor, remainder, func, data); [ 3505.601] 852 if (!ret) { [ 3505.601] 853 pPriv->swapsPending--; /* didn't schedule */ [ 3505.601] 854 xf86DrvMsg(pScreen->myNum, X_ERROR, [ 3505.601] [ 3505.601] [ 3505.601] #10 0x00007f43077c9009 in ProcDRI2SwapBuffers (client=0x24f4120) at ../../../../hw/xfree86/dri2/dri2ext.c:404 [ 3505.601] rep = {type = 224 '\340', pad1 = 254 '\376', sequenceNumber = 125, length = 0, swap_hi = 137, swap_lo = 0, pad2 = 2740, pad3 = 0, pad4 = 4943848, pad5 = 0} [ 3505.601] swap_target = [ 3505.601] status = [ 3505.601] pDrawable = 0x24cede0 [ 3505.601] [ 3505.601] 399 [ 3505.601] 400 target_msc = vals_to_card64(stuff->target_msc_lo, stuff->target_msc_hi); [ 3505.601] 401 divisor = vals_to_card64(stuff->divisor_lo, stuff->divisor_hi); [ 3505.601] 402 remainder = vals_to_card64(stuff->remainder_lo, stuff->remainder_hi); [ 3505.601] 403 [ 3505.601] 404 * status = DRI2SwapBuffers(client, pDrawable, target_msc, divisor, remainder, [ 3505.601] 405 &swap_target, DRI2SwapEvent, pDrawable); [ 3505.601] 406 if (status != Success) [ 3505.601] 407 return BadDrawable; [ 3505.601] 408 [ 3505.601] [ 3505.602] [ 3505.602] #11 ProcDRI2Dispatch (client=0x24f4120) at ../../../../hw/xfree86/dri2/dri2ext.c:570 [ 3505.602] stuff = [ 3505.602] [ 3505.602] 565 case X_DRI2CopyRegion: [ 3505.602] 566 return ProcDRI2CopyRegion(client); [ 3505.602] 567 case X_DRI2GetBuffersWithFormat: [ 3505.602] 568 return ProcDRI2GetBuffersWithFormat(client); [ 3505.602] 569 case X_DRI2SwapBuffers: [ 3505.602] 570 * return ProcDRI2SwapBuffers(client); [ 3505.602] 571 case X_DRI2GetMSC: [ 3505.602] 572 return ProcDRI2GetMSC(client); [ 3505.602] 573 case X_DRI2WaitMSC: [ 3505.602] 574 return ProcDRI2WaitMSC(client); [ 3505.602] [ 3505.602] [ 3505.602] #12 0x000000000042fe19 in Dispatch () at ../../dix/dispatch.c:432 [ 3505.602] result = [ 3505.602] client = 0x24f4120 [ 3505.602] nready = 0 [ 3505.602] start_tick = 2740 [ 3505.602] [ 3505.602] 427 if (result > (maxBigRequestSize << 2)) [ 3505.602] 428 result = BadLength; [ 3505.602] 429 else { [ 3505.602] 430 result = XaceHookDispatch(client, MAJOROP); [ 3505.602] 431 if (result == Success) [ 3505.602] 432 * result = (* client->requestVector[MAJOROP])(client); [ 3505.602] 433 XaceHookAuditEnd(client, result); [ 3505.602] 434 } [ 3505.602] 435 #ifdef XSERVER_DTRACE [ 3505.602] 436 XSERVER_REQUEST_DONE(LookupMajorName(MAJOROP), MAJOROP, [ 3505.602] [ 3505.602] [ 3505.602] #13 0x000000000042196b in main (argc=8, argv=0x7fffb7b11f08, envp=) at ../../dix/main.c:291 [ 3505.602] i = 1 [ 3505.602] alwaysCheckForInput = {0, 1} [ 3505.602] [ 3505.602] 286 pthread_mutex_unlock(&serverInitCompleteMutex); [ 3505.602] 287 #endif [ 3505.602] 288 [ 3505.602] 289 NotifyParentProcess(); [ 3505.602] 290 [ 3505.602] 291 * Dispatch(); [ 3505.602] 292 [ 3505.602] 293 UndisplayDevices(); [ 3505.602] 294 [ 3505.602] 295 /* Now free up whatever must be freed */ [ 3505.602] [ 3505.602] ==================== Backtrace End ============ [ 3505.602] [ 3505.602] Segmentation fault at address 0x68 [ 3505.602] Caught signal 11 (Segmentation fault). Server aborting [ 3505.602]