Nvidia Facile - Installation des pilotes nvidia pour Debian

En essayant d’installer la dernière version des drivers nvidia (la 180.29), j’ai eu un problème lors de l’installation avec module-assistant, à savoir que le driver actuel ne fonctionne pas sur les kernels avec Xen. J’ai vu quelques topics sur la question, mais pas vraiment de solution, à part recompiler son kernel, ce dont je n’ai pas une envie folle. Existe-t-il un moyen de contourner ce problème ou doit-on juste attendre que le nvidia-kernel soit disponible dans les dépots en version 180 ?

Chez moi

$ apt-cache policy nvidia-kernel-source
nvidia-kernel-source:
  Installé : 180.29-1
  Candidat : 180.29-1
 Table de version :
 *** 180.29-1 0
        970 http://ftp.fr.debian.org sid/non-free Packages
        100 /var/lib/dpkg/status
     173.14.09-5 0
        500 http://ftp.fr.debian.org lenny/non-free Packages
        900 http://ftp.fr.debian.org squeeze/non-free Packages

je suis en noyau 2.6.26-1-amd64

Bonjour,

Comme promis, voici le verdict :

Non, plus sérieusement, quelques remarques sur le driver installé à la façon Debian :

Le plus : Écran ne clignote pas, enfin une fois, il a clignoté une seule fois seulement. Ce qui est nettement bien qu’avec l’ancien driver, où lorsque ça commence à clignoter ça ne s’arrête plus.

Le moins : Chargement un tout petit peu plus lent : hé oui, depuis le moment ou je fais : startx jusqu’au l’affichage du bureau c’est plus lent qu’avec le driver du run.sh

Enfin, je suis content de ce driver. et merci encore pour ce tuto.

@debianhadic : c’est ce kernel que je n’arrive pas à compiler avec m-a. Je voulais parler des kernel nvidia pré-compilés (du type nvidia-kernel-2.6.26-686) qui sont encore en version 173.

$ apt-cache policy nvidia-kernel-2.6.26-1-amd64
nvidia-kernel-2.6.26-1-amd64:
  Installé : 180.29-1+2.6.26-13
  Candidat : 180.29-1+2.6.26-13
 Table de version :
 *** 180.29-1+2.6.26-13 0
        100 /var/lib/dpkg/status
     173.14.09+3 0
        500 http://ftp.fr.debian.org lenny/non-free Packages
        900 http://ftp.fr.debian.org squeeze/non-free Packages
        970 http://ftp.fr.debian.org sid/non-free Packages

Donc il ne faut pas utiliser celui des dépôts mais suivre le tuto pour se le créer tout seul …

Le problème c’est que je n’arrive pas à le créer via module-assistant à cause du fait que mon kernel ait Xen d’activé. D’où ma question : faut-il recompiler son kernel en désactivant xen pour que ça marche ou existe-t-il un autre moyen ?

As-tu lu ça :
viewtopic.php?f=8&t=14010 ?

Oui, c’est pour ça que je demandais s’il y avait d’autres solution, à part recompiler son kernel. Au pire, ce n’est pas très grave, j’attendrais les prochains drivers :smiley:

j’ai essayé d’installer les modules pour le tout nouveau noyau 2.6.29.
1ere opération installer linux-kbuild-2.6.29 (qui n’est pas dans les dépots ) à partir des sources
ensuite reboot sur noyau 2.6.29 plantage logique de X et coup de module assistant

La compilation plante donc pas moyen d’avoir le pilote j’ai du repasser au pilote nv… du moins pour ce noyau j’ai toujoures le 2.6.26 ok

... /usr/src/modules/nvidia-kernel/nv-linux.h:578:2: error: #error "NV_KMEM_CACHE_CREATE() undefined (kmem_cache_create() unavailable)!" /usr/src/modules/nvidia-kernel/nv-linux.h:675:2: error: #error "NV_SMP_CALL_FUNCTION() undefined (smp_call_function() unavailable)!" /usr/src/modules/nvidia-kernel/nv-linux.h:695:2: error: #error "NV_ON_EACH_CPU() undefined (on_each_cpu() unavailable)!" In file included from /usr/src/modules/nvidia-kernel/nv.c:14: /usr/src/modules/nvidia-kernel/nv-linux.h: In function ‘nv_execute_on_all_cpus’: /usr/src/modules/nvidia-kernel/nv-linux.h:713: error: implicit declaration of function ‘NV_ON_EACH_CPU’ /usr/src/modules/nvidia-kernel/nv-linux.h: At top level: /usr/src/modules/nvidia-kernel/nv-linux.h:877: error: conflicting types for ‘pm_message_t’ /usr/src/linux-headers-2.6.29-1-common/include/linux/pm.h:41: error: previous declaration of ‘pm_message_t’ was here /usr/src/modules/nvidia-kernel/nv.c:369: warning: initialization from incompatible pointer type /usr/src/modules/nvidia-kernel/nv.c: In function ‘nv_kern_cpu_callback’: /usr/src/modules/nvidia-kernel/nv.c:1265: error: implicit declaration of function ‘NV_SMP_CALL_FUNCTION’ /usr/src/modules/nvidia-kernel/nv.c: In function ‘nvidia_init_module’: /usr/src/modules/nvidia-kernel/nv.c:1305: error: implicit declaration of function ‘NV_KMEM_CACHE_CREATE’ /usr/src/modules/nvidia-kernel/nv.c:1305: error: expected expression before ‘nv_stack_t’ /usr/src/modules/nvidia-kernel/nv.c:1315: error: implicit declaration of function ‘NV_KMEM_CACHE_DESTROY’ /usr/src/modules/nvidia-kernel/nv.c:1414: error: expected expression before ‘nv_pte_t’ /usr/src/modules/nvidia-kernel/nv.c: In function ‘nv_kern_open’: /usr/src/modules/nvidia-kernel/nv.c:2011: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type /usr/src/modules/nvidia-kernel/nv.c:4037:6: warning: "NV_AGP_BACKEND_ACQUIRE_ARGUMENT_COUNT" is not defined /usr/src/modules/nvidia-kernel/nv.c: In function ‘nv_agp_init’: /usr/src/modules/nvidia-kernel/nv.c:4054: error: too few arguments to function ‘agp_backend_acquire’ /usr/src/modules/nvidia-kernel/nv.c:4056: error: too few arguments to function ‘agp_backend_release’ make[6]: *** [/usr/src/modules/nvidia-kernel/nv.o] Erreur 1 make[5]: *** [_module_/usr/src/modules/nvidia-kernel] Erreur 2 make[4]: *** [sub-make] Erreur 2 make[3]: *** [all] Erreur 2 make[3]: quittant le répertoire « /usr/src/linux-headers-2.6.29-1-amd64 » NVIDIA: left KBUILD. nvidia.ko failed to build! make[2]: *** [module] Erreur 1 make[2]: quittant le répertoire « /usr/src/modules/nvidia-kernel » make[1]: *** [build-stamp] Erreur 2 make[1]: quittant le répertoire « /usr/src/modules/nvidia-kernel » make: *** [kdist_image] Erreur 2

aujourd’hui le kbuild est disponible dans les dépots … GO !

Marche pô !

l’aurai bien parié tiens!!!

En général tant que le paquet virtuel linux-image-xxx ne point pas sur le nouveau noyau, c’est que tout n’est pas finalisé …

Ca marche nickel avec le noyau 2.6.29 de sidux
y’a pas moyen de recopier ce module pour le faire aller sur celui de debian?
je sais c’est foireux comme solution…

Mouais, je me suis compile un noyau 2.6.29 avec les patchs Debian et le patch RT d’Ingo Molnar cet apres-midi, marche tres tres bien, mais pour kbuild et nvidia j’ai essaye d’adapter ca :

[quote]I backported the linux-kbuild-2.6.29 package just now, and managed to install the 2.6.29 kernel headers :slightly_smiling:

Easy to do as well…

  1. Make sure the ubuntu repositories are all enabled in synaptic, as well as the 64 studio 3.0 repositories.
  2. Add the following repository to your sources.list
  1. In terminal:
  • sudo apt-get update
  • sudo apt-get build-dep linux-kbuild-2.6.29
  • mkdir kbuild
  • cd kbuild
  • sudo apt-get -b source linux-kbuild-2.6.29
  • sudo dpkg -i *.deb

Now that the kbuild package is installed, the headers can be installed:

  • sudo apt-get install linux-headers-2.6.29-1-all[/quote]

Mais marche pas quand meme au moment de compiler nvidia, veut pas du kbuild.

J’ai tenté d’installer (de nouveau) les derniers drivers nvidia (180.44) avec module-assistant sur le kernel 2.6.26 et j’obtiens le message d’erreur suivant :

Je pense qu’il faut rajouter un lien entre le nvidia.ko créé et la place à laquelle le script va le chercher, mais je ne sais pas vraiment où aller modifier ça.

Bon, j’ai résolu mon problème de façon un peu violente (mais qui marche !).

rm -rf /usr/src/modules/nvidia-kernel/
cd /usr/src
tar xjvf nvidia-kernel.tar.bz2
cd modules/nvidia-kernel/debian
cp control.template control
m-a a-i -i nvidia
apt-get install nvidia-glx

En gros, il devait rester d’anciens fichiers de configuration qui devaient compromettre la compilation. En revanche dans la dernière tarball de nvidia-kernel-source, il n’y a pas le fichier control, donc j’ai du le copier depuis control.template (je vais me renseigner un peu pour savoir à quoi sert ce fichier).

Bref, cela devenait assez urgent, la mise à jour de xserver-xorg-core de sid m’empêchant d’utiliser le driver précédent (c’est parfois épique d’utiliser la sid !).

Bon au final, grosse amélioration ! Le nouveau driver est nettement plus fluide, l’affichage des fenêtres est quasi-instantané (gain très impressionant sur nautilus !), le démarrage de xfce beaucoup plus rapide. Je n’ai plus les quelques soucis que j’avais avec l’option Composite, plus de freeze sur imdb.

En revanche, mon touchpad ne marche pas terrible avec le nouveau xorg (plus de clic au tapotement, l’ascenceur ne fonctionne plus…), j’espère que ce bug sera vite réglé, car c’est assez embêtant :confused:

Alors la, je dis bravo ! avec le nettoyage tout fonctionne nickel ! je suis en 2.6.29-2-amd64 et pilote nvidia ! je vais rajouter ta manip en fin de tuto pour ceux pour lesquels ça ne marche pas.

Bravo aussi !
Et surtout, merci !
Sinon, j’étais mal partie pour me sortir de mon problème d’écran blanc.

merveilleux! depuis le temps que j’attendais de pouvoir retrouver une accélération 3d sur mon 2.6.29! Car l’ext4 c’est bien mignon, mais bon, ne plus pouvoir booter sur 2.6.26 pour avoir cette accélération…

Cependant, le bug sera résolu dans une prochaine mise à jour j’imagine, non?, ou sinon, il faut faire passer cette astuce!

edit : ah ben non en fait, marche pas, X ne parvient pas à charger le module nvidia apparement…

EE) NVIDIA(0): Failed to initialize the NVIDIA kernel module! Please ensure (EE) NVIDIA(0): that there is a supported NVIDIA GPU in this system, and (EE) NVIDIA(0): that the NVIDIA device files have been created properly. (EE) NVIDIA(0): Please consult the NVIDIA README for details. (EE) NVIDIA(0): *** Aborting ***

re edit : hont à moi, je n’avais pas installé nvidia-glx (je croyais l’avoir depuis longtemps pourtant…) merci pour ta méthode qui marche très très bien!