# [fglrx] Pas de 3D

## bouyafa

Bonjour,

Aujourd'hui j'ai décidé d'enlever une option de mon kernel (celle qui dérangeait udev depuis quelques temps). J'ai donc recompilé mon kernel, puis mon driver ati-drivers. Seulement depuis pas moyen de récupérer la 3D. J'ai recompilé le MEME kernel, et j'ai booté dessus avant de compiler ati-drivers, alors je ne comprends pas trop là ...

```
(II) fglrx(0): detected X.org 7.4.3.0

(EE) fglrx(0): atiddxDriScreenInit failed, GPS not be

(WW) fglrx(0): **************************************

(WW) fglrx(0): * DRI initialization failed!          

(WW) fglrx(0): * (maybe driver kernel module missing 

(WW) fglrx(0): * 2D acceleraton available (MMIO)     

(WW) fglrx(0): * no 3D acceleration available        

(WW) fglrx(0): **************************************

(II) fglrx(0): FBADPhys: 0x0 FBMappedSize: 0x04000000

(II) fglrx(0): FBMM initialized for area (0,0)-(1280,

(II) fglrx(0): FBMM auto alloc for area (0,0)-(1280,8

ssumption)

(II) fglrx(0): Largest offscreen area available: 1280

(==) fglrx(0): Backing store disabled

```

J'ai évidemment bien controlé avec eselect ati que tout était en place, vraiment je ne comprends pas. Alors, sinon oui j'utilise cette version de ati-drivers, pas une autre, je suis sur un PC en qui a une carte graphique AGP.

Merci pour vos idées  :Smile: 

----------

## bouyafa

Euh mais ça interesse si peu de monde que ça ?  :Sad: 

----------

## boozo

'alute

jette un oeil là-dessus voir si c'est mieux ?

----------

## bouyafa

Re,

En fait, non, j'avais déjà vu ça, et contrôlé mes options kernel. Quant à eselect opengl, je l'avais aussi déjà fait. Le plus génant est que c'est le même kernel, et tout est en version identique. Je n'ai fais que enlever une option et j'ai recompilé le noyau. Dans le message que j'ai, il y a un WARNING sur les versions xorg et ati-drivers, mais là aussi je n'ai rien touché, je rajouterai même que j'ai tout maské depuis un certain temps. 

Par contre, je n'ai pas écrasé mon ancien kernel. J'ai repoussé le bzImage en /boot/{même kernel}b . 

```
kernel-2.6.28-r4b
```

```
 # grep UNUSED_SYMBOLS /usr/src/linux/.config

CONFIG_UNUSED_SYMBOLS=y

```

```
# eselect opengl list

Available OpenGL implementations:

  [1]   ati *

  [2]   xorg-x11

```

 *Quote:*   

>  # uname -a
> 
> Linux roder 2.6.28-gentoo-r4 #5 SMP Tue Nov 24 18:07:08 CET 2009 i686 Intel(R) Pentium(R) 4 CPU 3.40GHz GenuineIntel GNU/Linux

 

Alors moi je sous entends une idée ... mais bon ... J'étais en train de chercher du côté de mon Makefile du kernel, et de l'EXTRAVERSION. Je pense mais je ne suis pas sûr que le soucis est bien sur la version kernel ... 

```
VERSION = 2

PATCHLEVEL = 6

SUBLEVEL = 28

EXTRAVERSION = -gentoo-r4

NAME = Erotic Pickled Herring

```

Ca devient vraiment génant ces histoire en fait, j'ai deux machines qui sont dans le même 'état'. Et je ne compte pas acheter du PCIe pour le moment ...

----------

## xelif

selon le message d'erreur que tu as posté, à savoir :

```

**************************************

(WW) fglrx(0): * DRI initialization failed!         

(WW) fglrx(0): * (maybe driver kernel module missing

(WW) fglrx(0): * 2D acceleraton available (MMIO)     

(WW) fglrx(0): * no 3D acceleration available       

```

on pourrait penser qu'un module dri du noyau entre en conflit avec celui du pilote x11

as tu désactivé le DRI dans le noyau ? Si oui as tu réinstallé les pilotes liés au noyau après ta mise à jour? 

si tu n'as pas installé module-rebuild

```

emerge -av module-rebuild

module-rebuild populate

module-rebuild rebuild

```

et si tu as dejà cet outils fais juste

```

module-rebuild rebuild

```

au cas ou que donne un dmesg au moment du chargement du pilote ATI?

----------

## boozo

Bon soit.

Tu dis avoir enlevé une seule et unique option : laquelle ? peut-on voir un diff entre les 2 .config stp histoire de s'en assurer [/quote](tu peux également vérifier depuis les config.gz des 2 versions du noyau par la même occasion)

En subsidiaire même si cela te semble trivial, est-ce que le lien symbolique linux pointe vers les mêmes sources entre la version antérieure qui fonctionne et celle-ci ?

----------

## bouyafa

Re,

Merci pour vos idées ... bien donc oui j'avais module-rebuild et je l'avais déjà exécuté, comme à chaque changement de kernel d'ailleurs. 

```
 # module-rebuild populate 

** Module already exists in moduledb.

** Setting media-libs/svgalib-1.9.25; rebuild=1.

** Module already exists in moduledb.

** Setting x11-drivers/ati-drivers-8.593; rebuild=1.

```

Les deux sont faits donc ...

Concernant mon lien sur le répertoire linux, oui il n'a pas changé, et il pointe toujours sur les même sources que j'utilisais avant. J'ai d'ailleurs trouvé bizarre qu'il me recompile tout un kernel, je pensais que ça irait plus vite. 

L'option que j'ai enlevé est celle concernant udev : 

```
# grep DEPRECATED /usr/src/linux/.config

# CONFIG_SYSFS_DEPRECATED_V2 is not set

```

J'ai :

 *Quote:*   

> cd /usr/src/linux && make oldconfig (Là vu la liste, j'ai 'ENTER' par défaut toutes les propositions) && make menuconfig (j'ai enlevé l'option dans General Setup) && make && make modules_install

 

Quant à DRI : 

```
  | |    < > Direct Rendering Manager (XFree86 4.1.0 and higher DRI suppor| |  

```

Voilà j'espère avoir pasté le nécessaire. Sinon je ne peux pas vérifier en faisant un diff sur ma config, il faudrait que je reboot la machine là, c'est possible bien entendu je le ferais pour le prochain reply, j'ai un truc en cours là c'est pas facile.

Merci encore à vous

----------

## bouyafa

Voici le diff de l'ancien kernel avec le nouveau : 

```
$ diff la la2

4c4

< # Tue Nov 24 17:43:49 2009

---

> # Thu Oct  8 13:09:01 2009

77c77,78

< # CONFIG_SYSFS_DEPRECATED_V2 is not set

---

> CONFIG_SYSFS_DEPRECATED=y

> CONFIG_SYSFS_DEPRECATED_V2=y

```

Merci  :Smile: 

----------

## boozo

 *bouyafa wrote:*   

> make oldconfig (Là vu la liste, j'ai 'ENTER' par défaut toutes les propositions)

 

Je ne suis pas certain de mon analyse mais je pense qu'il y a un truc qui cloche depuis cette étape... dès lors, tu as déjà écrasé ton ancien .config (cad la version où le dri fonctionnait v.N-2) et le diff que tu montres là est la v.N-1 (le fichier "la") qui a encore l'option CONFIG_SYSFS_DEPRECATED versus la version "la2" est celle que tu as fait ensuite avec le make menuconfig (cad v.N) où effectivement tu as seulement enlevé l'option qui dérangait udev.

* Heuu... est-ce que je suis clair là ?   :Embarassed:   * 

Cad que dans le rep des sources en question, en faisant un ls -al tu ne dois avoir que 2 fichiers de conf avec des dates proches .config (=>"la2") et .config.old (=>"la") et la version du kernel antérieur (v.N-2) est partie aux oubliettes

Donc, à moins que tu ne conserves les versions des configs de façon pérenne et non ambigüe - auquel cas ce sera facile de vérifier si j'ai bon - le moyen qui reste pour confirmer comme je le marquais plus haut vu que tu as gardé le bzImage initial (et ssi tu as bien activé l'option pour embarquer le .config dedans) est encore de booter dessus et récupérer sa conf avec zgrep /proc/config.gz et là tu pourras comparer avec ta config "la2".

Coûte pas grand chose d'essayer non ?   :Wink: 

----------

## bouyafa

Re  :Smile: 

En fait, chaque "la*" est formé grâce à un 'zcat /proc/config.gz"

Donc le diff que j'ai donné au dessus, est celui obtenu par zcat en bootant sur chaque kernel. 

```
-rw-r--r--  1 root root   58060 nov.  24 17:43 .config

-rw-r--r--  1 root root   58075 oct.   8 13:09 .config.old
```

Et donc bien entendu le DRI ne fonctionne plus non plus avec mon ancienne version, mais là je n'ai pas testé de recompiler ati-drivers il faut dire.

Comment m'en sortir ... il ya des jours ou je me demande s'il ne faut pas laisser tomber l'AGP  :Wink: 

----------

## boozo

C'est bien çà alors ?!? et tu n'as aucun moyen d'avoir qqpart la config d'origine cad d'avant de faire le make oldconfig (v.N-2) et où le dri fonctionnait ? Faut a minima reproduire le pb pour voir à chaud les différences éventuelles des fichiers de conf entre le kernel avec dri fonctionnel et sans. 

Si oui, alors je ne vois guère d'autres solutions que checker toutes les entrées à la main point par point depuis un menuconfig pour voir si tout est ok et que des valeurs passées par défaut à ce moment là n'aient pas mis le brin qqpart  :Sad: 

btw, côté X tout va bien ? (version migrée récemment ? config à jour et/ou testé sans Xorg.conf le cas échéant ? etc...)

Edit: A la relecture j'ai un doute : la config "la" est-elle bien celle issue du bzImage qui est dans /boot et ou le DRI était encore fonctionnel ? si oui tu devrais pouvoir revenir à l'état antérieur alors ? Où tu as également écrasé ce bzImage là ?

*Vais y perdre mon latin à force...   :Laughing: *

Edit 2: Je m'excuse si j'insite mais je vais essayer de résumer autrement la séquence des événements pour être sûr qu'on ne râte pas qqch :

1°) Etat initial : bzImage avec DRI fonctionnel et Udev qui râle

2°) Etat M1 : make oldconfig blablabla => là il y a création du .config (aka pour moi v.N-1) et renommage de l'ancien où tout allait bien en .config.old (aka our moi v.N-2) that's all

3°) Etat M2 : make menuconfig pour suppression du sysfs deprecated + make blablabla => dès lors il y a création d'un nouveau .config (aka pour moi v.N) et écrasement de l'ancien .config.old (aka pour moi v.N-1) + création d'un nouveau bzImage et déloyement dans /boot avec renommage de l'ancienne image kernel correspondant à l'état initial 1°) 

Ai-je mal compris un truc ? Si la séquence est bonne tu peux donc revenir à l'état initial là sauf si tu as généré et pushé un autre bzImage ente la phase 2°) et 3°)

----------

## bouyafa

En fait tout s'est passé comme ça :

Sous le 2.6.28-r4 j'avais tout qui fonctionnait nickel, sauf ce message d'udev. Je suis donc allé dans mon /usr/src/linux, là en effet j'ai zappé de cp .config (chose que je fais habituellement), et j'ai fais un make oldconfig direct. Après avoir saisi par défaut, j'ai menuconfig, enlevé l'option, et make && make modules_install. J'ai donc 2 bzImage dans /boot, l'ancien 2.6.28-r4 (avec le pb udev) et un autre bzImage du même kernel donc, sans le pb udev. Mais now que celà soit sur un kernel ou un autre, le DRI ne fonctionne plus. Entre deux je n'ai upgradé aucun logiciel encore moins X ou ses drivers, j'ai juste recompilé ati-drivers lors de mon reboot sur le nouveau noyau. 

Sinon j'ai bien un .config.old dans mes sources : 

```
-rw-r--r--  1 root root   58060 nov.  24 17:43 .config

-rw-r--r--  1 root root   58075 oct.   8 13:09 .config.old

```

Si je diff ceux là :

```
 $ sudo diff .config .config.old 

4c4

< # Tue Nov 24 17:43:49 2009

---

> # Thu Oct  8 13:09:01 2009

77c77,78

< # CONFIG_SYSFS_DEPRECATED_V2 is not set

---

> CONFIG_SYSFS_DEPRECATED=y

> CONFIG_SYSFS_DEPRECATED_V2=y

```

On a la même chose donc. 

Moi aussi j'en perd un peu mon latin finalement ... 

Mes versions actuelles : 

```

[I] x11-drivers/ati-drivers (8.593@26/11/2009)

[I] x11-base/xorg-server (1.5.3-r7@14/07/2009)

```

Dsl je ne sais plus quoi rajouter pour obtenir votre aide ... Si tiens il faudrait que je test de rebooter sur l'ancien kernel et de recompiler ati-drivers ... si ça marchait je pourrais mettre le kernel en cause de manière évidente, ce qui n'est pas le cas là ...

----------

## boozo

En effet, comme signalé plus haut cela reste encore la meilleure façon de s'en assurer.

Une autre chose que tu peux faire par la même occasion, c'est faire un make clean et/ou make mrproper (/!\ Sauver ailleurs le .config avant de faire le second /!\) entre chaque test pour partir d'une base nette   :Wink: 

----------

## nemo13

bonjour,

cela ne réssoudra pas ton problème ;

un ruc cool dans le kernel est  *Quote:*   

> #
> 
> # General setup
> 
> #
> ...

 

cela te génère un noyo différent pour chauqe test que tu veux faire

par exemple : 

```
uname -r

2.6.30-gentoo-r5-a-vbox-kvm-intel
```

le prix en est :

un branche de plus dans dans /lib/modules ...

 *Quote:*   

> ls /lib64/modules/
> 
> total 56
> 
> drwxr-xr-x 14 root root 4096 Nov 26 23:11 .
> ...

 

une entrée de plus dans grub

mais tu ne perds plus tes différents .config 

A+

----------

