Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
NDIS выдает запрос метода идентификатора объекта (OID) OID_SRIOV_BAR_RESOURCES для определения ресурсов памяти, выделенных базовому регистру адресов PCI Express (PCIe) виртуальной функции PCIe.
NDIS выдает этот запрос метода OID к мини-драйверу сетевого адаптера для физической функции PCIe (PF). Этот запрос метода OID требуется для драйверов минипорта PF, поддерживающих интерфейс виртуализации единого корневого ввода-вывода (SR-IOV).
Элемент InformationBuffer структуры NDIS_OID_REQUEST содержит указатель на буфер. Этот буфер содержит следующие структуры:
Структура NDIS_SRIOV_BAR_RESOURCES_INFO, указывающая VF и BAR, для которых драйвер мини-порта PF возвращает сведения о ресурсах.
Структура CM_PARTIAL_RESOURCE_DESCRIPTOR, которая следует NDIS_SRIOV_BAR_RESOURCES_INFO структуре. Структура CM_PARTIAL_RESOURCE_DESCRIPTOR содержит сведения о ресурсах памяти, выделенных для указанной ПАНЕЛИ.
Замечания
NDIS выдает запрос метода OID OID_SRIOV_BAR_RESOURCES, чтобы получить системный физический адрес и длину ресурсов памяти, выделенных для панели VF. Прежде чем он выдает запрос метода OID, NDIS форматирует структуру NDIS_SRIOV_BAR_RESOURCES_INFO следующим образом:
NDIS задает VFId член структуры NDIS_SRIOV_BAR_RESOURCES_INFO идентификатор, связанный с VF.
NDIS задает элемент BarIndex структуры NDIS_SRIOV_BAR_RESOURCES_INFO в индекс BAR для указанного VF. Индекс BAR — это смещение регистра в таблице BAR в пространстве конфигурации PCI.
NDIS задает элемент BarResourcesOffset структуры NDIS_SRIOV_BAR_RESOURCES_INFO смещение в единицах байтов с начала NDIS_SRIOV_BAR_RESOURCES_INFO структуры CM_PARTIAL_RESOURCE_DESCRIPTOR.
Примечание переопределения драйверов, таких как протокол или драйверы фильтров, не может выдавать запросы метода OID OID_SRIOV_BAR_RESOURCES драйверу мини-порта PF.
Когда драйвер мини-порта PF получает запрос метода OID, драйвер возвращает ресурсы для указанной панели, отформатируя структуру CM_PARTIAL_RESOURCE_DESCRIPTOR в InformationBuffer члена структуры NDIS_OID_REQUEST. Драйвер форматирует структуру CM_PARTIAL_RESOURCE_DESCRIPTOR с системными аппаратными ресурсами, связанными с bar для указанной виртуальной машины.
Примечание Драйвер должен отформатировать структуру для типа ресурса CmResourceTypeMemory.
Коды состояния возврата
Драйвер минипорта PF возвращает один из следующих кодов состояния для запроса метода OID_SRIOV_BAR_RESOURCES.
| Код состояния | Описание |
|---|---|
NDIS_STATUS_SUCCESS |
Запрос OID успешно завершен. |
NDIS_STATUS_NOT_SUPPORTED |
Драйвер мини-порта PF либо не поддерживает интерфейс виртуализации одно корневых операций ввода-вывода (SR-IOV) или не включен для использования интерфейса. |
NDIS_STATUS_INVALID_PARAMETER |
Одно или несколько элементов структуры NDIS_SRIOV_BAR_RESOURCES_INFO имеют недопустимые значения. |
NDIS_STATUS_INVALID_LENGTH |
Буфер информации меньше (sizeof(NDIS_SRIOV_BAR_RESOURCES_INFO) + sizeof(CM_PARTIAL_RESOURCE_DESCRIPTOR). Драйвер мини-порта PF должен задать DATA. METHOD_INFORMATION. Элемент BytesNeeded в структуре NDIS_OID_REQUEST к минимальному размеру буфера, который требуется. |
NDIS_STATUS_FAILURE |
Запрос завершился ошибкой по другим причинам. |
Требования
Версия |
Поддерживается в NDIS 6.30 и более поздних версиях. |
Заголовок |
Ntddndis.h (include Ndis.h) |