RT kernel + Xorg

Résolu/Fermé
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 10 juin 2018 à 20:21
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 5 juil. 2018 à 08:22
Bonjour,
J'ai la dernière debian (stretch), et j'ai téléchargé le noyau temps réel.
Problème lorsque je démarre ma machine dessus, le serveur X ne se lance pas. Il met comme erreur qu'il ne trouve pas d'ecran ou d'affichage.
J'ai une carte Nvidia, avec normalement le pilote NVIDIA.
Je ne comprend pas ce qu'il se passe merci.


7 réponses

Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
2 juil. 2018 à 22:07
Salut.
J'ai enfin un peu de temps et de courage à me recoller à ça.
Alors, il n'y a pas autant de nvidia dans le noyau rt que dans le noyau normal dans le résultat de "find /lib/module |grep nvidia".
Du coup j'ai essayé de recompiler avec
dkms -k 4.9.0-6-rt-amd64 -m nvidia-current -v 375.85 build

https://groups.google.com/forum/#!homeredirforum/#!topic/linux.debian.bugs.dist/3kHakZ1ste4
Mais il me demande des linux-headers, que j'ai installé.
Depuis il y a la même chose pour les deux noyaux dans /lib/module.
le modprobe nvidia semble fonctionner.
J'ai reussi à lancer startx en root. Reste à régler le problème de se connecter en user...
1
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
Modifié le 12 juin 2018 à 09:50
Bonjour,

Dans ton cas il faut choisir si tu veux utiliser le pilote propriétaire (nvidia) ou le pilote libre (nouveau). Si tu ne joues pas, nouveau devrait faire parfaitement l'affaire.

nvidia

Modifie
/etc/apt/sources.list
pour activer les dépôts
non-free
et
contrib
, par exemple à l'aide de nano :

sudo nano /etc/apt/sources.list


Exemple :

deb http://ftp.fr.debian.org/debian/ stretch main contrib non-free
deb https://www.debian.org/security/ stretch/updates main contrib non-free


Ensuite lance :

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install nvidia-kernel-dkms xserver-xorg-video-nvidia


(ou
nvidia-legacy-304xx-kernel-dkms
si ta carte est ancienne, voir
aptitude show nvidia-kernel-dkms
et
aptitude show nvidia-legacy-304xx-kernel-dkms
pour voir les cartes supportées).

Puis redémarre pour tester.

nouveau

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install xserver-xorg-video-nouveau


Puis redémarre pour tester.

Bonne chance
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
12 juin 2018 à 13:08
Bonjour,
merci de ta réponse. Je tenterai ça.
Néanmoins, j'aimerai comprendre, lorsque je lance Debian avec le noyau normal, il n'y a pas de souci, le pilote nvidia est parfaitement installé. C'est uniquement lorsque je lance le noyau Real Time que le souci se produit.
Donc, le paquet nvidia non-free est déjà installé. Il faut que je l'installe à nouveau, mais en ayant chargé sur le noyau RT ? Il ne va pas vouloir faire ça. Si ?
Merci de ton aide.
0
Itdaboyz Messages postés 354 Date d'inscription mercredi 22 juin 2011 Statut Membre Dernière intervention 4 novembre 2023 97
12 juin 2018 à 22:05
Le driver propriétaire nvidia installe un module de kernel : dkms-nvidia
Ton nouveau kernel ne l'a probablement pas. Tu peux vérifié ça en chargeant le driver graphique "nouveau" ou via une connexion ssh et en utilisant la commande lsmod | grep nvidia
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
13 juin 2018 à 13:17
Bonjour,

Normalement le fait d'installer
nvidia-kernel-dkms
construit le module pour tous les noyaux installés. Tu peux vérifier en cherchant
nvidia.ko
dans
/lib/modules
:

find /lib/modules | grep nvidia.ko


Mais comme je le disais, à moins que tu joues avec des "gros" jeux 3D (e.g. starcraft 2), je te conseille plutôt de désinstaller le pilote nvidia au profit du pilote nouveau.

Tu peux également essayer de voir lequel est chargé avec
lsmod
.

lsmod | grep nvidia
lsmod | grep nouveau


Si aucun n'est chargé, essaye d'en charger un avec modprobe et regarde les éventuels messages d'erreur. En root ou précédé de
sudo
:

modprobe nvidia
dmesg | tail


... puis relance le mode graphique :

sudo service lightdm restart


... en admettant que tu utilises lightm. Si tu utilises un autre gestionnaire de connxion remplace
lightdm
par le tien, e.g.
sddm
,
xdm
, etc. Si tu ne sais pas duquel il s'agit, tu peux retrouver cette information avec
ls /etc/init.d/*dm
.

Bonne chance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
13 juin 2018 à 13:39
Merci à vous deux, je comprend un peu mieux le problème maintenant.
Je fais des jeux, donc, Nvidia.
Reste à voir si je peux l'installer sur le noyau RT. Sinon, ça sera nouveau, mais j'aimerai garder le pilote NVIDIA sur le noyau classique. Mais est-ce facilement faisable d'utiliser un xorg.conf ou l'autre en fonction du noyau ?
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
14 juin 2018 à 09:51
Bonjour,

Le plus simple serait de virer nvidia.ko du dossier /lib/modules qui correspond au kernel pour lequel il plante. Ensuite il y a jeu et jeu. Essaye déjà de voir si le résultat n'est pas acceptable avec nouveau.

Dernière chose, demande-toi si tu as vraiment besoin d'un noyau temps réel. Normalement un tel noyau n'est utile que pour des besoins très spécifiques.

Bonne chance
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
15 juin 2018 à 10:37
Oui j'ai besoin du noyau RT pour avoir une faible latence. Je branche ma basse à l'ordinateur, sans noyau RT j'ai quelques XRUN pour une latence de 20ms (c'est déjà bien). Avec le noyau RT, aucun XRUN...

Dans l'idéal, j'aimerai pouvoir booter sur mon noyau classique avec le pilote NVIDIA
Et booter sur le noyau RT avec un pilote qui me permet une résolution HD (en tout cas, supérieure au 640*480 du VESA), que ça soit NVIDIA, nouveau ou autre.
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
19 juin 2018 à 08:04
Ok effectivement rt est requis dans ce genre de cas. Nouveau permet d'avoir une résolution digne de ce nom. Reste à déterminer si tu as vraiment besoin du pilote nvidia. À quel genre de jeux joues-tu ?
0
mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
5 juil. 2018 à 08:22
Bonjour,

Sous debian il n'y a même aucun
nvidia.ko
de base dans
/lib/modules
: c'est un module propriétaire, que tu installes traditionnellement avec :
sudo apt-get install xserver-xorg-video-nvidia
.

Tout le nécessaire à la compilation de
nvidia.ko
est installé automatiquement. Cela inclue notamment le paquet
nvidia-kernel-dkms
). Comme tout modules, celui-ci requiert le compilateur et les headers qui correspondent au noyau que tu es en train d'utiliser (paquet
linux-headers-$(uname -r)
, etc...) qui sont également automatiquement installés par dépendance de paquets.

De nos jours, il n'y a de plus rien à configurer au niveau de xorg pour que celui-ci sache quel pilote utiliser. Par défaut, il tentera d'utiliser
nvidia
, le cas échéant il se rabattra sur
nouveau
, et sinon sur un pilote encore plus basique (e.g;
vesa
). La seule exception à cette règle est si tu as deux cartes graphiques (e.g. une carte nvidia pour la performance et une carte intel pour la performance), dans ce cas un utilitaire comme
bumblebee
peut être intéressant, mais laissons ça de côté pour le moment.

Une fois que tout ceci est fait, le serveur graphique devrait démarrer normalement. Il ne faut pas lancer de session grpahique en root comme tu l'as fait. C'est très mauvais d'un point de vue sécurité, et ça me surprend même qu'il t'ait laissé faire. Si ton pilote nvidia est installé, ton gestionnaire de connexion graphique (e.g. sddm, lightdm, etc...) devrait se lancer correctement (En root :
service sddm restart
). Si celui-ci s'affiche, c'est que tout est ok concernant le pilote. Le cas échéant il faudrait regarder les éventuelles erreurs dans
/var/log/Xorg.0.log
, par exemple avec la commande
grep EE /var/log/Xorg.0.log
.

Ensuite il ne reste plus qu'à t'identifier avec ton utlisateur normal depuis ton gestionnaire de connexion graphique...

Bonne chance
0