Bug 22107

Summary: server crash with fallbackdebug
Product: xorg Reporter: Julien Cristau <jcristau>
Component: Driver/intelAssignee: MaLing <ling.ma>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium Keywords: have-backtrace
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Julien Cristau 2009-06-05 03:48:38 UTC
[originally posted to intel-gfx@, moving here for tracking]

when turning FallbackDebug on, X segfaults when my gnome session
starts, with the following backtrace.  It looks like the debugging code
assumes that the Picture has a non-NULL pDrawable, which is not true for
pSrc here (xf86-video-intel is 8e942b70, xserver is a9f85dce, both from
Debian unstable).

#0  uxa_get_drawable_pixmap (pDrawable=0x0) at ../../uxa/uxa.c:58
No locals.
#1  0x00007fcaa15a8ce9 in uxa_drawable_is_offscreen (pDrawable=0x0)
    at ../../uxa/uxa.c:115
No locals.
#2  0x00007fcaa15ae04e in uxa_composite_fallback_pict_desc (pict=0x3e74ea0, 
    string=0x7ffff902f500 "\001", n=40) at ../../uxa/uxa-render.c:72
	format = "ARGB8888", '\0' <repeats 11 times>
	size = '\0' <repeats 19 times>
#3  0x00007fcaa15ae648 in uxa_composite (op=1 '\001', pSrc=0x3e74ea0, 
    pMask=0x3e74f40, pDst=0x3e74fe0, xSrc=0, ySrc=0, xMask=0, yMask=0, xDst=0, 
    yDst=0, width=36, height=36) at ../../uxa/uxa-render.c:103
	uxa_screen = (uxa_screen_t *) 0x8101010101010100
	ret = <value optimized out>
	saveMaskRepeat = 0
	region = {extents = {x1 = 48, y1 = 0, x2 = 0, y2 = 0}, data = 0x433b1a}
#4  0x0000000000535a58 in damageComposite (op=0 '\0', pSrc=0x3e74ea0, 
    pMask=0x3e74f40, pDst=0x3e74fe0, xSrc=0, ySrc=0, xMask=8, 
    yMask=<value optimized out>, xDst=<value optimized out>, 
    yDst=<value optimized out>, width=<value optimized out>, 
    height=<value optimized out>) at ../../../miext/damage/damage.c:643
	ps = (PictureScreenPtr) 0xe5aa10
	pScrPriv = (DamageScrPrivPtr) 0xe5b160
#5  0x000000000052e06a in ProcRenderComposite (client=0x3dd7e30)
    at ../../render/render.c:720
	pSrc = (PicturePtr) 0x3e74ea0
	pMask = <value optimized out>
	pDst = (PicturePtr) 0x3e74fe0
#6  0x000000000044d374 in Dispatch () at ../../dix/dispatch.c:437
	result = <value optimized out>
	client = (ClientPtr) 0x3dd7e30
	nready = 0
	start_tick = 460
#7  0x000000000043321d in main (argc=9, argv=0x7ffff902f858, 
    envp=<value optimized out>) at ../../dix/main.c:397
	i = 1
	alwaysCheckForInput = {0, 1}
Comment 1 Eric Anholt 2009-06-30 19:57:23 UTC
commit 1e4784bf26e3c154f5673f7b5add3ef7af3b1474
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Jun 30 19:52:36 2009 -0700

    uxa: Fix segfault on source-only picture usage with FallbackDebug.
    
    Bug #22107.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.