次の方法で共有


StorPortAllocateMdl 関数 (storport.h)

StorPortAllocateMdl ルーチンは、指定された非ページ プール メモリを記述するために MDL を割り当てます。

構文

ULONG StorPortAllocateMdl(
  [in]  PVOID HwDeviceExtension,
  [in]  PVOID BufferPointer,
  [in]  ULONG NumberOfBytes,
  [out] PVOID *Mdl
);

パラメーター

[in] HwDeviceExtension

ホスト バス アダプター (HBA) のハードウェア デバイス拡張機能へのポインター。

[in] BufferPointer

MDL が記述するバッファーのベース仮想アドレスへのポインター。

[in] NumberOfBytes

このパラメーターは、MDL が記述するバッファーの長さをバイト単位で指定します。

[out] Mdl

割り当てられた MDL を受け取るポインター。

戻り値

StorPortAllocateMdl は、次のいずれかの状態コードを返します。

リターン コード 形容
STOR_STATUS_NOT_IMPLEMENTED
この関数は、アクティブなオペレーティング システムでは実装されません。
STOR_STATUS_SUCCESS
ルーチンが MDL を正常に割り当てたことを示します。
STOR_STATUS_INVALID_PARAMETER
MDL を受け取るポインターは NULL

バッファーへのポインターは NULL

STOR_STATUS_INVALID_IRQL
呼び出しが無効な IRQL で行われました。
STOR_STATUS_INSUFFICIENT_RESOURCES
指定されたバッファーを記述するために MDL を割り当てることができません。

備考

ミニポート ドライバーは、StorPortAllocateMdl ルーチンを呼び出して、非ページ プールからのメモリ ブロックを記述する MDL を割り当てます。 MDL を解放するには、ミニポート ドライバーは、StorPortFreeMdl ルーチンを呼び出します。

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー storport.h (Storport.h を含む)
IRQL <=DISPATCH_LEVEL
DDI コンプライアンス規則 する StorPortIrql(storport) する