Squeeze + VGA Passthrough (Xen), Un Mythe ?
Fermé
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
-
16 déc. 2012 à 22:10
sorcier777 Messages postés 414 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 24 juillet 2013 - 12 févr. 2013 à 09:33
sorcier777 Messages postés 414 Date d'inscription dimanche 22 novembre 2009 Statut Membre Dernière intervention 24 juillet 2013 - 12 févr. 2013 à 09:33
A voir également:
- Squeeze + VGA Passthrough (Xen), Un Mythe ?
- Écran noir led vga allumé - Forum Carte graphique
- Ps4 vga no signal - Forum Jeux vidéo
- Led vga carte mere - Forum Processeur
- Vga inactive - Forum Windows
- Vga no signal asus - Forum Ecran
5 réponses
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
17 déc. 2012 à 09:44
17 déc. 2012 à 09:44
Apparemment ce n'est pas un mythe mais il y a pas mal de pré-requis, les satisfais-tu ?
https://wiki.xenproject.org/wiki/Xen_VGA_Passthrough
Bonne chance
https://wiki.xenproject.org/wiki/Xen_VGA_Passthrough
Bonne chance
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
17 déc. 2012 à 20:17
17 déc. 2012 à 20:17
Déjà on est sûrs que tu vérifies ces pré-requis ?
activate vt-d in your BIOS
set chipset video card to always on
Ensuite dans le tutoriel une large partie s'intéresse à la mémoire et au réseau, ça je pense que ce n'est pas la priorité pour le problème en question (puisque c'est visiblement la configuration vidéo), donc a priori la partie PCI (qu'il faut sans doute adapter dans ton cas à ta carte vidéo). Pour ça il faudrait que tu me donnes le résultat de ta commande lspci et de ton script pour vérifier que tu as mis les bons identifiants (même remarque pour le script "remove_device").
Ensuite il faudrait vérifier que ton module a été chargé avec succès :
Bon après j'avoue que je n'ai jamais utilisé xen donc le reste du tutoriel est un peu abstrait pour moi et je ne sais pas trop comment ça se comporte.
activate vt-d in your BIOS
set chipset video card to always on
Ensuite dans le tutoriel une large partie s'intéresse à la mémoire et au réseau, ça je pense que ce n'est pas la priorité pour le problème en question (puisque c'est visiblement la configuration vidéo), donc a priori la partie PCI (qu'il faut sans doute adapter dans ton cas à ta carte vidéo). Pour ça il faudrait que tu me donnes le résultat de ta commande lspci et de ton script pour vérifier que tu as mis les bons identifiants (même remarque pour le script "remove_device").
Ensuite il faudrait vérifier que ton module a été chargé avec succès :
modprobe xen-pciback lsmod xen-pciback dmesg | tail
Bon après j'avoue que je n'ai jamais utilisé xen donc le reste du tutoriel est un peu abstrait pour moi et je ne sais pas trop comment ça se comporte.
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
17 déc. 2012 à 20:24
17 déc. 2012 à 20:24
Oui je confirme, c'est très abstrait. Pour ce qui est de l'adresse PCI de la carte, j'ai utilisé la commande lspci pour la trouver justement. Ensuite c'est au chargement du module que j'ai généralement un problème...
Ensuite je suis sur une plateforme AMD avec l'IOMMU activé.
Merci de ta réponse :)
Ensuite je suis sur une plateforme AMD avec l'IOMMU activé.
Merci de ta réponse :)
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
17 déc. 2012 à 20:27
17 déc. 2012 à 20:27
Le chargement du module ? Il y a un message d'erreur ? Tu ne le vois pas apparaître dans lsmod ? Que dit dmesg ?
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
17 déc. 2012 à 20:29
17 déc. 2012 à 20:29
J'arrive pas à le charger mais je crois que c'est parce que j'ai pas bien configuré le Kernel...
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
17 déc. 2012 à 20:30
17 déc. 2012 à 20:30
Cette étape :
Xen VGA passthru requirements from dom0 kernel
Make sure your dom0 Linux kernel has "CONFIG_XEN_PCIDEV_BACKEND_PASS" option enabled. "CONFIG_XEN_PCIDEV_BACKEND_VPCI" should be disabled. For example Debian Squeeze 2.6.32 kernel has the wrong PCIDEV_BACKEND mode as a default.. so in that case you might need to recompile the kernel with custom .config to get the right backend mode in use. BACKEND_PASS mode means the PCI IDs of the PCI device (graphics card) will be the same in the VM as in dom0/host.
Xen VGA passthru requirements from dom0 kernel
Make sure your dom0 Linux kernel has "CONFIG_XEN_PCIDEV_BACKEND_PASS" option enabled. "CONFIG_XEN_PCIDEV_BACKEND_VPCI" should be disabled. For example Debian Squeeze 2.6.32 kernel has the wrong PCIDEV_BACKEND mode as a default.. so in that case you might need to recompile the kernel with custom .config to get the right backend mode in use. BACKEND_PASS mode means the PCI IDs of the PCI device (graphics card) will be the same in the VM as in dom0/host.
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
17 déc. 2012 à 20:35
17 déc. 2012 à 20:35
Je précise que j'ai fait un "apt-get install xen-hypervisor-amd64 linux-image-2.6.32-5-xen-amd64" pour installer xen
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
18 déc. 2012 à 10:11
18 déc. 2012 à 10:11
Normalement si tu as compilé ton kernel tu as un fichier .config qui a été généré à la racine des sources du kernel (par exemple /usr/src/linux/.config) et qui indique qu'est ce qui est activé dans le noyau. Que donne la commande suivante :
Remarque : si tu utilises un noyau standard ce fichier est en fait /boot/config-$(uname -r).
Exemple :
Ici on voit que CONFIG_XEN_PCIDEV_BACKEND_VPCI n'apparaît ni à "y" (dans le noyau) ni à "m" (en module) donc c'est bon.
Du coup avant de te lancer dans la compilation d'un noyau (ce qui est long et fastidieux, je commencerais par regarder si un noyau standard ne fait pas l'affaire).
Bonne chance
grep CONFIG_XEN /usr/src/linux/.config
Remarque : si tu utilises un noyau standard ce fichier est en fait /boot/config-$(uname -r).
Exemple :
(mando@silk) (~) $ grep CONFIG_XEN /boot/config-$(uname -r) CONFIG_XEN=y CONFIG_XEN_DOM0=y CONFIG_XEN_PRIVILEGED_GUEST=y CONFIG_XEN_PVHVM=y CONFIG_XEN_MAX_DOMAIN_MEMORY=128 CONFIG_XEN_SAVE_RESTORE=y # CONFIG_XEN_DEBUG_FS is not set CONFIG_XEN_PCIDEV_FRONTEND=m CONFIG_XEN_BLKDEV_FRONTEND=m CONFIG_XEN_BLKDEV_BACKEND=m CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_NETDEV_BACKEND=m CONFIG_XEN_WDT=m CONFIG_XEN_FBDEV_FRONTEND=y CONFIG_XEN_BALLOON=y # CONFIG_XEN_BALLOON_MEMORY_HOTPLUG is not set CONFIG_XEN_SCRUB_PAGES=y CONFIG_XEN_DEV_EVTCHN=m CONFIG_XEN_BACKEND=y CONFIG_XENFS=m CONFIG_XEN_COMPAT_XENFS=y CONFIG_XEN_SYS_HYPERVISOR=y CONFIG_XEN_XENBUS_FRONTEND=y CONFIG_XEN_GNTDEV=m CONFIG_XEN_GRANT_DEV_ALLOC=m CONFIG_XEN_PCIDEV_BACKEND=m
Ici on voit que CONFIG_XEN_PCIDEV_BACKEND_VPCI n'apparaît ni à "y" (dans le noyau) ni à "m" (en module) donc c'est bon.
Du coup avant de te lancer dans la compilation d'un noyau (ce qui est long et fastidieux, je commencerais par regarder si un noyau standard ne fait pas l'affaire).
Bonne chance
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
18 déc. 2012 à 12:30
18 déc. 2012 à 12:30
Merci pour l'indication. Hier j'ai tout préparé pour compiler un nouveau kernel, je vais faire ça ce soir. Donc j'avais cherché dans le noyau standard compilé pour Xen dans le fichier config et les options ne sont pas les bonnes, comme prevu sous Squeeze. Par contre le module pci-backend démarre parfaitement sous Ubuntu 12.04. (Mais je préfère Squeeze largement, je m'arrache les cheveux avec 12.04... Même pas foutu de booter sur un raid1 degradé, ça n'a aucun sens... Sans parler de son instabilité... Mais bon en desktop si on oublie les bug il est assez cool, je vais surement l'utiliser en VM à côté de 10.04.)
Au passage, je devrais peut-être en profiter pour optimiser le kernel, non?
Au passage, je devrais peut-être en profiter pour optimiser le kernel, non?
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
18 déc. 2012 à 21:00
18 déc. 2012 à 21:00
Si tu es motivé pourquoi pas et il sera d'autant moins long à compiler, mais le gain en performance sera à mon avis assez minime. Moi à ta place je ne m'embêterais pas et je regarderais si parmi les noyaux packagés il n'y en a pas un qui fait directement l'affaire...
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
18 déc. 2012 à 21:06
18 déc. 2012 à 21:06
Merci, je peux toujours essayer de trouver un kernel tout prêt sur internet pour utiliser le module pci-backend mais j'avais commencé et j'ai pas encore trouvé.
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
18 déc. 2012 à 21:08
18 déc. 2012 à 21:08
Il me semble que pour Squeeze c'est le 2.6.32-5-xen-amd64 qu'il faut que je trouve compillé pour le module.
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
18 déc. 2012 à 21:30
18 déc. 2012 à 21:30
Ou alors je le compile moi-même, euh, avec les sources du 2.6.32-5-amd64 ? ( un petit make menuconfig ? )
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
26 déc. 2012 à 20:14
26 déc. 2012 à 20:14
Donc, le noyeau 2.6.32-5-xen-amd de base ne permet pas d'utiliser le module désiré (comme on l'a vu plus haut), ce qui veut dire que je doit changer quelques paramètres et donc le recompiler, c'est ça ?
Oui, si la fonctionnalité dont tu as besoin n'est référencée à y ou m dans /boot/config-2.6.32-5-xen-amd il faut recompiler un noyau.
Une bonne stratégie consiste à repartir de ce fichier pour pré-configurer pas mal de choses. L'idée c'est de suivre ce tutoriel (cf étape 4.3 en particulier) :
http://www.mistra.fr/tutoriel-linux-compiler.html#h4-compiler-un-noyau
En bref, supposons que tes sources de noyau (l'endroit depuis lequel tu tapes "make menuconfig") soit dans /usr/src/linux. Copie ce fichier config dans /usr/src/linux et renomme le ".config" :
Puis lance :
... pour repartir de ce fichier. Il suffit ensuite d'ajouter les fonctionnalité qui te manque (quitte à passer par make menuconfig). Ensuite lance la compilation normalement en suivant ce tutoriel :
http://www.mistra.fr/tutoriel-linux-compiler.html#h4-compiler-un-noyau
Bonne chance et bonnes fêtes
Oui, si la fonctionnalité dont tu as besoin n'est référencée à y ou m dans /boot/config-2.6.32-5-xen-amd il faut recompiler un noyau.
Une bonne stratégie consiste à repartir de ce fichier pour pré-configurer pas mal de choses. L'idée c'est de suivre ce tutoriel (cf étape 4.3 en particulier) :
http://www.mistra.fr/tutoriel-linux-compiler.html#h4-compiler-un-noyau
En bref, supposons que tes sources de noyau (l'endroit depuis lequel tu tapes "make menuconfig") soit dans /usr/src/linux. Copie ce fichier config dans /usr/src/linux et renomme le ".config" :
cp /boot/config-2.6.32-5-xen-amd /usr/src/linux/.config
Puis lance :
cd /usr/src/linux make oldconfig
... pour repartir de ce fichier. Il suffit ensuite d'ajouter les fonctionnalité qui te manque (quitte à passer par make menuconfig). Ensuite lance la compilation normalement en suivant ce tutoriel :
http://www.mistra.fr/tutoriel-linux-compiler.html#h4-compiler-un-noyau
Bonne chance et bonnes fêtes
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
26 déc. 2012 à 20:52
26 déc. 2012 à 20:52
Merci beaucoup, c'est à peu près ce que j'avais commencé à faire, c'est juste que je n'étais pas sûre de ce qu'allait donner le oldconfig, donc je vais compiler tout ça, je vous tiens au courant.
Et encore merci :)
Et encore merci :)
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
26 déc. 2012 à 20:57
26 déc. 2012 à 20:57
Petite précision je te conseille vivement de suivre le tutoriel que je t'ai indiqué notamment pour que ton noyau soit dans un paquet debian, ce qui le rendra beaucoup plus simple à installer et désinstaller.
Notamment, le fait de passer par un paquet debian évite d'avoir à faire toute la tambouille pour installer ton noyau et corriger ton boot loader (grub ou lilo) (et idem lors d'une désinstallation).
Bonne chance
Notamment, le fait de passer par un paquet debian évite d'avoir à faire toute la tambouille pour installer ton noyau et corriger ton boot loader (grub ou lilo) (et idem lors d'une désinstallation).
Bonne chance
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
26 déc. 2012 à 21:20
26 déc. 2012 à 21:20
Oui c'est plus pratique en effet, c'est ce que je fais d'habitude (enfin à l'époque où je compilais encore pas mal). Sinon j'avais la fâcheuse habitude de remplacer les fichiers dans boot pour duper grub XD
Merci
Merci
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
27 déc. 2012 à 01:12
27 déc. 2012 à 01:12
À mon avis ça ne suffit pas dans le cas général :
- Avec grub2, il faut au moins lancer la commande update-grub pour régénérer /boot/grub/grub.cfg.
- Avec grub1 il suffisait de corriger /boot/grub/menu.lst.
- Avec lilo il faut corriger /etc/lilo.conf et lancer la commande "lilo".
- Avec grub2, il faut au moins lancer la commande update-grub pour régénérer /boot/grub/grub.cfg.
- Avec grub1 il suffisait de corriger /boot/grub/menu.lst.
- Avec lilo il faut corriger /etc/lilo.conf et lancer la commande "lilo".
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
27 déc. 2012 à 01:22
27 déc. 2012 à 01:22
J'ai fais ça à une époque où je testais quelques petits trucs sur une ubuntu. Mais évidement toujours avec un update-grub, tellement évident (mais très important de le préciser). Oui bon au final mon expression "duper grub" ne tiens plus en fait, mais c'était pour garder l'ordre de démarrage dans grub.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
28 déc. 2012 à 12:44
28 déc. 2012 à 12:44
Pourquoi tu ne repars pas simplement de ça ?
https://wiki.xenproject.org/wiki/Mainline_Linux_Kernel_Configs
Bonne chance
https://wiki.xenproject.org/wiki/Mainline_Linux_Kernel_Configs
Bonne chance
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
28 déc. 2012 à 13:37
28 déc. 2012 à 13:37
Merci, je vais voir ça, mais ça a pas trop l'air de parler pci passthrough...
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
28 déc. 2012 à 13:51
28 déc. 2012 à 13:51
Non mais l'idée c'est qu'on te dit exactement quelles sources de noyau utiliser et comment les configurer pour faire marcher XEN. Après j'imagine qu'il suffit de rajouter les constantes conformément à ce qui est indiqué ici :
https://wiki.xenproject.org/wiki/Xen_VGA_Passthrough
À mon avis CONFIG_XEN_PCI_PASSTHROUGH doit aussi être activé, peut-être qu'elle n'exitait pas encore au moment où la page de documentation a été rédigée. Je commencerais même par l'activer elle, car elle activera sans doute (via make menuconfig) toutes celles nécessaires à son bon fonctionnement.
Bonne chance
https://wiki.xenproject.org/wiki/Xen_VGA_Passthrough
À mon avis CONFIG_XEN_PCI_PASSTHROUGH doit aussi être activé, peut-être qu'elle n'exitait pas encore au moment où la page de documentation a été rédigée. Je commencerais même par l'activer elle, car elle activera sans doute (via make menuconfig) toutes celles nécessaires à son bon fonctionnement.
Bonne chance
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
28 déc. 2012 à 14:41
28 déc. 2012 à 14:41
Ok, merci beacoup, donc il me faut un kernel là dedans ?
2 years ago v2.6.35 Linux 2.6.35
2 years ago v2.6.35-rc6 Linux 2.6.35-rc6
2 years ago v2.6.35-rc5 Linux 2.6.35-rc5
2 years ago v2.6.35-rc4 Linux 2.6.35-rc4
2 years ago v2.6.35-rc3 Linux 2.6.35-rc3
2 years ago v2.6.35-rc2 Linux 2.6.35-rc2
2 years ago v2.6.35-rc1 Linux 2.6.35-rc1
Le Makefile ?
Pfiou... Finalement je me demande si j'aurai pas plutôt dû utiliser Ubuntu Serveur 10.04...
2 years ago v2.6.35 Linux 2.6.35
2 years ago v2.6.35-rc6 Linux 2.6.35-rc6
2 years ago v2.6.35-rc5 Linux 2.6.35-rc5
2 years ago v2.6.35-rc4 Linux 2.6.35-rc4
2 years ago v2.6.35-rc3 Linux 2.6.35-rc3
2 years ago v2.6.35-rc2 Linux 2.6.35-rc2
2 years ago v2.6.35-rc1 Linux 2.6.35-rc1
Le Makefile ?
Pfiou... Finalement je me demande si j'aurai pas plutôt dû utiliser Ubuntu Serveur 10.04...
mamiemando
Messages postés
33346
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
8 novembre 2024
7 803
28 déc. 2012 à 17:44
28 déc. 2012 à 17:44
Si tu recompiles un noyau je ne pense pas que la distribution ait un grand impact.
Pour la version du noyau je prendrais une version supérieure ou égale à celle indiqué dans la documentation.
Sachant qu'un noyau 3.x peut être différent d'un noyau 2.6 peut être que tu peux commencer effectivement par la version suggérée par la documentation. Mais avec un peu de chance il reste d'actualité pour des noyaux actuels...
Difficile de répondre sans tester...
Pour la version du noyau je prendrais une version supérieure ou égale à celle indiqué dans la documentation.
Sachant qu'un noyau 3.x peut être différent d'un noyau 2.6 peut être que tu peux commencer effectivement par la version suggérée par la documentation. Mais avec un peu de chance il reste d'actualité pour des noyaux actuels...
Difficile de répondre sans tester...
sorcier777
Messages postés
414
Date d'inscription
dimanche 22 novembre 2009
Statut
Membre
Dernière intervention
24 juillet 2013
4
28 déc. 2012 à 18:24
28 déc. 2012 à 18:24
Si j'ai parlé d'Ubuntu c'est parce qu'il me semble que le pci-passtrouth est déjà bien configuré. Et j'aurai aimé garder le noyau 2.6, j'ai vraiment eus de mauvaises surprises avec les derniers 3.0...
Bon, je vais voir avec ubuntu server 10.04 mais j'essayerai quand même de compiler un kernel pour debian et le pci-passthrough.
Bon, je vais voir avec ubuntu server 10.04 mais j'essayerai quand même de compiler un kernel pour debian et le pci-passthrough.
17 déc. 2012 à 14:57
17 déc. 2012 à 19:09
Je viens de refaire une installation toute fraîche de Debian Squeeze, je vais maintenant installer Xen puis modifier le Kernel.
Modifié par sorcier777 le 17/12/2012 à 19:17
https://gro.solexiv.de/category/vgapci-passthrough/
17 déc. 2012 à 19:19
# Pas sûre que c'est nescessaire...
kernel="/usr/lib/xen-default/boot/hvmloader"
builder = "hvm"
name = "win7x64-hvm"
# RAM (MB)
memory = "8192"
# Cores CPU
vcpus = 6
vif = ['type=ioemu']
# Démmarage depuis le cd et le disque-dur
disk = ['phy:/dev/partitionLVM,hda,w','file:/root/win7.iso,hdc:cdrom,r']
boot="dc"
# Démarrage depuis le disque-dur
#disk = ['phy:/dev/partitionLVM,hda,w']
#boot="c"
# Activer l'accès VNC
vnc = 1
acpi=1
sdl=0
serial='pty'
# PCI passtrhough
pci=['01:00.0','01:00.1']
# Réseau
dhcp = 'dhcp'
17 déc. 2012 à 19:21