FN_VMB_CHANNEL_CREATE_GPADL_FROM_BUFFER コールバック関数 (vmbuskernelmodeclientlibapi.h)
[一部の情報は、商用リリース前に大幅に変更される可能性があるプレリリース製品に関連しています。 Microsoft は、ここで提供される情報に関して明示的または黙示的な保証を行いません。
VmbChannelCreateGpadlFromBuffer 関数は、クライアント側バッファーを記述するゲスト物理アドレス記述子リスト (GPADL) を作成します。 GPADL は、サーバーでバッファーにアクセスするために使用できます。
構文
FN_VMB_CHANNEL_CREATE_GPADL_FROM_BUFFER FnVmbChannelCreateGpadlFromBuffer;
NTSTATUS FnVmbChannelCreateGpadlFromBuffer(
VMBCHANNEL Channel,
UINT32 Flags,
PVOID Buffer,
UINT32 ByteCount,
PUINT32 GpadlHandle
)
{...}
パラメーター
Channel
チャネルのハンドル。
Flags
フラグ。 指定できる値は次のとおりです。
価値 | 意味 |
---|---|
|
この値を指定すると、バッファーは読み取り専用になります。 それ以外の場合、サーバーはバッファーに書き込むことができます。 これはセキュリティ対策ではありませんが、スナップショットとライブ マイグレーションのパフォーマンスを向上させることができます。 |
Buffer
バッファー。プローブされ、GPADL が切断されるまでロックされます。
ByteCount
バッファーの長さ (バイト単位)。
GpadlHandle
作成されたメモリ記述子リスト (MDL) の GPADL ハンドル。 これをサーバーに送信して、VmbChannelMapGpadl 関数で使用します。
戻り値
操作が成功した場合はSTATUS_SUCCESSを返し、それ以外の場合は適切な NTSTATUS エラー コードを返します。
備考
この関数が戻ると、VMBus は既に GPADL の説明を反対のエンドポイントに送信し、確認を受け取っているため、サーバー エンドポイントは VmbChannelMapGpadl 呼び出すことができます。
GPADL は、VmbChannelDeleteGpadl 関数を使用して削除する必要があります。
大事な
この関数は、Vmbkmcl.sys バス ドライバーによって提供される VMBus カーネル モード クライアント ライブラリ (KMCL) インターフェイスを介して呼び出されます。 これは、KMCL_CLIENT_INTERFACE_V1 構造体からアクセスされるクライアント関数です。
詳細については、KMCL_CLIENT_INTERFACE_V1の「解説」セクションを参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 バージョン 1803 |
ヘッダー | vmbuskernelmodeclientlibapi.h |
関連項目
VmbChannelDeleteGpadl を する
VmbChannelMapGpadl を する