Maybe according to the backtrace this hasn't been, strictly speaking, a problem with the driver, but I didn't have the same problem with the previous i810 driver. There's a major difference when I use the KDE translucencies graphical effects and when I don't. And the difference is that when I don't use mean the problem is not repeatable. I don't exactly know what using translucencies could mean in Xorg using features, but what I know is that in the translucencies mode, a composite manager is used. Also yaluake is using the konsole settings which, in turn shows the bacground desktop image transparency-like. Since this is a complicated problem to repeat not because of its lack of repeatibility, but because of the amount of especifical programs needed I decided to used the core dump file I have from the crash to get more information. I've inspected the variables values from the core file using gdb: The crash happens exactly on the macro cwDstPictureDecl in the cwGlyphs function. Here are the backtrace and some useful variable information: Frame #9: #9 0x0817270d in cwGlyphs (op=3 '\003', pSrcPicture=0x8973ab8, pDstPicture=0x91c1ef0, maskFormat=0x8219610, xSrc=0, ySrc=0, nlists=1, lists=0xbfa25fe8, glyphs=0xbfa25be8) at ../../../miext/cw/cw_render.c:297 p *pSrcPicture $3 = {pDrawable = 0x86fb3d8, pFormat = 0x8219610, format = PICT_a8r8g8b8, refcnt = 1, id = 35651999, pNext = 0x0, repeat = 1, graphicsExposures = 0, subWindowMode = 0, polyEdge = 0, polyMode = 0, freeCompClip = 1, clientClipType = 0, componentAlpha = 0, repeatType = 1, unused = 2090695, alphaMap = 0x0, alphaOrigin = {x = 0, y = 0}, clipOrigin = {x = 0, y = 0}, clientClip = 0x0, dither = 0, stateChanges = 0, serialNumber = 9719, pCompositeClip = 0x86fc908, devPrivates = 0x8973b0c, transform = 0x0, filter = 0, filter_params = 0x0, filter_nparams = 0, pSourcePict = 0x0} p *pDstPicture $4 = {pDrawable = 0x8f26d68, pFormat = 0x8219670, format = PICT_x8r8g8b8, refcnt = 1, id = 35672205, pNext = 0x0, repeat = 0, graphicsExposures = 0, subWindowMode = 0, polyEdge = 0, polyMode = 0, freeCompClip = 0, clientClipType = 0, componentAlpha = 0, repeatType = 0, unused = 12064, alphaMap = 0x0, alphaOrigin = {x = 0, y = 0}, clipOrigin = {x = 0, y = 0}, clientClip = 0x0, dither = 0, stateChanges = 0, serialNumber = 4021270, pCompositeClip = 0x8f26d94, devPrivates = 0x91c1f44, transform = 0x0, filter = 0, filter_params = 0x0, filter_nparams = 0, pSourcePict = 0x0} p *lists $6 = {xOff = 101, yOff = 60, len = 4 '\004', format = 0x8219610} p *lists->format $7 = {id = 54, format = 166024, type = 1 '\001', depth = 32 ' ', direct = { red = 16, redMask = 255, green = 8, greenMask = 255, blue = 0, blueMask = 255, alpha = 24, alphaMask = 255}, index = {vid = 0, pColormap = 0x0, nvalues = 0, pValues = 0x0, devPrivate = 0x0}} p **glyphs $10 = {refcnt = 8, devPrivates = 0x0, size = 192, info = {width = 5, height = 9, x = -1, y = 9, xOff = 7, yOff = 0}} PictureScreenPrivateIndex=7 p pDstPicture->pDrawable->pScreen->devPrivates[7].ptr $17 = (pointer) 0x8218268 cwScreenIndex=13 p pDstPicture->pDrawable->pScreen->devPrivates[13].ptr $19 = (pointer) 0x824c470 Now into frame #8: #8 0x08172442 in cwGetBackingPicture (pPicture=0x91c1ef0, x_off=0xbfa25a90, y_off=0xbfa25a8c) at ../../../miext/cw/cw_render.c:129 129 in ../../../miext/cw/cw_render.c p *pPicture $1 = {pDrawable = 0x8f26d68, pFormat = 0x8219670, format = PICT_x8r8g8b8, refcnt = 1, id = 35672205, pNext = 0x0, repeat = 0, graphicsExposures = 0, subWindowMode = 0, polyEdge = 0, polyMode = 0, freeCompClip = 0, clientClipType = 0, componentAlpha = 0, repeatType = 0, unused = 12064, alphaMap = 0x0, alphaOrigin = {x = 0, y = 0}, clipOrigin = {x = 0, y = 0}, clientClip = 0x0, dither = 0, stateChanges = 0, serialNumber = 4021270, pCompositeClip = 0x8f26d94, devPrivates = 0x91c1f44, transform = 0x0, filter = 0, filter_params = 0x0, filter_nparams = 0, pSourcePict = 0x0} cwPictureIndex=0 p pPicture->devPrivates[0].ptr $3 = (pointer) 0x976c298 (cwPicturePtr pPicturePrivate) p *(WindowPtr)pPicture->pDrawable $17 = {drawable = {type = 0 '\0', class = 1 '\001', depth = 24 '\030', bitsPerPixel = 32 ' ', id = 35672184, x = 1, y = 0, width = 1022, height = 342, pScreen = 0x8216e18, serialNumber = 4021270}, parent = 0x95937e0, nextSib = 0x0, prevSib = 0x0, firstChild = 0x8f26c38, lastChild = 0x8f26c38, clipList = {extents = {x1 = 1, y1 = 0, x2 = 1, y2 = 0}, data = 0x81edf04}, borderClip = {extents = {x1 = 1, y1 = 0, x2 = 1, y2 = 0}, data = 0x81edf04}, valdata = 0x0, winSize = {extents = { x1 = 1, y1 = 0, x2 = 1023, y2 = 22}, data = 0x84feb08}, borderSize = { extents = {x1 = 1, y1 = 0, x2 = 1023, y2 = 22}, data = 0x8f193d0}, origin = {x = 0, y = 0}, borderWidth = 0, deliverableEvents = 57471, eventMask = 6479999, background = {pixmap = 0xa7c03008, pixel = 2814390280}, border = {pixmap = 0xff000000, pixel = 4278190080}, backStorage = 0x0, optional = 0x911f7d8, backgroundState = 3, borderIsPixel = 1, cursorIsNone = 0, backingStore = 0, saveUnder = 0, DIXsaveUnder = 0, bitGravity = 1, winGravity = 1, overrideRedirect = 0, visibility = 3, mapped = 1, realized = 0, viewable = 0, dontPropagate = 0, forcedBS = 0, redirectDraw = 0, devPrivates = 0x8f26dec} cwWindowIndex=3 p *pPicture->pDrawable $5 = {type = 0 '\0', class = 1 '\001', depth = 24 '\030', bitsPerPixel = 32 ' ', id = 35672184, x = 1, y = 0, width = 1022, height = 342, pScreen = 0x8216e18, serialNumber = 4021270} (gdb) p ((WindowPtr)pPicture->pDrawable)->devPrivates[3] $13 = {ptr = 0x0, val = 0, uval = 0, fptr = 0} (gdb) p ((WindowPtr)pPicture->pDrawable)->devPrivates[2] $14 = {ptr = 0x0, val = 0, uval = 0, fptr = 0} (gdb) p ((WindowPtr)pPicture->pDrawable)->devPrivates[1] $15 = {ptr = 0x91c1ef0, val = 152837872, uval = 152837872, fptr = 0x91c1ef0} (gdb) p ((WindowPtr)pPicture->pDrawable)->devPrivates[0] $16 = {ptr = 0x8260758, val = 136709976, uval = 136709976, fptr = 0x8260758} It seems that ((WindowPtr)pPicture->pDrawable)->devPrivates[3] points nowhere when it should, but unfortunately I don't know the reason of this. If you miss any information please let me know, also I could send the backtrace if you tell me how I should send it (96MB uncompressed, 10MB bzipped) so I think asking me for a certain value is more convenient.