NDK_FN_WRITE コールバック関数 (ndkpi.h)

NdkWrite (NDK_FN_WRITE) 関数は、NDK キュー ペア (QP) に書き込み要求を投稿します。

構文

NDK_FN_WRITE NdkFnWrite;

NTSTATUS NdkFnWrite(
  [in]           NDK_QP *pNdkQp,
  [in, optional] PVOID RequestContext,
                 const NDK_SGE *pSgl,
  [in]           ULONG nSge,
  [in]           UINT64 RemoteAddress,
  [in]           UINT32 RemoteToken,
  [in]           ULONG Flags
)
{...}

パラメーター

[in] pNdkQp

NDK キュー ペア (QP) オブジェクト (NDK_QP) へのポインター。

[in, optional] RequestContext

この要求のNDK_RESULT構造体の RequestContext メンバーで返されるコンテキスト値。

pSgl

書き込むデータを保持するバッファーを表す SGE 構造体 (NDK_SGE) の配列。

[in] nSge

pSgl パラメーターで指定された配列内の SGE 構造体の数。

[in] RemoteAddress

ローカル ホストのバイト順に指定された、書き込むリモート アドレス。 NDK コンシューマーは、リモートで提供される値にオフセットを追加した可能性があります。

[in] RemoteToken

リモートで提供されるメモリ トークン。NDK コンシューマーからのバイトの不透明な配列。

[in] Flags

許可される操作を指定するフラグのビットごとの OR。 次のフラグがサポートされています。

意味
NDK_OP_FLAG_SILENT_SUCCESS
0x00000001
この要求が正常に完了したことを示しますが、送信完了キューに完了イベントは生成されません。 ただし、失敗した要求では、完了キューに完了が生成されます。
NDK_OP_FLAG_READ_FENCE
0x00000002
ハードウェアがこの要求の処理を開始する前に、以前のすべての読み取り要求を完了する必要があることを示します。
NDK_OP_FLAG_DEFER
0x00000200
NDK プロバイダーに対して、処理のためにハードウェアへの要求を示すのを延期する可能性があることを示します。 このフラグの詳細については、「 NDKPI 遅延処理スキーム」を参照してください。

メモこのフラグは、NDKPI 1.2 (Windows Server 2012 R2) 以降でのみサポートされます。

戻り値

NdkWrite 関数は、次のいずれかの NTSTATUS コードを返します。

リターン コード 説明
STATUS_SUCCESS
要求が正常に投稿されました。 作業要求が完了すると、完了エントリは完了キュー (CQ) にキューに入れられます。
STATUS_CONNECTION_INVALID
キュー ペア (QP) が接続されていません。
その他の状態コード
エラーが発生しました。

解説

NdkWrite は、キュー ペア (QP) に書き込み要求をポストします。

要件

要件
サポートされている最小のクライアント サポートされていません。NDIS 6.30 以降でサポートされています。
サポートされている最小のサーバー Windows Server 2012
対象プラットフォーム Windows
ヘッダー ndkpi.h (Ndkpi.h を含む)
IRQL <=DISPATCH_LEVEL

こちらもご覧ください

NDKPI 遅延処理スキーム

NDKPI 作業要求投稿要件

NDK_QP

NDK_RESULT

NDK_SGE