VPCI_READ_BLOCK Rückruffunktion (vpci.h)
Die ReadVfConfigBlock-Routine liest einen Block von Konfigurationsdaten für eine PCI Express (PCIe) Virtual Function (VF). Diese Routine wird vom Treiber eines PCIe VF auf einem Gerät aufgerufen, das die SR-IOV-Schnittstelle (Single Root E/O Virtualization) unterstützt.
Syntax
VPCI_READ_BLOCK VpciReadBlock;
NTSTATUS VpciReadBlock(
PVOID Context,
ULONG BlockId,
PVOID Buffer,
ULONG Length
)
{...}
Parameter
Context
[in] Ein Zeiger auf schnittstellenspezifische Kontextinformationen. Der Aufrufer übergibt den Wert, der als Context-Member der VPCI_INTERFACE_STANDARD-Struktur für die Schnittstelle übergeben wird.
BlockId
[in] Der Bezeichner des zu lesenden VF-Konfigurationsblocks. Dieser Bezeichner ist für den unabhängigen Hardwareanbieter (Independent Hardware Vendor, IHV) geschützt und wird nur von den Treibern für die PCIe Physical Function (PF) und VF auf dem Gerät verwendet.
Buffer
[out] Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der die zu lesenden Konfigurationsdaten enthält. Weitere Informationen finden Sie in den Hinweisen.
Length
[in] Die Anzahl der Bytes, die aus dem VF-Konfigurationsblock gelesen werden sollen.
Hinweis
Der Wert dieses Parameters darf VPCI_MAX_READ_WRITE_BLOCK_SIZE nicht überschreiten.
Rückgabewert
Die ReadVfConfigBlock-Routine gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt die Routine einen entsprechenden NTSTATUS-Wert zurück.
Hinweise
Wenn die ReadVfConfigBlock-Routine aufgerufen wird, wird der Treiber der PF benachrichtigt, Daten aus einem angegebenen VF-Konfigurationsblock zurückzugeben.
Ein VF-Konfigurationsblock wird für die Backchannel-Kommunikation zwischen den Treibern der PF und einem VF auf einem Gerät verwendet, das die SR-IOV-Schnittstelle unterstützt. Der IHV kann einen oder mehrere VF-Konfigurationsblöcke für das Gerät definieren. Jeder VF-Konfigurationsblock verfügt über ein IHV-definiertes Format, eine länge und eine Block-ID.
VF-Konfigurationsdaten können geschützt zwischen den folgenden Treibern ausgetauscht werden:
- Der VF-Treiber, der im Gastbetriebssystem ausgeführt wird. Dieses Betriebssystem wird innerhalb einer untergeordneten Hyper-V-Partition ausgeführt.
- Der PF-Treiber, der im Verwaltungsbetriebssystem ausgeführt wird. Dieses Betriebssystem wird innerhalb der übergeordneten Hyper-V-Partition ausgeführt.
Daten aus jedem VF-Konfigurationsblock werden nur von den Treibern der PF und VF verwendet.
Hinweis
Die IOCTL_VPCI_READ_BLOCK IOCTL bietet eine asynchrone Alternative zur ReadVfConfigBlock-Routine .
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Server) | Windows Server 2012 |
Kopfzeile | vpci.h |
IRQL | <= APC_LEVEL |