NdisMConfigMSIXTableEntry 函数 (ndis.h)

NdisMConfigMSIXTableEntry 函数对设备分配的 MSI-X 消息的 MSI-X 表条目执行配置操作。

语法

NDIS_STATUS NdisMConfigMSIXTableEntry(
  [in] NDIS_HANDLE                  NdisMiniportHandle,
  [in] PNDIS_MSIX_CONFIG_PARAMETERS MSIXConfigParameters
);

参数

[in] NdisMiniportHandle

NDIS 提供给 的 NDIS 微型端口适配器句柄 MiniportInitializeEx 函数。

[in] MSIXConfigParameters

指向调用方分配的指针 NDIS_MSIX_CONFIG_PARAMETERS 结构,用于定义请求的配置操作并指定该特定操作所需的参数。

返回值

NdisMConfigMSIXTableEntry 从基础 PCI 总线驱动程序或以下状态值之一返回相应的失败代码:

返回代码 说明
NDIS_STATUS_SUCCESS
已成功重新配置 MSI-X 表条目。
NDIS_STATUS_INVALID_PARAMETER
NdisMConfigMSIXTableEntry 失败,因为 中的一个或多个成员 NDIS_MSIX_CONFIG_PARAMETERS 结构无效。

注解

支持 MSI-X 的 NDIS 微型端口驱动程序调用 NdisMConfigMSIXTableEntry 函数,以屏蔽、取消屏蔽 MSI-X 表条目或将其映射到设备分配的 MSI-X 消息。 支持 RSS 的微型端口驱动程序使用 NdisMConfigMSIXTableEntry 在运行时更改 MSI-X 表条目的 CPU 相关性。

NdisMConfigMSIXTableEntry 是 围绕 的包装器 GUID_MSIX_TABLE_CONFIG_INTERFACE 查询。 在 NDIS 调用 MiniportInitializeEx 函数之后,在驱动程序从 MiniportHaltEx 函数返回之前,微型端口驱动程序可以调用 NdisMConfigMSIXTableEntry

微型端口驱动程序可以设置 MSI-X 中断资源的 CPU 相关性,以便设备为每个 RSS 处理器提供至少一条 MSI-X 消息。 请注意,PCI 总线驱动程序最初映射 n 个 MSI-X 表条目 (其中 n 是 NIC 向总线报告的 MSI-X 表条目数,) 修改资源中的前 n 条 MSI-X 消息。 在 NDIS 调用 MiniportInitializeEx 后,当微型端口驱动程序更改特定 MSI-X 表条目的目标处理器时,驱动程序会调用 NdisMConfigMSIXTableEntry ,以将表条目映射到已将相关性设置为所需处理器的 MSI-X 消息。

对于 NdisMSIXTableConfigSetTableEntry 操作, NdisMConfigMSIXTableEntry 的调用方必须在 IRQL <= DISPATCH_LEVEL 运行。

对于 NdisMSIXTableConfigMaskTableEntryNdisMSIXTableConfigUnmaskTableEntry 操作, NdisMConfigMSIXTableEntry 的调用方可以在任何 IRQL 上运行。

要求

要求
最低受支持的客户端 在 NDIS 6.1 及更高版本中受支持。
目标平台 通用
标头 ndis.h (包括 Ndis.h)
Library Ndis.lib
IRQL 请参阅“备注”部分

另请参阅

MiniportHaltEx

MiniportInitializeEx

NDIS_MSIX_CONFIG_PARAMETERS