MINIPORT_DUMP_POINTERS構造体 (storport.h)

Storport ミニポート ドライバーは、この構造体を使用して 、SCSI_REQUEST_BLOCK (SRB) 関数コード SRB_FUNCTION_DUMP_POINTERSをサポートします。 ミニポート ドライバーがこの種類の SRB を受信すると、 DataBuffer SRB メンバーは 、MINIPORT_DUMP_POINTERS 構造体を指します。 この SRB は、ミニポート ドライバーの HwStorInitialize ルーチンから SRB が返された後、クラッシュ ダンプ データを保持するディスクを制御するために使用されるミニポート ドライバーに送信されます。 SRB_FUNCTION_DUMP_POINTERSをサポートするには、仮想ミニポート ドライバーが必要です。

構文

typedef struct _MINIPORT_DUMP_POINTERS {
  USHORT                 Version;
  USHORT                 Size;
  WCHAR                  DriverName[DUMP_MINIPORT_NAME_LENGTH];
  struct _ADAPTER_OBJECT *AdapterObject;
  PVOID                  MappedRegisterBase;
  ULONG                  CommonBufferSize;
  PVOID                  MiniportPrivateDumpData;
  ULONG                  SystemIoBusNumber;
  INTERFACE_TYPE         AdapterInterfaceType;
  ULONG                  MaximumTransferLength;
  ULONG                  NumberOfPhysicalBreaks;
  ULONG                  AlignmentMask;
  ULONG                  NumberOfAccessRanges;
  ACCESS_RANGE( )          *AccessRanges[];
  UCHAR                  NumberOfBuses;
  BOOLEAN                Master;
  BOOLEAN                MapBuffers;
  UCHAR                  MaximumNumberOfTargets;
} MINIPORT_DUMP_POINTERS, *PMINIPORT_DUMP_POINTERS;

メンバー

Version

[DUMP_MINIPORT_VERSION_1] に設定します。

Size

sizeof(MINIPORT_DUMP_POINTERS) に設定します。

DriverName[DUMP_MINIPORT_NAME_LENGTH]

パス情報のないミニポート ドライバーのワイド文字名 (たとえば、Miniport.sys)。

AdapterObject

NULL に設定します。

MappedRegisterBase

0 に設定します。

CommonBufferSize

必要な共通バッファーのサイズ。 サイズは 64 KB (65,536 バイト) を超えてはなりません。

MiniportPrivateDumpData

クラッシュ ダンプ中にミニポート ドライバーの HwStorFindAdapter ルーチンに渡されるコンテキスト。 コンテキストは予約済みメンバーで渡されるか、Windows 8以降では、PORT_CONFIGURATION_INFORMATION構造体の MiniportDumpData メンバーが渡されます。

SystemIoBusNumber

HBA が接続されている I/O バスのシステム割り当て番号を指定します。 Storport ドライバーは、このメンバーを初期化します。 Storport ドライバーで動作するミニポート ドライバーは、このメンバーを変更しないでください。 詳細については、PORT_CONFIGURATION_INFORMATIONSystemIoBusNumber メンバーを参照してください。

AdapterInterfaceType

I/O バス インターフェイスを識別します。 Storport ドライバーは、このメンバーを初期化します。 Storport ドライバーで動作するミニポート ドライバーは、このメンバーを変更しないでください。 詳細については、PORT_CONFIGURATION_INFORMATIONAdapterInterfaceType メンバーを参照してください。

MaximumTransferLength

1 回の転送操作で HBA がクラッシュダンプ モードで転送できる最大バイト数を指定します。 既定では、このメンバーの値はSP_UNINITIALIZED_VALUEです。これは、無制限の最大転送サイズを示します。 この値はミニポートのダンプ操作に固有であり、PORT_CONFIGURATION_INFORMATIONMaximumTransferLength メンバーの値とは異なる場合があります。

NumberOfPhysicalBreaks

データ バッファーでスキャッター/ギャザー リストを作成するために必要なアドレス範囲間の区切りの最大数を指定します。 つまり、アダプターでサポートできる散布/収集リスト エントリの数から 1 を引いた値です。 詳細については、PORT_CONFIGURATION_INFORMATIONNumberOfPhysicalBreaks メンバーを参照してください。

AlignmentMask

転送操作に HBA で必要なバッファーのアラインメント制限を示すマスクが含まれます。 有効なマスク値は、Microsoft Windows オペレーティング システムのさまざまなバージョンのメモリ マネージャーの特性によっても制限されます。 有効なマスク値は、0 (バイトアライン)、0x1 (ワードアライン)、0x3 (DWORD アライン)、および0x7 (二重 DWORD アライン) です。 ミニポート ドライバーは、HBA が散布/収集をサポートしている場合、このマスクを設定する必要があります。 PORT_CONFIGURATION_INFORMATION の AlignmentMask メンバーにも同じ考慮事項 が適用されます

NumberOfAccessRanges

配列内の AccessRanges 要素の 数を指定します。 詳細については、PORT_CONFIGURATION_INFORMATIONNumberOfAccessRanges メンバーを参照してください。

AccessRanges

ACCESS_RANGE型要素の配列へのポインター。 Storport ドライバーは、このメンバーを初期化します。 Storport ドライバーで動作するミニポート ドライバーは、このメンバーを変更しないでください。 詳細については、PORT_CONFIGURATION_INFORMATIONAccessRanges メンバーを参照してください。

NumberOfBuses

アダプターによって制御されるバスの数を指定します。 既定では、このメンバーの値は 0 です。 詳細については、PORT_CONFIGURATION_INFORMATIONNumberOfBuses メンバーを参照してください。

Master

TRUE の場合、HBA がバス マスターであることを示します。 Storport ドライバーは、ミニポート ドライバーがバス マスタリング DMA をサポートする必要があるため、このメンバーを TRUE に初期化します。 Storport ドライバーで動作するミニポート ドライバーは、この値を変更しないでください。 詳細については、PORT_CONFIGURATION_INFORMATIONの Master メンバーに 関するページを参照してください。

MapBuffers

Storport ドライバーが SRB データ バッファー アドレスをシステム仮想アドレスにマップするかどうかを示します。 詳細については、HW_INITIALIZATION_DATAMapBuffers メンバーを参照してください。

MaximumNumberOfTargets

アダプターが制御できるターゲット周辺機器の数を指定します。 詳細については、PORT_CONFIGURATION_INFORMATIONMaximumNumberOfTargets メンバーを参照してください。

注釈

Windows 8以降、物理 minport ドライバーは必要に応じてSRB_FUNCTION_DUMP_POINTERSをサポートできます。 物理ミニポートがこの関数をサポートしている場合は、StorPortInitialize を呼び出す前に、HW_INITIALIZATION_DATA構造体の FeatureSupport メンバーでSTOR_FEATURE_DUMP_POINTERS フラグを設定する必要があります。 MINIPORT_DUMP_POINTERSの Version メンバーと Size メンバーを少なくとも設定するには、物理ミニポート 必要です。 また、 PORT_CONFIGURATION_INFORMATIONで指定された値と異なる場合は、物理ミニポートに MaximumTransferLength メンバーが必要です。

要件

要件
Header storport.h (Storport.h を含む)

こちらもご覧ください

HW_INITIALIZATION_DATA

HwStorInitialize

PORT_CONFIGURATION_INFORMATION

SCSI_REQUEST_BLOCK