Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 28/09/2018, à 17:19

kepoxatis

GPU passthrough - impossible de lancer la session graphique

Je m'essaie depuis quelques jours au "GPU passthrough", c'est à dire assigner ma carte graphique dédiée à une machien virtuelle KVM (ici Windows 10). J'ai suivi des instructions précises et récentes de diverses sources, les modules sont activés, mon matériel est bien compatible, mais ça bloque complètement à un moment.

Pour mieux comprendre, voici la description de mon système: j'ai une carte graphique Radeon R9 270X connectée en HDMI à un écran, tandis qu'un autre écran est connecté en VGA directement à mon processeur (Intel i7 4790).

Lorsque j'allume mon ordinateur habituellement, le seul écran "actif" est celui connecté à la carte graphique, et ceci depuis le GRUB jusqu'à l'entrée du login dans lightdm. Une fois arrivé sur le Desktop, l'autre écran s'allume correctement.

Maintenant, pour pouvoir dédier la carte graphique à la VM (GPU passthrough), il faut blacklister le module qui la prend en charge, chez moi "radeon", ce que je fais en éditant les flags kernel dans /etc/default/grub:

GRUB_DEFAULT=0
#GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="modprobe.blacklist=radeon intel_iommu=on  ipv6.disable=1"
GRUB_CMDLINE_LINUX=""

Cela semble fonctionner correctement, car une fois le GRUB passé, l'écran connecté à la carte graphique se fige, et l'autre écran prend le relais... mais échoue systématiquement à lancer lightdm, et donc la session graphique:

● gpu-manager.service - Detect the available GPUs and deal with any system changes
   Loaded: loaded (/lib/systemd/system/gpu-manager.service; enabled; vendor preset: enabled)
   Active: failed (Result: start-limit-hit) since Fri 2018-09-28 18:08:11 CEST; 2min 10s ago
  Process: 2164 ExecStart=/usr/bin/gpu-manager --log /var/log/gpu-manager.log (code=exited, status=0/SUCCESS)
 Main PID: 2164 (code=exited, status=0/SUCCESS)

sept. 28 18:08:11 Z87M-D3H systemd[1]: Starting Detect the available GPUs and deal with any system changes...
sept. 28 18:08:11 Z87M-D3H gpu-manager[2164]: /etc/modprobe.d is not a file
sept. 28 18:08:11 Z87M-D3H gpu-manager[2164]: /etc/modprobe.d is not a file
sept. 28 18:08:11 Z87M-D3H gpu-manager[2164]: /etc/modprobe.d is not a file
sept. 28 18:08:11 Z87M-D3H gpu-manager[2164]: /etc/modprobe.d is not a file
sept. 28 18:08:11 Z87M-D3H gpu-manager[2164]: Error: can't open /lib/modules/4.15.0-34-generic/updates/dkms
sept. 28 18:08:11 Z87M-D3H systemd[1]: Started Detect the available GPUs and deal with any system changes.
sept. 28 18:08:12 Z87M-D3H systemd[1]: gpu-manager.service: Start request repeated too quickly.
sept. 28 18:08:12 Z87M-D3H systemd[1]: gpu-manager.service: Failed with result 'start-limit-hit'.
sept. 28 18:08:12 Z87M-D3H systemd[1]: Failed to start Detect the available GPUs and deal with any system changes.
● lightdm.service - Light Display Manager
   Loaded: loaded (/lib/systemd/system/lightdm.service; indirect; vendor preset: enabled)
   Active: failed (Result: exit-code) since Fri 2018-09-28 18:08:12 CEST; 2min 46s ago
     Docs: man:lightdm(1)
  Process: 2176 ExecStart=/usr/sbin/lightdm (code=exited, status=1/FAILURE)
  Process: 2173 ExecStartPre=/bin/sh -c [ "$(basename $(cat /etc/X11/default-display-manager 2>/dev/null))" = "lightdm" ] (code=exited, status=0/SUCCESS)
 Main PID: 2176 (code=exited, status=1/FAILURE)

sept. 28 18:08:12 Z87M-D3H systemd[1]: lightdm.service: Service hold-off time over, scheduling restart.
sept. 28 18:08:12 Z87M-D3H systemd[1]: lightdm.service: Scheduled restart job, restart counter is at 5.
sept. 28 18:08:12 Z87M-D3H systemd[1]: Stopped Light Display Manager.
sept. 28 18:08:12 Z87M-D3H systemd[1]: lightdm.service: Start request repeated too quickly.
sept. 28 18:08:12 Z87M-D3H systemd[1]: lightdm.service: Failed with result 'exit-code'.
sept. 28 18:08:12 Z87M-D3H systemd[1]: Failed to start Light Display Manager.

D'après ce que je comprends, lightdm n'arrive pas à démarrer la session graphique car il ne trouve pas la carte habituelle... J'ai essayé de désactiver gpu-manager, mais le résultat est le même.

J'avoue que je suis un peu perdu. Mes quelques recherches en ligne n'ont absolument rien donné. Je ne vois pas comment aller plus loin (=comment faire démarrer la session graphique sur la carte vidéo du processeur en blacklistant la carte graphique). Toute suggestion est la bienvenue. Je peux fournir plus de détails si besoin.

Hors ligne

#2 Le 28/09/2018, à 20:41

kepoxatis

Re : GPU passthrough - impossible de lancer la session graphique

Bon j'ai trouvé la solution!! big_smile

Pour ceux que ça intéresse, c'est le BIOS qui lançait en priorité l'affichage sur PCI-E. J'ai mis affichage par défaut sur la carte du processeur, et maintenant tout fonctionne!

Je suis tenté de faire un tutorial s'il y a des intéressés?

Hors ligne

#3 Le 05/10/2018, à 10:03

MrKebi

Re : GPU passthrough - impossible de lancer la session graphique

Hello,

J'arrive après la bataille, mais bonne idée pour le tuto wink

Penses aussi à mettre ton sujet en "Résolu" !


PC : i7-4770k 24Go RX 580 120Go SSD + 1Tox2 HDD: Archlinux/Plasma
Laptop 1 : ThinkPad p50 i7-6820HQ 32Go 256Gox2 SSD + 500Go HDD : Archlinux/Plasma, optimus-manager
Laptop 2 : Xiaomi Mi Notebook Pro i5-8250u 8Go 240Go msata : Archlinux/XFCE, optimus-manager
Laptop 3 : HP Pavillion g6 1354ef i5-2450m 4Go 120Go SSD : Archlinux/Plasma

Hors ligne