Funzione NdisMGetVirtualFunctionBusData (ndis.h)
Un driver miniport chiama la funzione NdisMGetVirtualFunctionBusData per leggere i dati dallo spazio di configurazione PCI Express (PCIe) di una funzione virtuale specificata nella scheda di rete.
Sintassi
ULONG NdisMGetVirtualFunctionBusData(
[in] NDIS_HANDLE NdisMiniportHandle,
[in] NDIS_SRIOV_FUNCTION_ID VFId,
[out] PVOID Buffer,
[in] ULONG Offset,
[in] ULONG Length
);
Parametri
[in] NdisMiniportHandle
La scheda di rete gestisce l'NDIS passata al parametro MiniportAdapterHandle di MiniportInitializeEx.
[in] VFId
Identificatore della funzione VF da cui vengono restituiti i dati dello spazio di configurazione PCI.
[out] Buffer
Puntatore a un buffer che riceve i dati letti dallo spazio di configurazione PCI di VF.
[in] Offset
Offset, in unità di byte, nello spazio di configurazione PCI VF da cui vengono letti i dati.
[in] Length
Lunghezza, in unità di byte, dei dati da leggere.
Valore restituito
NdisMGetVirtualFunctionBusData restituisce il numero di byte letti dallo spazio di configurazione PCI. Se l'operazione di lettura non riesce, NdisMGetVirtualFunctionBusData restituisce zero.
Commenti
Il driver miniport PF chiama in genere NdisMGetVirtualFunctionBusData quando gestisce una richiesta di metodo OID di OID_SRIOV_READ_VF_CONFIG_SPACE.
Tuttavia, il driver può chiamare questa funzione in qualsiasi momento dopo l'abilitazione della virtualizzazione nella scheda di rete tramite una chiamata a NdisMEnableVirtualization.
Per altre informazioni su come eseguire una query sullo spazio di configurazione PCI di VF, vedere Esecuzione di query sullo spazio di configurazione PCI per una funzione virtuale.
Per altre informazioni sull'interfaccia SR-IOV, vedere Panoramica di Single Root I/O Virtualization (SR-IOV).For more information about the SR-IOV interface, see Overview of Single Root I/O Virtualization (SR-IOV).
Interfaccia con un driver del bus virtuale
Se un fornitore di hardware indipendente (IHV) fornisce un driver bus virtuale (VBD) come parte del pacchetto driver SR-IOV, il driver miniport non deve chiamare NdisMGetVirtualFunctionBusData. Al contrario, il driver deve interfacciarsi con VBD tramite un canale di comunicazione privato e richiedere che il VBD chiami GetVirtualFunctionData. Questa funzione viene esposta dall'interfaccia GUID_PCI_VIRTUALIZATION_INTERFACE supportata dal driver del bus PCI sottostante.Il VBD eseguito nel sistema operativo di gestione della partizione padre Hyper-V può eseguire una query sull'interfaccia GUID_PCI_VIRTUALIZATION_INTERFACE inviando una richiesta di IRP_MN_QUERY_INTERFACE al relativo oggetto dispositivo fisico (PDO) nel bus PCI. Questa richiesta deve essere effettuata da IRQL = PASSIVE_LEVEL. In questa richiesta, il driver deve impostare il parametro InterfaceType su GUID_PCI_VIRTUALIZATION_INTERFACE.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | None supported,Supported in NDIS 6.30 and later. |
Server minimo supportato | Windows Server 2012 |
Piattaforma di destinazione | Universale |
Intestazione | ndis.h (include Ndis.h) |
Libreria | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Vedi anche