# [questions]ATI radeon et Intel Xorg (résolu)

## noobux

Salut à tous, j'ai récemment réussi à obtenir un server X fonctionnel en copiant un peu la config du live, mais depuis j'ai eu plusieurs problèmes je vais vous rapporter les éléments extactes avant toutes choses :

  Après copie de la config du liveDVD et l'avoir un peu afiné tout marche (pas de pb de graphisme) mais un lancement très long (Loading CEDAR Microcode lors du lancement du système et ça met trois plomb) et une erreur (drm_evergreen not found je crois). A ce stade c'est radeon qui est utilisé (source Xorg.0.log)

  Pour régler ce problème je compile radeon (qui était en dur [*] ) en module [M] mais là au reboot le système boot Xorg (avec kde) à l'aide de VESA (c'est moche et ça lag, les effets se désactivent) après plusieurs reboot le bug se fixe et j'obtiens un server  X pleinement fonctionnel sans erreur lors du démarrage (plus de loading CEDAR microcode et je boot en 12 seconde au lieu d'une minute). A ce stade c'est le driver intel qui est utilisé (source Xorg.0.log).

Note : quand c'est VESA qui  se lance lors du boot j'obtiens de très longs messages concernants radeon (je n'avais pas fait dmesg à l'époque donc je ne peux pas les rapporter).

  Avec intel tout marchait mais les videos/images se chargent mal, j'ai donc tenté fglrx (j'ai enlevé drm etc) mais ça n'a pas marché (blank screen). J'ai essayé de revenir en arrière et ça marchait mal car  même avec 1 recompilation kernel + unmerge ati-drivers fglrx restait, après suppression dans /lib et /lib64 ça remarche comme avant avec intel.

  Plus récemment (aujourdh'ui) j'ai voulu comme dans ma première expérience utiiliser radeon et pas intel (les dux sont libres) mais gardant radeon en module pour eviter l'erreur que j'ai mensionné au début, je dois à ce stade précisé que j'ai toujours (sauf pour fglrx) laissé modesetting on radeon by default et modesetting on  intel en [*] j'ai pensé que pour "forcer' l'utilisation de radeon (je ne peux pas le faire par xorg.conf ça ne marche pas si j'en ai un) je devais enlever le modesetting on intel by default, ce que jai fais et ... au reboot rien ne marche ( pas de server X), actuellement j'ai recompilé comme précédemment et ça refonctionne (avec intel).

J'ai au fur et à mesur conservé mes kernels et au fur et à mesure les anciens ne marchent plus (se mettent sur VESA), j'aimerais savoir à quoi cela est du, est-ce du au fait que les modules changent? (J'utilise genkernel !) 

Au finale je voudrais des infos sur ce que j'ai vécu car je ne comprends pas tout ce qui s'est passé avec mes drivers et j'aimerais savoir comment supprimer les kernels que je ne n'utilise plus ( pas comme dans la doc car là je veux juste supprimer des kernels d'une même version). Je dois juste supprimer les initramfs et initrd du /boot? Je voudrais aussi savori si c'est possible d'utiliser (comme sous windows) les 2 cartes sachant que je ne peux pas le faire via le bios. Au final je cherche à avoir un système qui boot bien (sans lag de 50 secondes) et qui ne lag pas avec les videos/images. J'ai mangé énormément de doc / post mais je n'ai pas trouvé de solution complète ^^.Last edited by noobux on Fri Jun 10, 2011 5:33 pm; edited 1 time in total

----------

## Magic Banana

Tu as essayé sans /etc/X11/xorg.conf? De nos jours, Xorg se configure bien tout seul (en utilisant les pilotes libres bien sûr).

----------

## noobux

Oui en effet je n'ai jamais eu de xorg.conf, mon système marchait parfaitement avant que je tente de passer à fglrx mais maintenant tout bug avec la configuration qui marchait au départ (j'ai pourtant recompiler le noyau avec la configuration exacte qui marchait ): modprobe radeon ne marche pas ou encore met un temps infini à se lancer (ne termine jamais). J'obtiens de longs messages d'erreurs au démarrage, actuellement  x marche à peu près 1 fois sur 3, ça semble aléatoire... ( Ca ne marche pas quand le boot du système plante et ça ne replante pas quand le boot du système marche).

Actuellement c'est avec les pilotes libres et la configuration kernel qui fonctionnait au départ (avant que je tente de changer à fglrx et que je bidouille).

Quand ça marche :

Voilà dmesg :

http://pastebin.com/Q7EkWtHG

Le Xorg.0.log :

http://pastebin.com/GgggupFW

Quand ça marche pas :

Voilà dmesg :

http://pastebin.com/es504kY2

Le Xorg.0.log :

http://pastebin.com/UaCg1eueLast edited by noobux on Tue Jun 07, 2011 4:01 pm; edited 1 time in total

----------

## Magic Banana

Le problème est là :

```
[ 280.506] (EE) Failed to load module "fbdev" (module does not exist, 0)
```

Quel est le contenu de ta variable VIDEO_CARDS dans /etc/make.conf ?

----------

## noobux

fbdev le problème? De souvenir il n'a jamais fonctionné, en VIDEO_CARDS j'ai RADEON et INTEL et tout fonctionnait vraiment il y a peu ça a bugé après une recompilation et maintenant c'est aléatoire ( j'ai radeon et intel car j'ai deux cartes graphiques comme dit plus haut ). Si je me souviens bien fbdev c'est quelque chose qui marche pas très bien je crois (du moins c'est pas beau).

EDIT : sur kernel seeds j'ai un début de piste sur le caractère aléatoire de l'erreur . Il semble en fait qu'il ne faille pas utiliser enable modeseting on radeon by default mais VESA VGA frame buffer. intelfb étant désormais vieux et instable. Je pense en effet que le problème doit venir de là car ma config de kernel est basé sur le liveDVD de gentoo qui affichait un écran noir une fois sur 3 ... Coincidence? Je ne pense pas ^^^. Je vais recompiler et observer les résultats.

----------

## noobux

J'ai compilé avec make && make modules_install mais après ça j'obtiens un kernel panic alors que j'ai bien la même configuration qu'avec le kernel genkernel. Je n'arrive plus à compiler avec make sans avoir de kernel panic ! D'où ça vient ? Je l'avais pourtant éjà fait plusieurs fois !. Lors du boot il me dit qu'il ne peut monter la partition root et que sda7 (mon /) est invalide ou n'existe pas alors que avec la même configuration (mais compilé via genkernel) le boot se passe sans panic. J'ai pourtant toutes les bonnes options dans filesystem. Ducoup je n'arrive plus qu'à faire des noyaux genkernels ça m'ennui un peu ... J'aimerais savoir d'où vient ce problème je ne lavais encore jamais vu. J'ai aussi remarqué que je n'avais pas de /etc/modules.autoload.d/kernel-2.6 je ne sais pas si c'est normal...

----------

## xaviermiller

As-tu aussi fait make modules_install ?

Chez moi, j'utilise le script suivant (pour installer dans /boot/kernels/gentoo64 :

```
#!/bin/bash

cd /usr/src/linux || exit 1

make -j3 || exit 1 

make -j3 modules_install || exit 1

cp .config /boot/kernels/gentoo64/config || exit 1

cp arch/x86/boot/bzImage /boot/kernels/gentoo64/vmlinuz || exit 1

module-rebuild rebuild || exit 1

echo OK !
```

----------

## noobux

Oui j'ai fais :

```
make && make modules_install
```

puis 

```
cp arch/x86_64/boot/bzImage /boot/gentoo-essai
```

Je me base sur la doc pour faire ça et ça marchait avant, c'est incompréhensible :p.

Je vais tenter un 

```
module-rebuild rebuild
```

EDIT : la commande :

```
module-rebuild rebuild
```

 ne marche pas : bash command not found.

----------

## xaviermiller

module-rebuild est un outil pour reconstruire les modules externes ; dans mon cas, c'est un pilote pour gérer le ventilateur de mon portable, et auparavant, c'était les pilotes propriétaires nVidia.

Pourrais-tu recommencer avec genkernel ? Il n'y a aucune honte à l'utiliser  :Wink: 

----------

## noobux

Du neuf (voir EDIT 3).

Ok ^^ je relance une compilation genkernel et je rapporte les résultats jen ai pour une quinzaine de minutes. Mais je veux vraiment savoir comment faire (re)marcher make & make modules_install a priori j'ai rien fait de mal ça devrait fonctionner   :Sad:  .

EDIT 1 : Je met du temps car je recherche des infos pour optimiser ma configuration. J'ai pas encore recompilé.

EDIT 2 : Je répondrais demain, désolé de la lenteur ^^.

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

EDIT 3 : J'ai compilé avec genkernel et ça marche bien, je n'arrive toujours pas à faire marcher make je ne comprends pas !!!! Besoin d"aide ! Et désolé du retard

----------

## Magic Banana

Vérifie déjà que tu suis bien les recommandation du manuel. Est-ce que ton système de fichier monté en / est bien compilé en dur (par opposition à "en module") ?

----------

## noobux

Tout d'abord j''ai définitivement résolu le problème de la carte graphique (xorg), il faut que ce soit intel (si les gpu radeon et intel sont présents) qui soit utilisé il faut avant tout validé (built-in) la partie agpart et selectionné intel dedans (pour l'avoir dans la section DRI), ensuite radeon et intel doivent être compilés en modules et modesetting on intel by default doit être coché (built in), il ne faut surtout pas cocher modesetting on radeon by default. Après ça plus de bug aléatoire et ça fonctionne parfaitement.

Sinon je n'arrive toujours pas pour mon pb avec make, oui mon fs est compilé en dur (pour ça que ça devrait pas planter !), c'est du ext4 (pour le / et aussi le /boot ) j'ai tout "built-in" sauf le mode debug, et je n'ai pas de problème quand j'utilise genkernel, c'est juste avec make je ne comprends pas ce qui se passe je vais refaire des essais aujourd'hui avec la version du kernel que je n'utilise pas.

EDIT : J'ai eu un problème (qui n'a pas duré et a disparu tout seul ....) je n'ai plus pu faire make menuconfig pendant une dizaine de minutes ... il manquait soit disant ncurse library.

----------

## Magic Banana

 *noobux wrote:*   

> je vais refaire des essais aujourd'hui avec la version du kernel que je n'utilise pas.

 

Bah non. Utilise la version que tu souhaites. Simplement copie l'image du noyau à un autre endroit et ajoute une ligne au chargeur de démarrage.

----------

## noobux

Oui ok je vais changer de place les images j'espère que ça changera un truc ..., je rajoute bien mes lignes dans le grub.conf (si je le faisais pas j'aurais un file not found) 

Lors du boot via un kernel compilé avec make j'ai systémiquement :

```
Unable to mount root with NFS

root device sda7 is not a valid device (0,2)
```

NFS est un système de fichier pour network c'est useless pour monter une partition et ça n'a rien à voir ... c'est pas normal... surtout que j'ai enlevé l'option.

C'est comme si make n'utilisait pas ma config, même si j'emploie des config valide j'ai l'erreur, ou alors encore l'image bzImage ne va pas dans arch/x86-64/boot/bzImage ... C'est comme si c'était toujours la même image en fait ...

Petite question, tu as un système 64bits multilib ou 32bits?

Re, cette fois j'ai encore compile avec une config qui marche parfaitement sous genkernel ( le make && make modules_install a duré 1 minute) mais par contre j'ai fais un cp arch/x86/boot/bzImage a la place x86_64, j'obtiens toujours le kernel panic mais j'ai cette fois :

```
VFS : Unable to mount root partition, invalid or unknow block

please select a valid root= device
```

En faisant cp x86 il ne parle plus de NFS mais de VFS, c'est n'importe quoi mais il faut me croire ! (j'ai jamais vu ça !). Je n'y ai pas pensé mais peut-être avec clean ça ferait quelque chose?

EDIT : Autre chose que j'ai oublié de dire ... tu vas rire .. il dit ça aussi :

```

sda7 is not a valid root device

Here are the available partitions :
```

Et il en met aucune   :Crying or Very sad:  .

Les étapes dans lesquels j'ai procédé :

1 - Je copie la config du live (qui marche !) dans /usr/src/linux.

2 - make -j5 && make -j5 modules_install

3 - cp arch/x86/boot/bzImage /boot/kernels/nomdukernel

Puis dans le grub :

```
title linux-2.6.38-gentoomake-r6

root (hd0,4)

kernel /boot/gentoo-64/kernel-2.6.38-gentoo-r6 root=/dev/sda7

title kernel-2.6.38-gentoomake-r6 (rescue)

root (hd0,4)

kernel /boot/gentoo-64/kernel-2.6.38-gentoo-r6 root=/dev/sda7 init=/bin/bb

```

----------

## Magic Banana

Montre nous /etc/fstab.

Sinon, je ne suis plus sur Gentoo depuis bien longtemps (j'utilise Trisquel GNU/Linux) mais je continue à hanter le forum.  :Laughing: 

----------

## noobux

Ok alors voilà mon /etc/fstab : (parfaitement fonctionnel avec les kernels genkernel ... non mais c'est vraiment pas logique ...)

```
# /etc/fstab: static file system information.

#

# noatime turns off atimes for increased performance (atimes normally aren't

# needed; notail increases performance of ReiserFS (at the expense of storage

# efficiency).  It's safe to drop the noatime options if you want and to

# switch between notail / tail freely.

#

# The root filesystem should have a pass number of either 0 or 1.

# All other filesystems should have a pass number of 0 or greater than 1.

#

# See the manpage fstab(5) for more information.

#

# <fs>                  <mountpoint>    <type>          <opts>          <dump/pass>

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.

/dev/sda5               /boot           ext4            noatime         1 2

/dev/sda6               none            swap            sw              0 0

/dev/sda7               /               ext4            noatime         0 1

/dev/cdrom              /mnt/cdrom      auto            noauto          0 0

/dev/sdb1               /mnt/USB        auto            noatime         0 0

#/dev/fd0               /mnt/floppy     auto            noauto          0 0

# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for

# POSIX shared memory (shm_open, shm_unlink).

# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will

#  use almost no memory if not populated with files)

shm                     /dev/shm        tmpfs           nodev,nosuid,noexec     0 0

```

Pendant le make (je ne sais pas si c'était important) j'ai vu ça : root device is (8, 7). J'ai compilé au moins 4 fois sinon (via make) et toujours une panic (le message 'erreur parle parfois de VFS parfois de NFS en bref il n'utilise pas l'ext4 ni l'ext2 ni l'ext3 ...

Ah autre chose, pendant le make il dit root device is (8, 7) (pour moi c'est /dev/sda7, (8, 7) est un affichage non valide ... J'ai essayé avec root=(8, 7) mais comme je le pensais ça a foiré en beauté ^^.

Desole du retard fallait le temps que je recompile avec genkernel pour pouvoir avoir internet etc ...

PS : sympa ta distro ^^.

----------

## Magic Banana

Tout à l'air très bien... Je suis à court d'idée. Tu as bien choisi, en dur, les options suivantes :

```
File systems --->

  Pseudo Filesystems --->

    [*] /proc file system support

    [*] Virtual memory file system support (former shm fs)
```

 *noobux wrote:*   

> PS : sympa ta distro ^^.

 

Et 100% libre (recommandée par la Free Software Foundation) !  :Very Happy: 

----------

## xaviermiller

[off]tu n'es plus sur *BSD ? que pasa mi banana ?[/off]

----------

## Magic Banana

 *XavierMiller wrote:*   

> [off]tu n'es plus sur *BSD ? que pasa mi banana ?[/off]

 

Je n'ai jamais été sur *BSD.  :Laughing:  Ça commence à faire un bon moment (2 ans peut-être) que je suis heureux avec Trisquel GNU/Linux. Par contre je m'ennuie (ça marche *trop* bien). Il se trouve que je devrais travailler au lieu de chercher sur le forum de Gentoo des problèmes plus durs que sur celui de Trisquel.  :Laughing: 

----------

## xaviermiller

Ok, je confonds avec notre modo diablotin  :Wink: 

----------

## noobux

Bon j'y suis allé à la barbare avec tout mais basolument tout compilé en dur (sans module support !) eh bien ... ça a marché ! Le mieux c'est que j'ai tout de même le bluetooth et le wifi ... il ne semble pas y avoir de chose qui manque  :Very Happy:  bon bref sujet résolu, au final ça venait bien de l'initrd mais je trouvais pas ou était l'erreur ( j'avais pourtant bien tout mis je crois, j'ai configuré une dizaine de fois) enfin tout le monde peut faire des erreurs   :Wink:  . Comme ça j'aurais déjà vu ce que c'est qu'une kernel panic (et j'en aurais encore je pense ^^).

Merci à vous pour votre aide ! Sujet résolu donc.

----------

## xaviermiller

Si tu joues avec initrd, utilise genkernel, il fait tout comme il faut  :Smile: 

----------

## Magic Banana

 *noobux wrote:*   

> au final ça venait bien de l'initrd mais je trouvais pas ou était l'erreur ( j'avais pourtant bien tout mis je crois, j'ai configuré une dizaine de fois).

 

J'avais zappé l'information selon laquelle tu utilisais initrd. Ne faut-il pas, dans ce cas, une ligne initrd dans /etc/grub.conf (ce que tu n'as pas)?

----------

## noobux

En fait ma configuration devait demander une initrd pour être fonctionnel, or comme je compilais via make je n'en avais pas, je ne pouvais donc pas charger certains modules avant de monter le root (sans ces même modules, que je n'ai pas encore identifiés je ne peux pas monter la root). Donc, quand je lançais le kernel compilé via make, il ne pouvait charger un (ou plusieurs je ne sais pas) modules nécessaire au montage de la root (mais ce n'était pas les FS que j'avais mis en dur).

La preuve est que le fait d'enlever "enable module support" (qui a tout mis en "built in" [*] ) à réglé le problème (tout s'est chargé sans besoin d'initrd). Je vais remettre des optiosn en modules petit à petit et identifier ce qui doit être built in [*] obligatoirement.

Via make il me semble que l'on n'utilise jamais d'initrd (un cp bzImage n'en fournit pas), on utilise modules.autoload.d je crois ( mais il faut que root soit déjà monté).

----------

