Forum Linux.général "DRI or not DRI?" or "ati et la 3D!"

Posté par  .
Étiquettes : aucune
0
8
mai
2005
Salut forum,

j'espère que tu pourras m'aider parceque là je suis bien largué!

Il y a deux jours je me suis mis en tête de rejouer à neverwinter, maintenant que j'ai internet. J'ai donc voulu installer les pilotes pour ma carte vidéo (une radeon 9500 pro).

Premier problème:
Les pilotes ati ne compilent plus sur le kernel 2.6.11.x J'ai donc cherché une solution et j'ai trouvé des patch
http://ati.cchtml.com/show_bug.cgi?id=110(...)
Je les ai appliqués, la compile est passée :).

Je reboot, je modifie mon /etc/X11/xorg.conf, je m'assure d'utiliser la bonne libGL.so.

$ ls -o /usr/X11R6/lib/libGL.so*
lrwxrwxrwx 1 xorg 12 2005-05-08 01:11 /usr/X11R6/lib/libGL.so -> libGL.so.1.2
lrwxrwxrwx 1 xorg 12 2005-05-08 01:11 /usr/X11R6/lib/libGL.so.1 -> libGL.so.1.2
-rwxr-xr-x 1 fglrx 776K 2005-05-08 01:21 /usr/X11R6/lib/libGL.so.1.2

Ok, super. Je peus lancer X.

Arrivé sous X, les vrais problèmes commencent glxgears me renvoie direct sur la console, d'aprés /var/log/Xorg.0.log le DRI est bien activé, d'aprés fglrxinfo non et d'aprés glxinfo non plus :(


$ fglrxinfo
display: :0.0 screen: 0
OpenGL vendor string: Mesa project: www.mesa3d.org
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.2 (1.5 Mesa 6.2.1)

$ glxinfo
name of display: :0.0
display: :0 screen: 0
direct rendering: No
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_EXT_import_context, GLX_OML_swap_method, GLX_SGI_make_current_read,
GLX_SGIS_multisample, GLX_SGIX_fbconfig
client glx vendor string: ATI
client glx version string: 1.3
client glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context,
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_ATI_pixel_format_float,
GLX_ATI_render_texture
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context,
GLX_ARB_multisample
OpenGL vendor string: Mesa project: www.mesa3d.org
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.2 (1.5 Mesa 6.2.1)

et pour /var/log/Xorg.0.log

(II) fglrx(0): UMM area: 0xc0501000 (size=0x07aff000)
(II) fglrx(0): driver needs X.org 6.8.x
(II) fglrx(0): detected X.org 6.8.2
(II) Loading extension ATIFGLRXDRI
(II) fglrx(0): doing DRIScreenInit
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenByBusid: Searching for BusID PCI:2:0:0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenByBusid: drmOpenMinor returns 7
drmOpenByBusid: drmGetBusid reports
...
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 7, (OK)
drmGetBusid returned ''
(II) fglrx(0): [drm] DRM interface version 1.0
(II) fglrx(0): [drm] created "fglrx" driver at busid "PCI:2:0:0"
(II) fglrx(0): [drm] added 8192 byte SAREA at 0xf8a97000
(II) fglrx(0): [drm] mapped SAREA 0xf8a97000 to 0xb7d40000
(II) fglrx(0): [drm] framebuffer handle = 0xc0000000
(II) fglrx(0): [drm] added 1 reserved context for kernel
(II) fglrx(0): DRIScreenInit done
(II) fglrx(0): Kernel Module Version Information:
(II) fglrx(0): Name: fglrx
(II) fglrx(0): Version: 8.12.10
(II) fglrx(0): Date: Apr 4 2005
(II) fglrx(0): Desc: ATI FireGL DRM kernel module
(II) fglrx(0): Kernel Module version matches driver.
(II) fglrx(0): Kernel Module Build Time Information:
(II) fglrx(0): Build-Kernel UTS_RELEASE: 2.6.11.8test
(II) fglrx(0): Build-Kernel MODVERSIONS: no
(II) fglrx(0): Build-Kernel __SMP__: no
(II) fglrx(0): Build-Kernel PAGE_SIZE: 0x1000
(II) fglrx(0): [drm] register handle = 0xd1000000
(II) fglrx(0): [agp] Mode=0x1f00421b bridge: 0x10de/0x01e0
(II) fglrx(0): [agp] AGP v1/2 disable mask 0x00000000
(II) fglrx(0): [agp] AGP v3 disable mask 0x00000000
(II) fglrx(0): [agp] enabling AGP with mode=0x1f00431a
(II) fglrx(0): [agp] AGP protocoll is enabled for grafics board. (cmd=0x1f004312)
(II) fglrx(0): [agp] grafics chipset has AGP v3.0 (native mode)
(II) fglrx(0): [drm] ringbuffer size = 0x00100000 bytes
(II) fglrx(0): [drm] DRM buffer queue setup: nbufs = 100 bufsize = 28672
(II) fglrx(0): [drm] texture shared area handle = 0xf8c81000
(II) fglrx(0): shared FSAAScale=1
(II) fglrx(0): DRI initialization successfull!
(II) fglrx(0): FBADPhys: 0xc0000000 FBMappedSize: 0x00501000
(II) fglrx(0): FBMM initialized for area (0,0)-(1024,1281)
(II) fglrx(0): FBMM auto alloc for area (0,0)-(1024,768) (front color buffer - assumption)
(**) fglrx(0): Option "BackingStore"
(**) fglrx(0): Backing store enabled
(==) fglrx(0): Silken mouse enabled
(II) fglrx(0): Using hardware cursor (scanline 768)
(II) fglrx(0): Largest offscreen area available: 1024 x 505
(**) Option "dpms"
(**) fglrx(0): DPMS enabled
(II) fglrx(0): Using XFree86 Acceleration Architecture (XAA)
Screen to screen bit blits
Solid filled rectangles
8x8 mono pattern filled rectangles
Solid Lines
Dashed Lines
Offscreen Pixmaps
Setting up tile and stipple cache:
24 128x128 slots
(II) fglrx(0): Acceleration enabled
(II) fglrx(0): X context handle = 0x00000001
(II) fglrx(0): [DRI] installation complete
(II) fglrx(0): Direct rendering enabled
(II) fglrx(0): v4l[/dev/video0]: using hw video scaling [YUY2].
(**) fglrx(0): Video overlay enabled on CRTC1
(II) Loading extension FGLRXEXTENSION
(II) Loading extension ATITVOUT
(==) RandR enabled
(II) Setting vga for screen 0.
(II) Initializing built-in extension MIT-SHM
(II) Initializing built-in extension XInputExtension
(II) Initializing built-in extension XTEST
(II) Initializing built-in extension XKEYBOARD
(II) Initializing built-in extension LBX
(II) Initializing built-in extension XC-APPGROUP
(II) Initializing built-in extension SECURITY
(II) Initializing built-in extension XINERAMA
(II) Initializing built-in extension XFIXES
(II) Initializing built-in extension XFree86-Bigfont
(II) Initializing built-in extension RENDER
(II) Initializing built-in extension RANDR
(II) Initializing built-in extension COMPOSITE
(II) Initializing built-in extension DAMAGE
(II) Initializing built-in extension XEVIE
...


Et pour fgl_glxgears il plante en me disant:

X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 130 (GLX)
Minor opcode of failed request: 5 (X_GLXMakeCurrent)
Serial number of failed request: 33
Current serial number in output stream: 33


J'ai voulu me rabatre sur le noyau 2.6.10, mais j'ai eu exactement le même résultat. Si quelqu'un a une idée, autre que balancer ma carte par la fenêtre ;).

Ma config: linux 2.6.{9,10,11.8}, xorg 6.8.2, fglrx 8.12.10
  • # Essaye de voir ce qu'ouvre glxinfo et fgl_glxgears

    Posté par  (site web personnel) . Évalué à 2.

    Avec strace :

    strace glxinfo 2>&1| grep open

    et

    strace fgl_glxgears 2>&1| grep open > /tmp/toto

    les première ligne pourrait être intessantes,poste les ici
    • [^] # Re: Essaye de voir ce qu'ouvre glxinfo et fgl_glxgears

      Posté par  . Évalué à 1.

      $ strace glxinfo 2>&1| grep open
      open("/etc/ld.so.cache", O_RDONLY)      = 4
      open("/usr/X11R6/lib/libGLU.so.1", O_RDONLY) = 4
      open("/usr/X11R6/lib/libGL.so.1", O_RDONLY) = 4
      open("/usr/X11R6/lib/libXext.so.6", O_RDONLY) = 4
      open("/usr/X11R6/lib/libX11.so.6", O_RDONLY) = 4
      open("/lib/libpthread.so.0", O_RDONLY)  = 4
      open("/lib/libm.so.6", O_RDONLY)        = 4
      open("/lib/libc.so.6", O_RDONLY)        = 4
      open("/usr/lib/libstdc++.so.6", O_RDONLY) = 4
      open("/usr/lib/libgcc_s.so.1", O_RDONLY) = 4
      open("/lib/libdl.so.2", O_RDONLY)       = 4
      open("/home/bildoon/.Xauthority", O_RDONLY) = 6
      open("/home/bildoon/.Xauthority", O_RDONLY) = 7
      open("/usr/X11R6/lib/modules/dri/fglrx_dri.so", O_RDONLY) = 7
      open("/etc/ld.so.cache", O_RDONLY)      = 7
      open("/lib/tls/i686/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      open("/lib/tls/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      open("/lib/i686/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      open("/lib/libstdc++.so.5", O_RDONLY)   = -1 ENOENT (No such file or directory)
      open("/usr/lib/tls/i686/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      open("/usr/lib/tls/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      open("/usr/lib/i686/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      open("/usr/lib/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      open("/usr/X11R6/lib/modules/dri/fglrx_dri.so", O_RDONLY) = 6
      open("/etc/ld.so.cache", O_RDONLY)      = 6
      open("/lib/libstdc++.so.5", O_RDONLY)   = -1 ENOENT (No such file or directory)
      open("/usr/lib/libstdc++.so.5", O_RDONLY) = -1 ENOENT (No such file or directory)
      
      $ strace fgl_glxgears 2>&1| grep open
      open("/etc/ld.so.cache", O_RDONLY)      = 4
      open("/usr/X11R6/lib/libGL.so.1", O_RDONLY) = 4
      open("/usr/X11R6/lib/libX11.so.6", O_RDONLY) = 4
      open("/usr/X11R6/lib/libXext.so.6", O_RDONLY) = 4
      open("/lib/libm.so.6", O_RDONLY)        = 4
      open("/lib/libc.so.6", O_RDONLY)        = 4
      open("/lib/libpthread.so.0", O_RDONLY)  = 4
      open("/lib/libdl.so.2", O_RDONLY)       = 4
      open("/home/bildoon/.Xauthority", O_RDONLY) = 6
      open("/home/bildoon/.Xauthority", O_RDONLY) = 7
      open("/usr/X11R6/lib/modules/dri/fglrx_dri.so", O_RDONLY) = 7
      ...
      
      Pour la deuxième j'ai pas tout mis (juste le début comme demandé).
      • [^] # Re: Essaye de voir ce qu'ouvre glxinfo et fgl_glxgears

        Posté par  (site web personnel) . Évalué à 2.

        Est-ce que tu as rebooté ta machine ou fait un ldconfig depuis l'installation de l'opengl ATI ?

        (C'est dur de voir le problème vu que j'ai une nvidia :S )
        • [^] # Re: Essaye de voir ce qu'ouvre glxinfo et fgl_glxgears

          Posté par  . Évalué à 1.

          Ouaip,

          installation du module fglrx et de la libGL en mode texte, redémarrage toujours sur la console (tant que tout n'est pas réglé je ne veus pas installer gdm), ldconfig pour être sur. Je lance X. Et je ne comprend plus rien, parcque d'un coté le log de X me dis que tout vas bien mais d'un autre coté c'est comme si effectivement la libGL de xorg était encore utilisée (alors qu'elle est archivée dans le home de root).

          Et puis il y a cette erreur de fgl_glxgears que je ne capte pas :
          X Error of failed request: BadMatch (invalid parameter attributes)
          Major opcode of failed request: 130 (GLX)
          Minor opcode of failed request: 5 (X_GLXMakeCurrent)
          Serial number of failed request: 33
          Current serial number in output stream: 33

          j'ai pas mal cherché sur google mais je n'ai rien trouvé de probant: que des posts sur des forums de la part de gens qui se plaignent que xawtv plante. La solution fournie étant à chaque fois d'utiliser xawtv -nogl.

          Tiens je viens de m'apercevoir d'un truc. j'étais surpris que la sortie de 'strace glxinfo 2>&1| grep open' me parle de la libstdc++.so.5 Ce que je n'avais pas vérifié c'est ce que ça donnait lorsque j'utilise le driver fourni par xorg plutot fglrx (ATI). En fait j'avais fais ldd libGL.so.1.2 et il n'y avais aucune référence à la libstdc++.so.5

          Ce qu'il fallait faire:
          $ ldd /usr/X11R6/lib/modules/dri/fglrx_dri.so
          ...
          libstdc++.so.5 => not found
          ...

          :))) enfin j'avance un peu. M'envai essayer un lien symbolique on peu toujours réver!


          $ ldd /usr/X11R6/lib/modules/dri/fglrx_dri.so
          /usr/X11R6/lib/modules/dri/fglrx_dri.so: /usr/lib/libstdc++.so.5: version `GLIBCPP_3.2' not found (required by /usr/X11R6/lib/modules/dri/fglrx_dri.so)
          /usr/X11R6/lib/modules/dri/fglrx_dri.so: /usr/lib/libstdc++.so.5: version `CXXABI_1.2' not found (required by /usr/X11R6/lib/modules/dri/fglrx_dri.so)
          linux-gate.so.1 => (0xffffe000)
          libm.so.6 => /lib/libm.so.6 (0xb7741000)
          libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0xb766f000)
          ...


          Bon évidement cela aurait été trops beau ;). Mais pourquoi vont-ils lier ça avec une vieille lib. Il ya encore des distribs qui l'utilisent? (a on me chuchotte: "peut-être la woody" ;)
          • [^] # Re: Essaye de voir ce qu'ouvre glxinfo et fgl_glxgears

            Posté par  . Évalué à 2.

            OUI !

            Génial, c'était ça :)))

            J'ai installé la libstdc++.so.5 à partir de gcc-3.3.6 et tout à l'air de fonctionner au poil.

            $ fglrxinfo
            display: :0.0 screen: 0
            OpenGL vendor string: ATI Technologies Inc.
            OpenGL renderer string: RADEON 9500 Pro Generic
            OpenGL version string: 1.3.5010 (X4.3.0-8.12.10)


            Merci à tous ceux qui ont postés. J'avais besoin de nouvelles directions pour chercher (strace, xdpyinfo)

            Bon y a plus qu'a essayer neverwinter. Vous ne connaitriez pas de bons modules/serveurs en français ;)
  • # xdpyinfo

    Posté par  . Évalué à 3.

    je propose que tu regardes également du coté de xdpyinfo. je sais pas si t'as ca sur ton pc, mais si tu l'as, je crois pas que ca passe par glxinfo pour aller récuperer ses infos, et donc tu auras pitet d'autres résultats...

    c'est à voir, et pour ce que ca coute d'essayer :D
    • [^] # Re: xdpyinfo

      Posté par  . Évalué à 1.

      > c'est à voir, et pour ce que ca coute d'essayer :D
      C'est clair, toutes les suggestions sont bonnes à prendre :).


      $ xdpyinfo
      name of display: :0.0
      version number: 11.0
      vendor string: The X.Org Foundation
      vendor release number: 60802000
      X.Org version: 6.8.2
      maximum request size: 16777212 bytes
      motion buffer size: 256
      bitmap unit, bit order, padding: 32, LSBFirst, 32
      image byte order: LSBFirst
      number of supported pixmap formats: 7
      supported pixmap formats:
      depth 1, bits_per_pixel 1, scanline_pad 32
      depth 4, bits_per_pixel 8, scanline_pad 32
      depth 8, bits_per_pixel 8, scanline_pad 32
      depth 15, bits_per_pixel 16, scanline_pad 32
      depth 16, bits_per_pixel 16, scanline_pad 32
      depth 24, bits_per_pixel 32, scanline_pad 32
      depth 32, bits_per_pixel 32, scanline_pad 32
      keycode range: minimum 8, maximum 255
      focus: window 0x1200004, revert to PointerRoot
      number of extensions: 30
      ATIFGLEXTENSION
      ATIFGLRXDRI
      ATITVOUT
      BIG-REQUESTS
      DOUBLE-BUFFER
      DPMS
      Extended-Visual-Information
      GLX
      MIT-SCREEN-SAVER
      MIT-SHM
      MIT-SUNDRY-NONSTANDARD
      RECORD
      RENDER
      SECURITY
      SGI-GLX
      SHAPE
      SYNC
      TOG-CUP
      X-Resource
      XC-APPGROUP
      XC-MISC
      XFree86-Bigfont
      XFree86-DGA
      XFree86-DRI
      XFree86-Misc
      XFree86-VidModeExtension
      XInputExtension
      XKEYBOARD
      XTEST
      XVideo
      default screen number: 0
      number of screens: 1

      screen #0:
      ...


      Rah, j'hallucine grave! Faut que j'aille me faire un café, je commence à regretter mon noyau 2.4. ![

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.