GNU/Linux >> Tutoriels Linux >  >> Linux

Pci-stub Vs Vfio-pci?

Je voudrais vous demander, quel est l'avantage d'utiliser VFIO-PCI sur PCI-STUB ?

J'ai trouvé cet article "PCI passthrough via OVMF" , mais ils ne disent pas tous les avantages, ils disent juste que VFIO a certains avantages.

Merci

Réponse acceptée :

PCI-STUB est un pilote factice. Il a été développé à l'origine parce que
l'attribution de périphérique KVM d'origine ne se liait pas réellement au périphérique attribué
en tant que pilote hôte, il saisissait simplement le périphérique et commençait à l'utiliser
. Comme KVM n'est pas un pilote de périphérique approprié, un autre pilote hôte pourrait tenter de se lier au périphérique alors que KVM l'avait attribué à un utilisateur. Le pilote pci-stub a été introduit pour occuper l'emplacement du pilote pour le périphérique pendant que KVM l'utilisait.

Contrairement à pci-stub, vfio est une interface complète pour les pilotes de l'espace utilisateur
. Il fournit un accès sécurisé, isolé et protégé par l'IOMMU à l'appareil
.

Avantages de vfio :

  1. pci-stub est souvent intégré au noyau, ce qui lui permet de se lier aux périphériques plus tôt que les pilotes qui sont des modules chargeables. Avec cette configuration, nous pouvons demander à pci-stub de se lier aux périphériques avant que le pilote hôte ne puisse y accéder afin que nous puissions garder le périphérique dans un état vierge pour l'assignation à un
    invité.

  2. L'autre cas d'utilisation moindre avec vfio est avec le groupement IOMMU. Si vous
    avez un groupe avec plusieurs appareils, tous les appareils du groupe doivent être
    liés à des pilotes compatibles, sinon vfio considérera le groupe
    comme non viable. Ceci est destiné à empêcher les pilotes hôtes d'être dans le même
    groupe qu'un périphérique contrôlé par l'utilisateur, car ils ne seraient pas isolés
    les uns des autres. Avec pci-stub, nous savons que ce pilote n'initie aucun
    DMA au nom de l'hôte, nous le considérons donc comme compatible.

    Ainsi, si vous avez des points de terminaison dans votre groupe IOMMU avec lesquels vous devez faire quelque chose pour rendre le groupe viable, mais que vous voulez vous assurer que l'utilisateur n'y a pas accès, vous pouvez lier l'appareil à pci-stub. Cela ajoute un peu de protection supplémentaire par rapport à la liaison de l'appareil à vfio-pci, car un utilisateur compromis ne peut pas simplement ouvrir d'autres appareils du groupe qui sont liés à vfio-pci via l'interface vfio.

En relation :Comment déterminer l'encodage de caractères qu'un terminal utilise dans un programme C/C++ ?
Linux
  1. Configuration du périphérique Alsa par défaut (hw:0,0) dans Asoundrc ?

  2. Comment créer un périphérique de bloc virtuel (périphérique de boucle/système de fichiers) sous Linux

  3. uflash :commande introuvable

  4. Commande setpci - configurer le périphérique PCI

  5. Bash :il ne reste plus d'espace sur l'appareil

Tout est un fichier sous Linux - Partie 1

Répliquer une carte SD ?

Utiliser un appareil via SSH ?

désactiver un périphérique PCI spécifique au démarrage

Sortie Linux lsblk

Dispositif à boucle permanente ?