NDK_FN_CREATE_QP回呼函式 (ndkpi.h)
NdkCreateQp (NDK_FN_CREATE_QP) 函式會建立 NDK 佇列組 (QP) 物件。
語法
NDK_FN_CREATE_QP NdkFnCreateQp;
NTSTATUS NdkFnCreateQp(
[in] NDK_PD *pNdkPd,
[in] NDK_CQ *pReceiveCq,
[in] NDK_CQ *pInitiatorCq,
[in, optional] PVOID QPContext,
[in] ULONG ReceiveQueueDepth,
[in] ULONG InitiatorQueueDepth,
[in] ULONG MaxReceiveRequestSge,
[in] ULONG MaxInitiatorRequestSge,
[in] ULONG InlineDataSize,
[in] NDK_FN_CREATE_COMPLETION CreateCompletion,
[in, optional] PVOID RequestContext,
NDK_QP **ppNdkQp
)
{...}
參數
[in] pNdkPd
NDK 保護網域 (PD) 物件的指標(NDK_PD)。
[in] pReceiveCq
用於接收要求完成的完成佇列 (CQ) 指標(NDK_CQ)。
[in] pInitiatorCq
要用於啟動器要求完成之 CQ 的指標。
[in, optional] QPContext
要針對在此 QP 上張貼的所有要求,在 QPContext 中傳回的內容值NDK_RESULT 結構成員。
[in] ReceiveQueueDepth
可透過 QP 未完成的接收要求數目上限。 這個值必須小於或等於 NDK_ADAPTER_INFO 結構之 MaxReceiveQueueDepth 成員中的值。
[in] InitiatorQueueDepth
可透過 QP 未完成的啟動器要求數目上限。 這個值必須小於或等於 MaxInitiatorQueueDepth NDK_ADAPTER_INFO 結構成員中的值。
[in] MaxReceiveRequestSge
單一接收要求中可支援的最大 SG 數目。 這個值必須小於或等於NDK_ADAPTER_INFO結構之 MaxReceiveRequestS ge 成員中的值。
[in] MaxInitiatorRequestSge
單一啟動器要求可支援的最大SG數目。 此值必須小於或等於 MaxInitiatorRequestSge 結構 NDK_ADAPTER_INFO成員中的值。
[in] InlineDataSize
可以在單一傳送或寫入要求中傳送的位元組內嵌數據數量上限。 此值必須小於或等於 MaxInlineDataSize 中 NDK_ADAPTER_INFO 結構成員中的值。
[in] CreateCompletion
NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) 函式的指標,可完成建立 NDK 物件。
[in, optional] RequestContext
NDK 提供者傳回 NdkCreateCompletion 函式的內容值,該函式是在 createCompletion 參數 指定。
ppNdkQp
如果要求成功而不傳回STATUS_PENDING,則會在此位置傳回所建立 QP 物件的指標(NDK_QP)。 如果要求傳回STATUS_PENDING,則會忽略此參數,並使用 createCompletion 參數中指定的回呼傳回建立的物件。
傳回值
NdkCreateQp 函式會傳回下列其中一個 NTSTATUS 程式代碼。
傳回碼 | 描述 |
---|---|
|
QP 物件已成功建立,並使用 *ppNdkQp 參數傳回。 |
|
作業擱置中,稍後將會完成。 提供者會呼叫 createCompletion 參數 中指定的函式NDK_FN_CREATE_COMPLETION,以完成暫止的作業。 |
|
要求失敗,因為要求的 ReceiveQueueDepth、InitiatorQueueDepth、MaxReceiveRequestSge、MaxInitiatorRequestSge或 InlineDataSize 不在 NDK_ADAPTER_INFO 結構中指定的限制內。 |
|
要求因資源不足而失敗。
重要 要求可能會內嵌失敗,以及使用此狀態代碼以異步方式失敗。
|
|
發生錯誤。 |
言論
NdkCreateQp 函式會建立 NDK 佇列組 (QP) 物件。 QP 是由接收佇列和啟動器佇列所組成。 接收佇列用來張貼接收要求。 啟動器佇列用於起始傳送、系結、快速註冊、讀取、寫入和失效要求。
如果函式傳回STATUS_SUCCESS,則會在 ppNdkQp 參數中傳回已建立的物件。 如果 NdkCreateQp 傳回STATUS_PENDING,則 NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) 函式會傳回 CreateCompletion 參數中指定的物件。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 不支援,在 NDIS 6.30 和更新版本中支援。 |
支援的最低伺服器 | Windows Server 2012 |
目標平臺 | 窗戶 |
標頭 | ndkpi.h (包括 Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |