NetBSD-Bugs archive

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

xsrc/42287: KDE4 unusable with Intel graphic chipsets



>Number:         42287
>Category:       xsrc
>Synopsis:       KDE4 unusable with Intel graphic chipsets
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    xsrc-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Nov 08 21:45:00 +0000 2009
>Originator:     Uwe Krüger
>Release:        5-STABLE snapshot 20091102 (after xorg 1.6 pullup)
>Organization:
>Environment:
NetBSD shuttle 5.0_STABLE NetBSD 5.0_STABLE (GENERIC) #0: Mon Nov  2 16:10:10 
UTC 2009  
builds%b7.netbsd.org@localhost:/home/builds/ab/netbsd-5/amd64/200911020000Z-obj/home/builds/ab/netbsd-5/src/sys/arch/amd64/compile/GENERIC
 amd64
>Description:
When trying to use KDE4 with intel graphic chipsets (I've tested 945G and G33) 
in the default Xorg configuration various problems occur:
- the graphic is sometimes corrupted (things are drawn at the wrong
  place, distorted or not at all
- in paticular the panel is invisible though present
- very often the X-server crashes when loggin in. Here is a backtrace
  of such a crash:

# gdb /usr/X11R7/bin/Xorg Xorg.core                                            
...
Program terminated with signal 6, Aborted.
#0  0x00007f7ffc2dc26a in _lwp_kill () from /usr/lib/libc.so.12
(gdb) bt
#0  0x00007f7ffc2dc26a in _lwp_kill () from /usr/lib/libc.so.12
#1  0x00007f7ffc2dbb42 in abort () from /usr/lib/libc.so.12
#2  0x0000000000555658 in FatalError ()
#3  0x00007f7ffa042828 in I830WaitLpRing ()
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#4  0x00007f7ff9e04508 in drm_intel_bo_fake_disable_backing_store ()
   from /usr/X11R7/lib/libdrm_intel.so.0
#5  0x00007f7ff9e0550c in drm_intel_bufmgr_fake_evict_all ()
   from /usr/X11R7/lib/libdrm_intel.so.0
#6  0x00007f7ff9e057b9 in drm_intel_bufmgr_fake_evict_all ()
   from /usr/X11R7/lib/libdrm_intel.so.0
#7  0x00007f7ffa041d8e in intel_batch_flush ()
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#8  0x00007f7ffa0428bb in I830Sync ()
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#9  0x00007f7ffa038c96 in i830_refresh_ring ()
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#10 0x0000000000461b96 in AbortDDX ()
#11 0x000000000055508d in AbortServer ()
#12 0x0000000000555675 in FatalError ()
#13 0x00007f7ffa042828 in I830WaitLpRing ()
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#14 0x00007f7ffa038b7c in i830_refresh_ring ()
---Type <return> to continue, or q <return> to quit---
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#15 0x00007f7ffa039c5b in i830_update_front_offset ()
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#16 0x00007f7ffa03ac90 in i830_update_front_offset ()
   from /usr/X11R7/lib/modules/drivers//intel_drv.so
#17 0x000000000043a81c in AddScreen ()
#18 0x00000000004623b5 in InitOutput ()
#19 0x000000000043ae55 in main ()

>How-To-Repeat:
Try to run KDE4 (pkgsrc-2009Q3) on a recent netbsd-5 snapshot in the default 
configuration (no xorg.conf) on a computer with Intel chipset graphic.

>Fix:
The problems do not occur when specifying 'Option "AccelMethod" "XAA"' in 
xorg.conf, so it seems that the EXA acceleration is still somewhat broken. 
Unfortunatelly EXA is used by default unless "XAA" is specified explicitly.

Since XAA seems to be very mature it might be a good idea to set the default 
back to XAA (as it was some time ago) - at least for the upcomming NetBSD-5.1 
release. Here is a patch to do so:

--- /usr/xsrc/external/mit/xf86-video-intel/dist/src/i830_driver.c.orig 
2009-11-08 14:20:35.000000000 +0100
+++ /usr/xsrc/external/mit/xf86-video-intel/dist/src/i830_driver.c      
2009-11-08 16:22:00.000000000 +0100
@@ -1617,6 +1617,9 @@
 #ifdef I830_USE_EXA
        pI830->accel = ACCEL_EXA;
 #endif
+#ifdef I830_USE_XAA
+       pI830->accel = ACCEL_XAA;
+#endif
 #if I830_USE_XAA + I830_USE_EXA + I830_USE_UXA >= 2
        from = X_DEFAULT;
        if ((s = (char *)xf86GetOptValString(pI830->Options,
--- /usr/xsrc/external/mit/xf86-video-intel/dist/man/intel.man.orig     
2009-11-08 15:46:23.000000000 +0100
+++ /usr/xsrc/external/mit/xf86-video-intel/dist/man/intel.man  2009-11-08 
16:25:04.000000000 +0100
@@ -154,7 +154,7 @@
 code but taking advantage of kernel memory management to provide simpler,
 faster code.
 .IP
-Default: "UXA" if kernel-modesetting is available, "EXA" otherwise.
+Default: "UXA" if kernel-modesetting is available, "XAA" otherwise.
 .TP
 .BI "Option \*qModeDebug\*q \*q" boolean \*q
 Enable printing of additional debugging information about modesetting to



Home | Main Index | Thread Index | Old Index