OID_NIC_SWITCH_VPORT_PARAMETERS

过度部署的驱动程序可以在支持单根 I/O 虚拟化(SR-IOV)的网络适配器上创建的 NIC 交换机上获取虚拟端口 (VPort) 的参数。 驱动程序发出OID_NIC_SWITCH_VPORT_PARAMETERS的对象标识符 (OID) 方法请求以获取这些参数。

过度分配驱动程序发出OID_NIC_SWITCH_VPORT_PARAMETERS的 OID 集请求,以设置附加到网络适配器 NIC 交换机的指定 VPort 的配置参数。 这些 OID 集请求将颁发给网络适配器的 PCI Express(PCIe)物理功能(PF)的微型端口驱动程序。 支持单个根 I/O 虚拟化(SR-IOV)接口的 PF 微型端口驱动程序需要这些 OID 集请求。

NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向 NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的指针。

过度分配驱动程序通过将 NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的 VPortId 成员设置为与 VPort 关联的标识符来指定 OID 方法的 VPort 或设置请求。 过度的驱动程序通过以下方法之一获取 VPort 标识符:

言论

OID_NIC_SWITCH_VPORT_PARAMETERS可用于 OID 方法请求或 OID 集请求

处理 OID_NIC_SWITCH_VPORT_PARAMETERS 的 OID 方法请求

过度分配驱动程序发出OID_NIC_SWITCH_VPORT_PARAMETERS的 OID 方法请求,以查询附加到网络适配器 NIC 交换机的 VPort 的当前配置参数。 过度配置驱动程序通过将 NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的 VPortId 成员设置为 VPort 标识符来指定要查询的 VPort。

NDIS 处理微型端口驱动程序OID_NIC_SWITCH_VPORT_PARAMETERS的 OID 方法请求。 NDIS 返回从以前的 OID 请求中获取的信息 OID_NIC_SWITCH_CREATE_VPORTOID_NIC_SWITCH_ENUM_VPORTS

从 OID 方法请求成功返回后,NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向 NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的指针。 此结构包含指定交换机的配置参数。

有关详细信息,请参阅 查询虚拟端口的参数

处理 OID_NIC_SWITCH_VPORT_PARAMETERS 的 OID 集请求

过度分配驱动程序发出OID_NIC_SWITCH_VPORT_PARAMETERS的 OID 集请求,以更改附加到网络适配器 NIC 交换机的 VPort 的当前配置参数。 此 OID 请求可用于更新默认和非默认 VPorts 的参数。

只能更改 VPort 的配置参数的有限子集。 过度配置驱动程序通过设置 NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的以下成员来指定要更改的参数:

  1. VPortId 成员设置为要更改其参数的 VPort 的标识符。

  2. 相应的 NDIS_NIC_SWITCH_VPORT_PARAMETERS_Xxx_CHANGED 标志在 标志 成员中设置。 只有在 Ntddndis.h 中定义了相应的 NDIS_NIC_SWITCH_PARAMETERS_Xxx_CHANGED 标志时,才能更改 NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的成员。

  3. NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的相应成员使用要更改的 VPort 配置参数进行设置。

在 PF 微型端口驱动程序收到 OID_NIC_SWITCH_VPORT_PARAMETERS 的 OID 集请求后,驱动程序使用配置参数配置硬件。 驱动程序只能更改NDIS_NIC_SWITCH_VPORT_PARAMETERS_Xxx_CHANGED 标志标识的 标志NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构成员标识的配置参数。

有关详细信息,请参阅 设置虚拟端口的参数。

返回状态代码

NDIS 或 PF 微型端口驱动程序返回以下状态代码,用于设置或方法 OID 请求OID_NIC_SWITCH_VPORT_PARAMETERS。

状态代码 描述

NDIS_STATUS_SUCCESS

请求成功完成。 InformationBuffer 指向 NDIS_NIC_SWITCH_CAPABILITIES 结构。

NDIS_STATUS_NOT_SUPPORTED

PF 微型端口驱动程序要么不支持单个根 I/O 虚拟化(SR-IOV)接口,要么未启用该接口。

NDIS_STATUS_INVALID_PARAMETER

NDIS_NIC_SWITCH_VPORT_PARAMETERS 结构的一个或多个成员具有无效值。

NDIS_STATUS_INVALID_LENGTH

信息缓冲区太短。 NDIS 或 PF 微型端口驱动程序设置 数据。METHOD_INFORMATION。BytesNeeded 成员(对于 OID 方法请求)或 DATA。SET_INFORMATION。NDIS_OID_REQUEST 结构中的 BytesNeeded 成员(对于 OID 集请求)到所需的最小缓冲区大小。

NDIS_STATUS_FAILURE

由于其他原因,请求失败。

要求

版本

NDIS 6.30 及更高版本中受支持。

页眉

Ntddndis.h (包括 Ndis.h)

另请参阅


NDIS_NIC_SWITCH_VPORT_PARAMETERS

NDIS_OID_REQUEST

OID_NIC_SWITCH_CREATE_VPORT

OID_NIC_SWITCH_ENUM_VPORTS