Partager via


fonction de rappel VPCI_READ_BLOCK (vpci.h)

La routine ReadVfConfigBlock lit un bloc de données de configuration pour une fonction virtuelle PCI Express (PCIe). Cette routine est appelée par le pilote d’une machine virtuelle PCIe sur un appareil qui prend en charge l’interface de virtualisation d’E/S racine unique (SR-IOV).

Syntaxe

VPCI_READ_BLOCK VpciReadBlock;

NTSTATUS VpciReadBlock(
  PVOID Context,
  ULONG BlockId,
  PVOID Buffer,
  ULONG Length
)
{...}

Paramètres

Context

[in] Pointeur vers des informations de contexte spécifiques à l’interface. L’appelant transmet la valeur qui est passée en tant que membre context de la structure VPCI_INTERFACE_STANDARD de l’interface.

BlockId

[in] Identificateur du bloc de configuration VF à lire. Cet identificateur est propriétaire du fournisseur de matériel indépendant (IHV) et est utilisé uniquement par les pilotes de la fonction physique PCIe (PF) et VF sur l’appareil.

Buffer

[out] Pointeur vers une mémoire tampon allouée par l’appelant qui contiendra les données de configuration à lire. Pour plus d’informations, consultez Remarques.

Length

[in] Nombre d’octets à lire à partir du bloc de configuration VF.

Note

La valeur de ce paramètre ne doit pas dépasser VPCI_MAX_READ_WRITE_BLOCK_SIZE.

Valeur de retour

La routine ReadVfConfigBlock retourne STATUS_SUCCESS si l’opération réussit. Sinon, la routine retourne une valeur NTSTATUS appropriée.

Remarques

Lorsque la routine ReadVfConfigBlock est appelée, le pilote du PF est averti de retourner des données à partir d’un bloc de configuration VF spécifié.

Un bloc de configuration VF est utilisé pour la communication backchannel entre les pilotes du PF et un VF sur un appareil qui prend en charge l’interface SR-IOV. L’IHV peut définir un ou plusieurs blocs de configuration VF pour l’appareil. Chaque bloc de configuration VF a un format, une longueur et un ID de bloc définis par IHV.

Les données de configuration VF peuvent être échangées entre les pilotes suivants de manière protégée :

  • Pilote VF, qui s’exécute dans le système d’exploitation invité. Ce système d’exploitation s’exécute dans une partition enfant Hyper-V.
  • Pilote PF, qui s’exécute dans le système d’exploitation de gestion. Ce système d’exploitation s’exécute dans la partition parente Hyper-V.

Les données de chaque bloc de configuration VF sont utilisées uniquement par les pilotes du PF et du VF.

Note

La IOCTL_VPCI_READ_BLOCK IOCTL offre une alternative asynchrone à la routine ReadVfConfigBlock.

Exigences

Exigence Valeur
serveur minimum pris en charge Windows Server 2012
d’en-tête vpci.h
IRQL <= APC_LEVEL

Voir aussi

IOCTL_VPCI_READ_BLOCK

VPCI_INTERFACE_STANDARD