Partager via


SRIOV_QUERY_PROBED_BARS_2 fonction de rappel (pcivirt.h)

Interroge les données lues à partir des registres d’adresses de base PCI Express SR-IOV (VF) spécifiés si la valeur -1 ont été écrites pour la première fois.

Syntaxe

SRIOV_QUERY_PROBED_BARS_2 SriovQueryProbedBars2;

NTSTATUS SriovQueryProbedBars2(
  [in]  PVOID Context,
  [in]  USHORT VfIndex,
  [out] PULONG BaseRegisterValues
)
{...}

Paramètres

[in] Context

Pointeur vers un contexte défini par le pilote.

[in] VfIndex

Index de base zéro du VF interrogé.

[out] BaseRegisterValues

Pointeur vers un tableau de variables limitées par le nombre de bars dans un appareil PCI.

Valeur de retour

Retournez STATUS_SUCCESS si l’opération réussit. Sinon, retournez un code d’erreur NTSTATUS approprié.

Remarques

Cette fonction de rappel est implémentée par le pilote de fonction physique (PF). Il est appelé lorsque le système souhaite lire à partir des registres d’adresses de base de la fonction virtuelle (VF) spécifiés.

Le pilote PF inscrit son implémentation en définissant le membre QueryProbedBars_2 du SRIOV_DEVICE_INTERFACE_STANDARD_2, en configurant une structure WDF_QUERY_INTERFACE_CONFIG et en appelant WdfDeviceAddQueryInterface.

Ce rappel est appelé par la pile de virtualisation (non privilégié) lorsqu’il souhaite connaître les valeurs de registre d’adresses de base du VF une fois les registres écrits avec la valeur (-1). Ce processus est classique lors de la configuration d’un périphérique PCI, et le résultat permet au pilote PCI de connaître la quantité d’espace d’adressage qui serait décodée par l’appareil une fois qu’il est activé. Lorsqu’une machine virtuelle non privilégiée écrit dans les fichiers BAR du VF, la machine virtuelle privilégiée peut cesser de fonctionner. Par conséquent, cette routine nécessite la nécessité d’écrire dans les RBA.

Exigences

Exigence Valeur
client minimum pris en charge Windows 10
serveur minimum pris en charge Windows Server 2016
plateforme cible Windows
d’en-tête pcivirt.h
IRQL PASSIVE_LEVEL