[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#341351: Ati driver crashes when hw acceleration is disabled



Package: xserver-xorg
Version: 6.8.2.dfsg.1-11
Severity: normal
Tags: patch

A bug into one of ati driver's sources (radeon_video.c) causes Xorg server to
crash when using it with option "NoAccel", due to erroneous dereferencing of
uninitialized pointer.

The bug should be reproducible by anyone using "ati" driver:

1 - add 'Option "NoAccel"' to the device section of video card into xorg.conf
2 - restart Xorg
3 - launch any video player (I have personally tested it with totem, xine and
mplayer -- the latter using xv output, x11 doesn't crash the server)

I'm sure that many other programs are able to trigger this bug, but playing a
video is the one by which I've discovered the problem.

I'm attaching a patch that modifies the single line of code involved and that
solves the problem.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (990, 'unstable'), (500, 'testing'), (500, 'stable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.14-r4
Locale: LANG=it_IT@euro, LC_CTYPE=it_IT@euro (charmap=ISO-8859-15) (ignored: LC_ALL set to it_IT@euro)

Versions of packages xserver-xorg depends on:
ii  debconf [debconf-2.0]    1.4.59          Debian configuration management sy
ii  libc6                    2.3.5-8.1       GNU C Library: Shared libraries an
ii  libgcc1                  1:4.0.2-4       GCC support library
ii  libxau6                  6.8.2.dfsg.1-11 X Authentication library
ii  libxdmcp6                6.8.2.dfsg.1-11 X Display Manager Control Protocol
ii  xserver-common           6.8.2.dfsg.1-11 files and utilities common to all 
ii  zlib1g                   1:1.2.3-8       compression library - runtime

Versions of packages xserver-xorg recommends:
pn  discover | discover1     <none>          (no description available)
pn  laptop-detect            <none>          (no description available)
pn  mdetect                  <none>          (no description available)
ii  xlibs                    6.8.2.dfsg.1-11 X Window System client libraries m
pn  xresprobe                <none>          (no description available)

-- debconf information excluded
--- xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c.orig	2005-10-16 15:58:58.000000000 +0200
+++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_video.c	2005-10-16 15:59:34.000000000 +0200
@@ -993,7 +993,7 @@
     RADEONPortPrivPtr	pPriv = (RADEONPortPrivPtr)data;
     Bool		setTransform = FALSE;
 
-    info->accel->Sync(pScrn);
+    if (info->accelOn) info->accel->Sync(pScrn);
 
 #define RTFSaturation(a)   (1.0 + ((a)*1.0)/1000.0)
 #define RTFBrightness(a)   (((a)*1.0)/2000.0)

Reply to: