Bug 17278

Summary: XAA locks X after ~minutes using many animated icons in browser (phpmychat)
Product: xorg Reporter: tom schorpp <thomas.schorpp>
Component: Server/Acceleration/XAAAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED DUPLICATE QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: low    
Version: 7.3 (2007.09)   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description tom schorpp 2008-08-24 17:25:03 UTC
ATI R420 (X800) on K8T800Pro AGP 8X mode w/o fast write, 64MB aperture
debian testing binarys + 2.6.26.0,3 x86_64

all fine *respecting* the "unsupported" warning for XAA and using EXA, with XAA:

X process uses full CPU, console still usable, gdb breakin:

#0  0x00007faa66ecc4a7 in ioctl () from /lib/libc.so.6
No symbol table info available.
#1  0x00007faa65e716bd in drmDMA (fd=8, request=0x7fff708ccb00) at xf86drm.c:1220
	dma = {context = 1, send_count = 0, send_indices = 0x0, send_sizes = 0x0, flags = 0, request_count = 1, 
  request_size = 65536, request_indices = 0x7fff708ccb4c, request_sizes = 0x7fff708ccb48, granted_count = 0}
	ret = <value optimized out>
	i = 0
#2  0x00007faa64b28ba1 in RADEONCPGetBuffer (pScrn=0x814af0) at ../../src/radeon_accel.c:611
	info = (RADEONInfoPtr) 0x817d10
	dma = {context = 1, send_count = 0, send_list = 0x0, send_sizes = 0x0, flags = 0, request_count = 1, 
  request_size = 65536, request_list = 0x7fff708ccb4c, request_sizes = 0x7fff708ccb48, granted_count = 0}
	buf = <value optimized out>
	indx = 0
	size = 0
	i = 47
	ret = -16
	__FUNCTION__ = "RADEONCPGetBuffer"
#3  0x00007faa64b343c0 in RADEONSetupForScanlineImageWriteCP (pScrn=0x814af0, rop=3, planemask=4294967295, trans_color=-1, 
    bpp=32, depth=24) at ../../src/radeon_accelfuncs.c:938
	info = (RADEONInfoPtr) 0x817d10
	__head = <value optimized out>
#4  0x00007faa6408bdf2 in XAAWritePixmapScanline (pScrn=0x814af0, x=190, y=573, w=51, h=23, src=0x1035f00 "", srcwidth=208, 
    rop=3, planemask=4294967295, trans=-1, bpp=32, depth=24) at ../../../../hw/xfree86/xaa/xaaImage.c:356
	infoRec = (XAAInfoRecPtr) 0x868f20
	dwords = 207
	skipleft = 0
	bufferNo = <value optimized out>
	Bpp = 4
	beCareful = <value optimized out>
	base = <value optimized out>
#5  0x00007faa6407cdf7 in XAADoImageWrite (pSrc=0x1035e70, pDst=<value optimized out>, pGC=0xfed280, 
    prgnDst=<value optimized out>, pptSrc=0x7fff708ccce0) at ../../../../hw/xfree86/xaa/xaaCpyArea.c:218
	srcwidth = 208
	psrcBase = (unsigned char *) 0x1035f00 ""
	pbox = (BoxPtr) 0x7fff708ccd50
	nbox = 1
	infoRec = (XAAInfoRecPtr) 0x868f20
	Bpp = 4
#6  0x00007faa6407c670 in XAABitBlt (pSrcDrawable=0x1035e70, pDstDrawable=0xfb8f50, pGC=0xfed280, 
    srcx=<value optimized out>, srcy=<value optimized out>, width=52, height=24, dstx=188, dsty=271, 
    doBitBlt=0x7faa6407ccf0 <XAADoImageWrite>, bitPlane=0) at ../../../../hw/xfree86/xaa/xaaBitBlt.c:203
	prgnSrcClip = (RegionPtr) 0x0
	prgnExposed = <value optimized out>
---Type <return> to continue, or q <return> to quit---
	freeSrcClip = 0
	rgnDst = {extents = {x1 = 190, y1 = 573, x2 = 241, y2 = 596}, data = 0x0}
	ppt = <value optimized out>
	pbox = <value optimized out>
	dx = <value optimized out>
	dy = -573
	numRects = 24
	fastClip = <value optimized out>
	fastExpose = 1
#7  0x00007faa6407d47d in XAACopyArea (pSrcDrawable=0x1035e70, pDstDrawable=0xfb8f50, pGC=0xfed280, srcx=0, srcy=0, 
    width=52, height=24, dstx=188, dsty=271) at ../../../../hw/xfree86/xaa/xaaCpyArea.c:66
	infoRec = (XAAInfoRecPtr) 0x868f20
#8  0x00007faa640c07f4 in cwCopyArea (pSrc=0x1035e70, pDst=0xfb8f50, pGC=0xfed280, srcx=0, srcy=0, w=52, h=24, dstx=188, 
    dsty=271) at ../../../miext/cw/cw_ops.c:201
	pGCPrivate = (cwGCPtr) 0xfed3a8
	dst_off_x = 0
	dst_off_y = 0
	pBackingDst = (DrawablePtr) 0xfb8f50
	pBackingGC = (GCPtr) 0xfed280
	src_off_x = 0
	src_off_y = 0
	pBackingSrc = (DrawablePtr) 0x1035e70
#9  0x0000000000531c9e in damageCopyArea (pSrc=0x1035e70, pDst=0xfb8f50, pGC=0xfed280, srcx=0, srcy=0, width=52, height=24, 
    dstx=188, dsty=271) at ../../../miext/damage/damage.c:834
	ret = <value optimized out>
	pGCPriv = (DamageGCPrivPtr) 0xfed3d0
	oldFuncs = (GCFuncs *) 0x7cece0
#10 0x000000000044dbb8 in ProcCopyArea (client=0xbd2940) at ../../dix/dispatch.c:1802
	pDst = (DrawablePtr) 0xfb8f50
	pSrc = (DrawablePtr) 0x3246
	pGC = (GC *) 0xfed280
	pRgn = <value optimized out>
	rc = -16
#11 0x000000000044f852 in Dispatch () at ../../dix/dispatch.c:502
	result = <value optimized out>
	client = (ClientPtr) 0xbd2940
	nready = 0
	start_tick = 60
#12 0x0000000000436bd5 in main (argc=9, argv=0x7fff708cd528, envp=<value optimized out>) at ../../dix/main.c:452
	i = 1
	error = 0
	xauthfile = <value optimized out>
	alwaysCheckForInput = {0, 1}
(gdb) 

suggest all users of this hw trying EXA, if not working disable some XAA blit/scanline options (man xorg.conf, not tried). no issues with EXA so far here.

y
tom
Comment 1 Michel Dänzer 2008-08-29 01:11:54 UTC
I think this is a duplicate of bug 13176; please reopen if Option "XaaNoSolidFillRect" doesn't work around the problem.

*** This bug has been marked as a duplicate of bug 13176 ***

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.