Le samedi 27 mars 2010 à 14:39 +0100, Michel Dänzer a écrit : > On Sat, 2010-03-27 at 12:52 +0100, Josselin Mouette wrote: > > > > I don’t really know how to obtain a better backtrace. I haven’t managed > > to make it dump core, and using gdb directly on it prevents me from > > switching VTs when the server crashes. > > Usually it's best to run gdb from a remote shell.
OK here we go. Thread 1 (Thread 0x7fefb49ce6f0 (LWP 2431)): #0 memcpy () at ../sysdeps/x86_64/memcpy.S:191 No locals. #1 0x00007fefb08ad2aa in RADEONUploadToScreenCS (pDst=<value optimized out>, x=<value optimized out>, y=<value optimized out>, w=<value optimized out>, h=<value optimized out>, src=0xa0 <Address 0xa0 out of bounds>, src_pitch=160) at ../../src/radeon_exa_funcs.c:535 pScrn = <value optimized out> driver_priv = <value optimized out> scratch = 0xc5cd10 dst = 0x7fefb49e5000 <Address 0x7fefb49e5000 out of bounds> datatype = <value optimized out> dst_domain = 32751 dst_pitch_offset = <value optimized out> bpp = <value optimized out> scratch_pitch = 192 r = <value optimized out> i = 1 __func__ = "RADEONUploadToScreenCS" #2 0x00007fefb01c8222 in exaHWCopyNtoN (pSrcDrawable=<value optimized out>, pDstDrawable=<value optimized out>, pGC=<value optimized out>, pbox=0x7fffbbfdf770, nbox=0, dx=-596, dy=-527, reverse=0, upsidedown=0) at ../../exa/exa_accel.c:527 src_stride = 160 pSrcPixmap = 0x16efbb0 pDstPixmap = 0x971c10 pSrcExaPixmap = 0x16f0ef0 src_off_x = 0 src_off_y = 0 dst_off_x = 0 dst_off_y = 0 srcregion = 0xc17a90 dstregion = 0xc6c5b0 ret = <value optimized out> #3 0x00007fefb01c832d in exaCopyNtoN (pSrcDrawable=<value optimized out>, pDstDrawable=0x9776d0, pGC=<value optimized out>, pbox=<value optimized out>, nbox=<value optimized out>, dx=-596, dy=-527, reverse=0, upsidedown=0, bitplane=0, closure=0x0) at ../../exa/exa_accel.c:574 No locals. #4 0x000000000054cc0d in miCopyRegion (pSrcDrawable=0x16efbb0, pDstDrawable=0x0, pGC=0xa0, pDstRegion=<value optimized out>, dx=-596, dy=<value optimized out>, copyProc=0x7fefb01c8240 <exaCopyNtoN>, bitPlane=0, closure=0xa0) at ../../mi/micopy.c:138 reverse = 40 upsidedown = 7 pbox = 0x7fffbbfdf770 nbox = 1 pboxNew1 = <value optimized out> pboxNew2 = <value optimized out> pboxBase = <value optimized out> pboxNext = <value optimized out> pboxTmp = <value optimized out> #5 0x000000000054d11a in miDoCopy (pSrcDrawable=0x16efbb0, pDstDrawable=0x9776d0, pGC=0x1818470, xIn=0, yIn=0, widthSrc=<value optimized out>, heightSrc=40, xOut=596, yOut=527, copyProc=0x7fefb01c8240 <exaCopyNtoN>, bitPlane=0, closure=0x0) at ../../mi/micopy.c:338 prgnSrcClip = 0x0 freeSrcClip = 0 prgnExposed = <value optimized out> rgnDst = {extents = {x1 = 596, y1 = 527, x2 = 636, y2 = 567}, data = 0x0} dx = 12870 dy = 5279744 box_x1 = <value optimized out> box_y1 = <value optimized out> box_x2 = <value optimized out> box_y2 = <value optimized out> fastSrc = <value optimized out> fastDst = <value optimized out> fastExpose = 1 #6 0x00007fefb01c6763 in exaCopyArea (pSrcDrawable=0x16efbb0, pDstDrawable=0x9776d0, pGC=0x1818470, srcx=0, srcy=<value optimized out>, width=<value optimized out>, height=40, dstx=596, dsty=527) at ../../exa/exa_accel.c:598 No locals. #7 0x00000000004c84e8 in damageCopyArea (pSrc=0x16efbb0, pDst=0x9776d0, pGC=0x1818470, srcx=<value optimized out>, srcy=<value optimized out>, width=40, height=40, dstx=596, dsty=527) at ../../../miext/damage/damage.c:949 ret = <value optimized out> pGCPriv = 0x16f1770 oldFuncs = 0x7c1860 #8 0x000000000054763d in miDCRestoreUnderCursor (pDev=<value optimized out>, pScreen=0x936180, x=<value optimized out>, y=527, w=40, h=<value optimized out>) at ../../mi/midispcur.c:592 pBuffer = <value optimized out> pSave = 0x16efbb0 pWin = 0x9776d0 #9 0x000000000056d809 in miSpriteRemoveCursor (pDev=0xa88a80, pScreen=0x936180) at ../../mi/misprite.c:995 pScreenPriv = 0x949bf0 pCursorInfo = 0xa9c800 #10 0x000000000056eded in miSpriteReportDamage (pDamage=<value optimized out>, pRegion=0x7fffbbfdfa40, closure=<value optimized out>) at ../../mi/misprite.c:278 pScreen = 0x936180 pCursorInfo = <value optimized out> pDev = 0xa88a80 #11 0x00000000004c575c in damageReportDamage (pDamage=0x949c90, pDamageRegion=0x7fffbbfdfa40) at ../../../miext/damage/damage.c:134 tmpRegion = {extents = {x1 = -10480, y1 = 168, x2 = 0, y2 = 0}, data = 0x7fefb2b0b9bc} #12 0x00000000004c5af6 in damageRegionAppend (pDrawable=<value optimized out>, pRegion=<value optimized out>, clip=<value optimized out>, subWindowMode=<value optimized out>) at ../../../miext/damage/damage.c:363 pScrPriv = 0x949b70 pDamage = 0x949c90 pNext = 0x0 clippedRec = {extents = {x1 = 0, y1 = 0, x2 = 1280, y2 = 1024}, data = 0xc6a040} pDamageRegion = 0x7fffbbfdfa40 pixClip = {extents = {x1 = 0, y1 = 0, x2 = 1280, y2 = 1024}, data = 0x0} draw_x = <value optimized out> draw_y = 0 screen_x = 0 screen_y = 0 #13 0x00000000004c5c28 in damageDamageBox (pDrawable=0x7fefb49e5000, pBox=<value optimized out>, subWindowMode=<value optimized out>) at ../../../miext/damage/damage.c:425 region = {extents = {x1 = 0, y1 = 0, x2 = 1280, y2 = 1024}, data = 0xc69e80} #14 0x00000000004c6d40 in damagePolyFillRect (pDrawable=0x9776d0, pGC=0x974400, nRects=12, pRects=0xc5e2c0) at ../../../miext/damage/damage.c:1402 box = {x1 = 0, y1 = 0, x2 = 1280, y2 = 1024} pRectsTmp = <value optimized out> nRectsTmp = <value optimized out> pGCPriv = 0x971e90 oldFuncs = 0x7c1860 #15 0x000000000045ac8a in miPaintWindow (pWin=<value optimized out>, prgn=0xc69f50, what=<value optimized out>) at ../../mi/miexpose.c:670 pScreen = <value optimized out> gcval = {{val = 3, ptr = 0x3}, {val = 1, ptr = 0x1}, {val = 11065104, ptr = 0xa8d710}, {val = 0, ptr = 0x0}, {val = 0, ptr = 0x0}, { val = 9763712, ptr = 0x94fb80}} gcmask = 13569 pGC = <value optimized out> pbox = 0xc69f50 prect = 0xc5e2c0 numRects = 160 draw_x_off = 0 draw_y_off = 0 tile_x_off = <value optimized out> tile_y_off = <value optimized out> fill = <value optimized out> drawable = 0x9776d0 #16 0x000000000045b028 in miWindowExposures (pWin=0x9776d0, prgn=0x16f1340, other_exposed=0x0) at ../../mi/miexpose.c:504 expRec = {extents = {x1 = -17984, y1 = 124, x2 = 0, y2 = 0}, data = 0x9776d0} exposures = 0x16f1340 #17 0x00000000005387d7 in xf86XVWindowExposures (pWin=0x9776d0, reg1=0x16f1340, reg2=<value optimized out>) at ../../../../hw/xfree86/common/xf86xv.c:1054 pScreen = 0x936180 WinPriv = <value optimized out> pPrev = <value optimized out> pPriv = <value optimized out> AreasExposed = 0 #18 0x00000000005603bb in miHandleValidateExposures (pWin=0x9776d0) at ../../mi/miwindow.c:246 pChild = 0x9776d0 val = 0x16f1340 WindowExposures = 0x538750 <xf86XVWindowExposures> #19 0x000000000050a547 in xf86SetRootClip (pScreen=0x936180, enable=1) at ../../../../hw/xfree86/common/xf86Helper.c:1148 pWin = 0x9776d0 pChild = <value optimized out> WasViewable = 1 anyMarked = 1 pLayerWin = 0xbbcfe0 #20 0x00007fefb01c0b4f in exaXorgEnableDisableFBAccess (index=0, enable=1) at ../../../../hw/xfree86/exa/examodule.c:99 No locals. #21 0x0000000000542fb0 in xf86CursorEnableDisableFBAccess (index=0, enable=1) at ../../../../hw/xfree86/ramdac/xf86Cursor.c:222 pDev = 0xa88a80 pScreen = 0x936180 ScreenPriv = 0x94dd40 #22 0x0000000000474d8f in xf86VTSwitch (blockData=<value optimized out>, err=<value optimized out>, pReadmask=<value optimized out>) at ../../../../hw/xfree86/common/xf86Events.c:554 i = 0 prevSIGIO = 1 pInfo = <value optimized out> ih = <value optimized out> #23 xf86Wakeup (blockData=<value optimized out>, err=<value optimized out>, pReadmask=<value optimized out>) at ../../../../hw/xfree86/common/xf86Events.c:299 LastSelectMask = <value optimized out> devicesWithInput = {fds_bits = {0, 140736347502331, 0, 1, 140736347372992, 8216416, 8216544, 140667474861663, 140736347373056, 2, 8216416, 4610113, 120, 811418071, 0, 4872105}} pInfo = <value optimized out> #24 0x0000000000444fbb in WakeupHandler (result=-1, pReadmask=0x7d5f60) at ../../dix/dixutils.c:413 i = 0 #25 0x0000000000462c25 in WaitForSomething ( pClientsReady=<value optimized out>) at ../../os/WaitFor.c:232 i = 160 waittime = {tv_sec = 0, tv_usec = 15897} wt = 0x7fffbbfe0080 timeout = <value optimized out> clientsReadable = {fds_bits = {0 <repeats 16 times>}} clientsWritable = {fds_bits = {1073741825, 12630944, 0, 0, 16, 8602896368, 48, 140736347373600, 140736347373520, 140736347373716, 12970592, 4626076, 0, 4585597, 140733193388108, 0}} selecterr = 4 nready = <value optimized out> devicesReadable = {fds_bits = {0, 0, 0, 0, 0, 140736347373444, 25165838, 12596416, 140736347373640, 140736347373476, 25165838, 12596416, 140736347373672, 4898269, 12596416, 25165838}} now = <value optimized out> someReady = 0 #26 0x0000000000443752 in Dispatch () at ../../dix/dispatch.c:375 result = <value optimized out> client = 0xc034c0 nready = -1 start_tick = 380 #27 0x0000000000425b9a in main (argc=9, argv=0x7d52c8, envp=<value optimized out>) at ../../dix/main.c:285 i = 1 alwaysCheckForInput = {0, 1} Note that once this has happened, this doesn’t happen again. X restarts fine, and you can switch to tty1 and back. However, if you try to start a second X instance with gdmflexiserver, it will refuse to launch: drmOpenDevice: node name is /dev/dri/card0 drmOpenDevice: open result is 9, (OK) drmOpenByBusid: Searching for BusID pci:0000:01:05.0 drmOpenDevice: node name is /dev/dri/card0 drmOpenDevice: open result is 9, (OK) drmOpenByBusid: drmOpenMinor returns 9 drmOpenByBusid: drmGetBusid reports pci:0000:01:05.0 (EE) RADEON(0): [drm] failed to set drm interface version. (EE) RADEON(0): Kernel modesetting setup failed (II) UnloadModule: "radeon" (EE) Screen(s) found, but none have a usable configuration. Fatal server error: no screens found Cheers, -- .''`. Josselin Mouette : :' : `. `' “If you behave this way because you are blackmailed by someone, `- […] I will see what I can do for you.” -- Jörg Schilling
signature.asc
Description: This is a digitally signed message part