OID_NIC_SWITCH_ENUM_VFS

过度的驱动程序或用户模式应用程序发出OID_NIC_SWITCH_ENUM_VFS的对象标识符(OID)方法请求以获取数组。 数组中的每个元素指定附加到网络适配器 NIC 交换机上的 NIC 交换机的 PCI Express(PCIe)虚拟函数(VF)的属性。

从此 OID 查询请求成功返回后,NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向包含以下项的缓冲区的指针:

言论

过度分配驱动程序和用户模式应用程序发出 OID 方法请求OID_NIC_SWITCH_ENUM_VFS以枚举附加到网络适配器的 NIC 交换机的 VF。

在驱动程序或应用程序发出 OID 请求之前,它必须初始化与请求一起传递的 NDIS_NIC_SWITCH_VF_INFO_ARRAY 结构。 初始化 NDIS_NIC_SWITCH_VF_INFO_ARRAY 结构时,驱动程序或应用程序必须遵循以下准则:

  • 如果在 标志 成员中设置了NDIS_NIC_SWITCH_VF_INFO_ARRAY_ENUM_ON_SPECIFIC_SWITCH标志,驱动程序或应用程序必须将 SwitchId 成员设置为 SR-IOV 网络适配器上的 NIC 交换机标识符。 通过以这种方式设置这些成员,VF 信息仅针对 SR-IOV 网络适配器上的指定 NIC 开关返回。

    注释 过度分配的驱动程序和用户模式应用程序可以通过发出 OID_NIC_SWITCH_ENUM_SWITCHES的 OID 查询请求来获取 NIC 切换标识符。

  • 如果 标志 成员设置为零,驱动程序或应用程序必须将 SwitchId 成员设置为零。 通过以这种方式设置这些成员,将为 SR-IOV 网络适配器上的所有 NIC 交换机返回 VF 信息。

注释 从 Windows Server 2012 开始,Windows 仅支持网络适配器上的默认 NIC 开关。 无论在 标志 成员中设置的标志,SwitchId 成员都必须设置为NDIS_DEFAULT_SWITCH_ID。

有关 NIC 交换机的详细信息,请参阅 NIC 交换机

返回状态代码

NDIS 处理微型端口驱动程序OID_NIC_SWITCH_ENUM_VFS请求的 OID 方法请求。 驱动程序将不会发出此 OID 请求。

当 NDIS 处理OID_NIC_SWITCH_ENUM_VFS请求时,它将返回以下状态代码之一。

状态代码 描述

NDIS_STATUS_SUCCESS

OID 请求已成功完成。

NDIS_STATUS_NOT_SUPPORTED

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

NDIS_STATUS_INVALID_PARAMETER

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

NDIS_STATUS_INVALID_LENGTH

信息缓冲区太短。 NDIS 设置 数据。METHOD_INFORMATION。NDIS_OID_REQUEST 结构中的 BytesNeeded 成员达到所需的最小缓冲区大小。

NDIS_STATUS_FAILURE

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

要求

版本

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

页眉

Ntddndis.h (包括 Ndis.h)

另请参阅


NDIS_NIC_SWITCH_VF_INFO

NDIS_NIC_SWITCH_VF_INFO_ARRAY

NDIS_OID_REQUEST

OID_NIC_SWITCH_ALLOCATE_VF

OID_NIC_SWITCH_CREATE_SWITCH

OID_NIC_SWITCH_VF_PARAMETERS