Xorg segfault in DRIDoBlockHandler

Bug #72375 reported by Tormod Volden
2
Affects Status Importance Assigned to Milestone
xorg-server (Ubuntu)
New
Undecided
Unassigned

Bug Description

X suddenly restarted (it was probably running a 3D screensaver). Will attach apport crash log. I had compiled the xserver-xorg-core package myself, with debug settings "debug nostrip noopt". From the original 1.1.1-0ubuntu12 I had also added some asserts to hw/xfree86/dri/dri.c

Revision history for this message
Tormod Volden (tormodvolden) wrote :
Revision history for this message
Tormod Volden (tormodvolden) wrote :
Revision history for this message
Tormod Volden (tormodvolden) wrote :
Revision history for this message
Tormod Volden (tormodvolden) wrote :

In case it confuses the disassembly, here you can see the inserted "assert" in my source:

void
DRIDoBlockHandler(int screenNum, pointer blockData,
                  pointer pTimeout, pointer pReadmask)
{
    ScreenPtr pScreen = screenInfo.screens[screenNum];
    DRIScreenPrivPtr pDRIPriv = DRI_SCREEN_PRIV(pScreen);

    assert( pDRIPriv );
    if (pDRIPriv->pDriverInfo->driverSwapMethod == DRI_HIDE_X_CONTEXT) {
        /* hide X context by swapping 2D component here */
        (*pDRIPriv->pDriverInfo->SwapContext)(pScreen,
                                              DRI_2D_SYNC,
                                              DRI_NO_CONTEXT,
                                              NULL,
                                              DRI_2D_CONTEXT,
                                              pDRIPriv->partial3DContextStore);
    }

    if (pDRIPriv->windowsTouched)
        DRM_SPINUNLOCK(&pDRIPriv->pSAREA->drawable_lock, 1);
    pDRIPriv->windowsTouched = FALSE;

    DRIUnlock(pScreen);
}

Revision history for this message
Tormod Volden (tormodvolden) wrote :

This is probably a duplicate of (my own) bug #60288. But why is the symbol info incomplete in this build? I used the same DEB_BUILD_OPTIONS="debug nostrip noopt".

Revision history for this message
Tormod Volden (tormodvolden) wrote :

The reason the symbol info was incomplete is bug #78293.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.