NdkModifySrq (NDK_FN_MODIFY_SRQ) 函数修改 NDK 共享接收队列(SRQ)的大小和通知阈值。
语法
NDK_FN_MODIFY_SRQ NdkFnModifySrq;
NTSTATUS NdkFnModifySrq(
[in] NDK_SRQ *pNdkSrq,
[in] ULONG SrqDepth,
[in] ULONG NotifyThreshold,
[in] NDK_FN_REQUEST_COMPLETION RequestCompletion,
[in, optional] PVOID RequestContext
)
{...}
参数
[in] pNdkSrq
指向 NDK 共享接收队列 (SRQ) 对象的指针(NDK_SRQ)。
[in] SrqDepth
SRQ 的新大小。 新大小必须小于或等于在 NDK_ADAPTER_INFO 结构的 MaxSrqDepth 成员中指定的大小。 如果大小为零,则表示不请求深度修改。 也就是说,必须保留现有的 SRQ 深度值。
[in] NotifyThreshold
将触发 SRQ 通知回调的排队接收请求数。 如果此值大于零,则 NDK 提供程序必须在排队接收请求数低于指定值时触发 SRQ 通知。 如果排队接收请求数已低于此函数调用时的阈值,则必须生成 SRQ 通知。 生成 SRQ 通知后,将解除进一步通知,直到 NDK 使用者使用非零阈值再次调用此函数。 如果指定了阈值为零,则提供程序必须保留当前的 SRQ 通知阈值和武装状态。
[in] RequestCompletion
指向请求完成回调例程的指针,NdkRequestCompletion(NDK_FN_REQUEST_COMPLETION)。
[in, optional] RequestContext
要传递给 RequestCompletion 参数中指定的回调函数的 Context 参数的上下文值。
返回值
NdkModifySrq 函数返回以下 NTSTATUS 代码之一。
| 返回代码 | 描述 |
|---|---|
|
请求已成功完成。 |
|
该作处于挂起状态,稍后将完成。 驱动程序将调用指定的 RequestCompletion (NDK_FN_REQUEST_COMPLETION) 函数来完成挂起的作。 |
|
请求失败,因为 SrqDepth 参数中的值不在 NDK_ADAPTER_INFO 结构中指定的限制内。 |
|
发生错误。 |
言论
NdkModifySrq 修改 NDK 共享接收队列(SRQ)对象(NDK_SRQ)的大小和通知阈值。
要求
| 要求 | 价值 |
|---|---|
| 最低支持的客户端 | NDIS 6.30 及更高版本不支持。 |
| 支持的最低服务器 | Windows Server 2012 |
| 目标平台 | 窗户 |
| 标头 | ndkpi.h (包括 Ndkpi.h) |
| IRQL | <=DISPATCH_LEVEL |