NDK_FN_CREATE_MR回调函数 (ndkpi.h)

NdkCreateMr (NDK_FN_CREATE_MR) 函数 (MR) 对象创建 NDK 内存区域。

语法

NDK_FN_CREATE_MR NdkFnCreateMr;

NTSTATUS NdkFnCreateMr(
  [in]           NDK_PD *pNdkPd,
  [in]           BOOLEAN FastRegister,
  [in]           NDK_FN_CREATE_COMPLETION CreateCompletion,
  [in, optional] PVOID RequestContext,
                 NDK_MR **ppNdkMr
)
{...}

参数

[in] pNdkPd

指向 NDK 保护域的指针 (PD) 对象 (NDK_PD) 。

[in] FastRegister

如果为 TRUE,则 MR 仅适用于快速注册。 否则,MR 仅用于正常寄存器。

[in] CreateCompletion

指向 NdkCreateCompletion 的指针 (NDK_FN_CREATE_COMPLETION 完成 NDK 对象的创建) 函数。

[in, optional] RequestContext

NDK 提供程序传递回 CreateCompletion 参数中指定的 NdkCreateCompletion 函数的上下文值。

ppNdkMr

如果请求成功但不返回 STATUS_PENDING ,则会在此位置返回指向创建的 MR 对象的指针 (NDK_MR) 。 如果 NdkCreateMr 返回 STATUS_PENDING,则忽略此参数,并使用 CreateCompletion 参数中指定的回调返回创建的对象。

返回值

NdkCreateMr 函数返回以下 NTSTATUS 代码之一。

返回代码 说明
STATUS_SUCCESS
已成功创建 MR 对象,并使用 *ppNdkMr 参数返回。
STATUS_PENDING
操作处于挂起状态,稍后将完成。 提供程序将调用 CreateCompletion 参数中指定的函数 (NDK_FN_CREATE_COMPLETION) 来完成挂起的操作。
STATUS_INSUFFICIENT_RESOURCES
由于资源不足,请求失败。
重要 请求可能会因此状态代码而以异步方式内联失败。
 
其他状态代码
出现了错误。

注解

NdkCreateMr 函数 (可用于内存注册和快速注册请求的 MR) 对象创建 NDK 内存区域。 如果函数返回 STATUS_SUCCESS,则创建的 对象将在 ppNdkMr 参数中返回。 如果 NdkCreateMr 返回 STATUS_PENDING,则创建的对象由 NdkCreateCompletion (NDK_FN_CREATE_COMPLETIONcreateCompletion 参数中指定的) 函数返回。

要求

要求
最低受支持的客户端 不支持,NDIS 6.30 及更高版本支持。
最低受支持的服务器 Windows Server 2012
目标平台 Windows
标头 ndkpi.h (包括 Ndkpi.h)
IRQL <=DISPATCH_LEVEL

另请参阅

NDKPI 对象生存期要求

NDK_FN_CREATE_COMPLETION

NDK_MR

NDK_PD