OID_NIC_SWITCH_CREATE_VPORT
Избыточный драйвер отправляет запрос метода идентификатора объекта (OID) OID_NIC_SWITCH_CREATE_VPORT для создания виртуального порта без изменений (VPort) на сетевом коммутаторе сетевого адаптера. Этот запрос метода OID также подключает созданный VPort к физической функции (PF) pci Express (PCIe) сетевого адаптера или ранее выделенной виртуальной функции PCIe (VF).
Избыточные драйверы выдают этот запрос метода OID к драйверу минипорта для PF сетевого адаптера. Этот запрос метода OID требуется для драйверов минипорта PF, которые поддерживают интерфейс одно корневой виртуализации ввода-вывода (SR-IOV).
Элемент InformationBuffer структуры NDIS_OID_REQUEST содержит указатель на структуру NDIS_NIC_SWITCH_VPORT_PARAMETERS .
Комментарии
Драйвер overlying инициализирует структуру NDIS_NIC_SWITCH_VPORT_PARAMETERS со сведениями о конфигурации создаваемого неdefault VPort. Сведения о конфигурации включают функцию PCIe, к которой подключен неdefault VPort, и количество пар очередей для неdefault VPort.
Когда драйверу минипорта PF отправляется запрос OID, драйвер выделяет аппаратные и программные ресурсы, связанные с указанным неразрешимый VPort. После успешного выделения всех ресурсов драйвер минипорта PF успешно завершает OID, возвращая NDIS_STATUS_SUCCESS из MiniportOidRequest.
Если запрос OID_NIC_SWITCH_CREATE_VPORT завершается успешно, драйвер мини-порта PF и вышерасполагающий драйвер должны сохранить значение VPortId неdefault VPort для последовательных операций. Значение VPortId используется во время следующих операций:
NDIS и избыточные драйверы используют значение VPortId для идентификации неразрешенный VPort в последовательных запросах OID, связанных с этим VPort, таких как OID_NIC_SWITCH_VPORT_PARAMETERS и OID_NIC_SWITCH_DELETE_VPORT.
Во время операций отправки NDIS задает значение VPortId для идентификации VPort, из которого был отправлен пакет. Это значение указывается в NDIS_NET_BUFFER_LIST_FILTERING_INFO данныхNET_BUFFER_LIST структуры.
Во время операций получения драйвер мини-порта PF задает значение VPortId , в которое должен быть переадресован пакет. Это значение также указывается в данных OOB NDIS_NET_BUFFER_LIST_FILTERING_INFO структуры NET_BUFFER_LIST .
Дополнительные сведения см. в разделе Создание виртуального порта.
Примечание VPort по умолчанию всегда существует и не создается, хотя запрос OID OID_NIC_SWITCH_CREATE_VPORT. VPort по умолчанию имеет идентификатор NDIS_DEFAULT_VPORT_ID. Когда драйвер минипорта PF создает коммутатор сетевого адаптера, драйвер автоматически подключает VPort по умолчанию к PF сетевого адаптера.
Коды состояния возврата
NDIS или драйвер минипорта PF возвращает один из следующих кодов состояния для запроса метода OID OID_NIC_SWITCH_CREATE_SWITCH.
Код состояния | Описание |
---|---|
NDIS_STATUS_SUCCESS |
Запрос OID успешно завершен. |
NDIS_STATUS_NOT_SUPPORTED |
Драйвер минипорта PF либо не поддерживает интерфейс SR-IOV, либо не поддерживает интерфейс . |
NDIS_STATUS_INVALID_PARAMETER |
Один или несколько членов структуры NDIS_NIC_SWITCH_VPORT_PARAMETERS имеют недопустимые значения. |
NDIS_STATUS_INVALID_LENGTH |
Длина информационного буфера меньше, чем sizeof(NDIS_NIC_SWITCH_VPORT_PARAMETERS). Драйвер минипорта PF должен задать data. METHOD_INFORMATION. Элемент BytesNeeded в NDIS_OID_REQUEST структуру до минимального требуемого размера буфера. |
NDIS_STATUS_FAILURE |
Сбой запроса по другим причинам. |
Требования
Версия |
Поддерживается в NDIS 6.30 и более поздних версиях. |
Заголовок |
Ntddndis.h (включая Ndis.h) |