OID_SRIOV_WRITE_VF_CONFIG_SPACE
Nadmierny sterownik wystawia żądanie zestawu identyfikatora obiektu (OID) OID_SRIOV_WRITE_VF_CONFIG_SPACE do zapisywania danych w przestrzeni konfiguracji PCI Express (PCIe) dla określonej funkcji wirtualnej PCIe (VF) na karcie sieciowej.
Nadmierne sterowniki wydają ten sterownik OID ustawiony na miniport sterownika dla funkcji fizycznej PCIe karty sieciowej (PF). To żądanie metody identyfikatora OID jest wymagane dla sterowników miniportu PF, które obsługują interfejs wirtualizacji we/wy pojedynczego głównego (SR-IOV).
Element członkowski InformationBuffer struktury NDIS_OID_REQUEST zawiera wskaźnik do buforu przydzielonego przez obiekt wywołujący. Ten bufor jest sformatowany tak, aby zawierał następujące elementy:
Struktura NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS zawierająca parametry operacji zapisu przestrzeni konfiguracji PCI VF.
Dodatkowe miejsce buforu zawierające dane do zapisania w przestrzeni konfiguracji PCI.
Uwagi
Sterownik miniportu VF działa w systemie operacyjnym gościa partycji podrzędnej Hyper-V. Z tego powodu sterownik miniportu VF nie może bezpośrednio uzyskać dostępu do zasobów sprzętowych, takich jak przestrzeń konfiguracji PCI VF. Tylko sterownik miniportu PF, który działa w systemie operacyjnym zarządzania partycji nadrzędnej Hyper-V, może uzyskać dostęp do przestrzeni konfiguracji PCI dla VF.
Nadmierny sterownik, taki jak stos wirtualizacji, wystawia żądanie zestawu identyfikatorów OID OID_SRIOV_WRITE_VF_CONFIG_SPACE, gdy sterownik miniportu VF wywołuje NdisMSetBusData zapisać w przestrzeni konfiguracji PCI.
Gdy obsługuje żądanie metody OID OID_SRIOV_WRITE_VF_CONFIG_SPACE, sterownik miniportu PF musi postępować zgodnie z następującymi wytycznymi:
Sterownik miniportu PF musi sprawdzić, czy VF, określony przez VFId elementu członkowskiego struktury NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS, ma zasoby, które zostały wcześniej przydzielone. Sterownik miniportu PF przydziela zasoby dla VF za pośrednictwem żądania metody OID OID_NIC_SWITCH_ALLOCATE_VF.
Jeśli zasoby dla określonego VF nie zostały przydzielone, sterownik musi zakończyć się niepowodzeniem żądania identyfikatora OID.
Sterownik miniportu PF wywołuje NdisMSetVirtualFunctionBusData do zapisu w żądanym obszarze konfiguracji PCI. Jednak sterownik miniportu PF może również zwrócić dane przestrzeni konfiguracji PCI dla VF, że sterownik buforowany z poprzednich operacji odczytu lub zapisu przestrzeni konfiguracji PCI.
Uwaga Jeśli niezależny dostawca sprzętu (IHV) udostępnia sterownik magistrali wirtualnej (VBD) w ramach pakietu sterowników SR-IOV , jego sterownik miniportu PF nie może wywołać NdisMSetVirtualFunctionBusData. Zamiast tego sterownik musi interfejs z vbD za pośrednictwem prywatnego kanału komunikacyjnego i zażądać, aby wywołanie VBD SetVirtualFunctionData. Ta funkcja jest uwidoczniona z interfejsu GUID_VPCI_INTERFACE_STANDARD obsługiwanego przez podstawowy sterownik magistrali PCI (VPCI).
Jeśli sterownik miniportu PF może pomyślnie ukończyć żądanie OID, sterownik musi skopiować żądane dane przestrzeni konfiguracji PCI do buforu, do którego odwołuje się InformationBuffer składowej struktury NDIS_OID_REQUEST. Sterownik kopiuje dane do buforu z przesunięciem określonym przez BufferOffset składową struktury NDIS_SRIOV_READ_VF_CONFIG_SPACE_PARAMETERS.
Aby uzyskać więcej informacji, zobacz Ustawianie danych konfiguracji PCI funkcji wirtualnej.
Kody stanu powrotu
Sterownik miniportu PF zwraca jeden z następujących kodów stanu dla żądania zestawu identyfikatora OID OID_SRIOV_WRITE_VF_CONFIG_SPACE.
Kod stanu | Opis |
---|---|
NDIS_STATUS_SUCCESS |
Żądanie OID zostało ukończone pomyślnie. |
NDIS_STATUS_NOT_SUPPORTED |
Sterownik miniportu PF nie obsługuje interfejsu wirtualizacji we/wy pojedynczego katalogu głównego (SR-IOV) lub nie jest włączony do korzystania z interfejsu. |
NDIS_STATUS_INVALID_PARAMETER |
Co najmniej jeden z elementów członkowskich struktury NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS ma nieprawidłowe wartości. |
NDIS_STATUS_INVALID_LENGTH |
Bufor informacyjny był zbyt krótki. Usługa NDIS ustawia DATA. SET_INFORMATION. BajtyNowe składowe w strukturze NDIS_OID_REQUEST do minimalnego wymaganego rozmiaru buforu. |
NDIS_STATUS_FAILURE |
Żądanie nie powiodło się z innych powodów. |
Wymagania
Wersja |
Obsługiwane w usłudze NDIS 6.30 i nowszych wersjach. |
Nagłówek |
Ntddndis.h (m.in. Ndis.h) |
Zobacz też
NDIS_SRIOV_WRITE_VF_CONFIG_SPACE_PARAMETERS
NdisMSetVirtualFunctionBusData