Package: xorg-server Version: 2:1.1.1-19 Severity: normal Tags: patch Hi,
ISTR this bug was filed already but since I can't find it anymore in the BTS, yet the bug is still there, I'm sending this bugreport. The attached hack comes from this bugreport: https://bugs.freedesktop.org/show_bug.cgi?id=7770 which explains at length what's going on. Basically, there's a "PCI domain mismatch between X server and the kernel, leaving clients unable to use direct rendering", which this one-liner fixes. This bug has been there for quite a long time (at least since the 1.0.X releases) and is a real PITA. And yes, I'm using a desktop ia64 system :) HTH T-Bone Other relevant data: [EMAIL PROTECTED]:~$ glxinfo name of display: :0.0 libGL error: open DRM failed (Operation not permitted) libGL error: reverting to (slow) indirect rendering display: :0 screen: 0 direct rendering: No [EMAIL PROTECTED]:~$ ls -l /dev/dri/card0 crw-rw-rw- 1 root root 226, 0 2007-03-01 18:44 /dev/dri/card0 in /var/log/Xorg.0.log: [...] (II) Initializing built-in extension XEVIE drmOpenDevice: node name is /dev/dri/card0 drmOpenDevice: open result is 11, (OK) drmOpenByBusid: Searching for BusID pci:0001:00:00.0 drmOpenDevice: node name is /dev/dri/card0 drmOpenDevice: open result is 11, (OK) drmOpenByBusid: drmOpenMinor returns 11 drmOpenByBusid: drmGetBusid reports pci:0000:00:00.0 drmOpenDevice: node name is /dev/dri/card1 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card2 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card3 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card4 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card5 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card6 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card7 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card8 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card9 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card10 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card11 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card12 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card13 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 drmOpenDevice: node name is /dev/dri/card14 drmOpenDevice: open result is -1, (No such device) drmOpenDevice: open result is -1, (No such device) drmOpenDevice: Open failed drmOpenByBusid: drmOpenMinor returns -19 (EE) AIGLX error: drmOpen failed (Operation not permitted) (EE) AIGLX: reverting to software rendering -- System Information: Debian Release: 4.0 APT prefers testing APT policy: (500, 'testing') Architecture: ia64 Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-4-mckinley Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
diff --git a/hw/xfree86/dri/dri.c b/hw/xfree86/dri/dri.c index 7b4d5bd..1715590 100644 --- a/hw/xfree86/dri/dri.c +++ b/hw/xfree86/dri/dri.c @@ -249,6 +249,8 @@ DRIScreenInit(ScreenPtr pScreen, DRIInfo return FALSE; } + pDRIPriv->pDriverInfo->busIdString = drmGetBusid(fd); + *pDRMFD = pDRIPriv->drmFD; DRIDrvMsg(pScreen->myNum, X_INFO, "[drm] created \"%s\" driver at busid \"%s\"\n",