Поделиться через


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)

См. также раздел


MiniportOidRequest

NDIS_NIC_SWITCH_PARAMETERS

NDIS_NIC_SWITCH_VPORT_PARAMETERS

NDIS_OID_REQUEST

NET_BUFFER_LIST

OID_NIC_SWITCH_ALLOCATE_VF

OID_NIC_SWITCH_DELETE_VPORT

OID_NIC_SWITCH_PARAMETERS

OID_NIC_SWITCH_VPORT_PARAMETERS