Partager via


VPCI_READ_BLOCK fonction de rappel (vpci.h)

La routine ReadVfConfigBlock lit un bloc de données de configuration pour une fonction virtuelle (VF) PCI Express (PCIe). Cette routine est appelée par le pilote d’une VF 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 de contexte de la structure VPCI_INTERFACE_STANDARD pour 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 de la 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 la section Notes.

Length

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

Notes

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

Valeur retournée

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 une 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 de la VF.

Notes

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

Configuration requise

Condition requise Valeur
Serveur minimal pris en charge Windows Server 2012
En-tête vpci.h
IRQL <= APC_LEVEL

Voir aussi

IOCTL_VPCI_READ_BLOCK

VPCI_INTERFACE_STANDARD