Condividi tramite


struttura PCI_VIRTUALIZATION_INTERFACE (wdm.h)

La struttura PCI_VIRTUALIZATION_INTERFACE consente ai driver di gestire e configurare lo spazio di configurazione PCI Express (PCIe) per una funzione virtuale (VF). Le VFS vengono esposte nel bus PCI dai dispositivi che supportano l'interfaccia SR-IOV (Single Root I/O Virtualization).

Questa struttura descrive l'interfaccia GUID_PCI_VIRTUALIZATION_INTERFACE .

Sintassi

typedef struct _PCI_VIRTUALIZATION_INTERFACE {
  USHORT                            Size;
  USHORT                            Version;
  PVOID                             Context;
  PINTERFACE_REFERENCE              InterfaceReference;
  PINTERFACE_DEREFERENCE            InterfaceDereference;
  PSET_VIRTUAL_DEVICE_DATA          SetVirtualFunctionData;
  PGET_VIRTUAL_DEVICE_DATA          GetVirtualFunctionData;
  PGET_VIRTUAL_DEVICE_LOCATION      GetLocation;
  PGET_VIRTUAL_DEVICE_RESOURCES     GetResources;
  PENABLE_VIRTUALIZATION            EnableVirtualization;
  PGET_VIRTUAL_FUNCTION_PROBED_BARS GetVirtualFunctionProbedBars;
} PCI_VIRTUALIZATION_INTERFACE, *PPCI_VIRTUALIZATION_INTERFACE;

Members

Size

Dimensione, in byte, della struttura.

Version

Versione dell'interfaccia definita dal driver.

Context

Puntatore a informazioni di contesto specifiche dell'interfaccia.

InterfaceReference

Puntatore a una routine InterfaceReference che incrementa il conteggio dei riferimenti dell'interfaccia.

InterfaceDereference

Puntatore a una routine InterfaceDereference che decrementa il conteggio dei riferimenti dell'interfaccia.

SetVirtualFunctionData

Puntatore a una routine SetVirtualFunctionData che scrive i dati nello spazio di configurazione PCIe di un dispositivo SR-IOV VF.

GetVirtualFunctionData

Puntatore a una routine GetVirtualFunctionData che legge i dati dallo spazio di configurazione PCIe di un dispositivo SR-IOV VF.

GetLocation

Puntatore a una routine GetLocation che fornisce informazioni sulla posizione corrente del dispositivo di un VF nella gerarchia PCIe. Queste informazioni sono necessarie per un sistema di virtualizzazione che usa un'unità di gestione della memoria I/O (IOMMU) per instradare il traffico verso o dal dispositivo.

GetResources

Puntatore a una routine GetResources che fornisce informazioni sulle risorse disponibili per la virtualizzazione in un dispositivo SR-IOV.

EnableVirtualization

Puntatore a una routine EnableVirtualization che abilita o disabilita la virtualizzazione in un dispositivo SR-IOV.

GetVirtualFunctionProbedBars

Puntatore a una routine GetVirtualFunctionProbedBars che consente a una macchina virtuale Hyper-V (VM) senza privilegi di determinare cosa sarebbe stato letto dai registri indirizzi di base PCIe di un VF dopo una query da parte del driver del bus PCI. Il driver PCI esegue questa query per determinare lo spazio di indirizzi di memoria o I/O richiesto dal dispositivo.

Commenti

Per i dispositivi che supportano l'interfaccia SR-IOV, i driver devono occasionalmente accedere e gestire lo spazio di configurazione PCIe delle macchine virtuali del dispositivo. I driver chiamano routine dall'interfaccia GUID_PCI_VIRTUALIZATION_INTERFACE per accedere allo spazio di configurazione PCIe delle macchine virtuali nel dispositivo.

Poiché le VFS di un dispositivo non vengono visualizzate come dispositivi PCIe completi nel bus PCI, l'interfaccia GUID_BUS_INTERFACE_STANDARD non può essere usata per la gestione di un VF.

La struttura PCI_VIRTUALIZATION_INTERFACE è un'estensione della struttura INTERFACE .

Un driver ottiene un puntatore alla struttura PCI_VIRTUALIZATION_INTERFACE inviando un pacchetto di richiesta I/O IRP_MN_QUERY_INTERFACE al driver del bus con InterfaceType impostato su GUID_PCI_VIRTUALIZATION_INTERFACE.

Requisiti

Requisito Valore
Server minimo supportato Windows Server 2012
Intestazione wdm.h (include Wdm.h)

Vedi anche

GUID_BUS_INTERFACE_STANDARD

InterfaceDereference

InterfaceReference

IRP_MN_QUERY_INTERFACE