Share via


MINIPORT_DUMP_POINTERS-Struktur (storport.h)

Ein Storport-Miniporttreiber verwendet diese Struktur, um den SRB-Funktionscode ( SCSI_REQUEST_BLOCK ) SRB_FUNCTION_DUMP_POINTERS zu unterstützen. Wenn ein Miniporttreiber diese Art von SRB empfängt, verweist der DataBuffer-SRB-Member auf eine MINIPORT_DUMP_POINTERS-Struktur . Dieser SRB wird an den Miniporttreiber gesendet, der verwendet wird, um den Datenträger zu steuern, der die Absturzabbilddaten enthält, nachdem der SRB von der HwStorInitialize-Routine des Miniporttreibers zurückgegeben wurde. Virtuelle Miniporttreiber sind erforderlich, um SRB_FUNCTION_DUMP_POINTERS zu unterstützen.

Syntax

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;

Member

Version

Auf DUMP_MINIPORT_VERSION_1 festgelegt.

Size

Legen Sie auf sizeof(MINIPORT_DUMP_POINTERS) fest.

DriverName[DUMP_MINIPORT_NAME_LENGTH]

Der Breitzeichenname des Miniporttreibers ohne Pfadinformationen (z. B. Miniport.sys).

AdapterObject

Auf NULL festgelegt.

MappedRegisterBase

Auf NULL festlegen.

CommonBufferSize

Die Größe des erforderlichen allgemeinen Puffers. Die Größe darf nicht größer als 64 KB (65.536 Bytes) sein.

MiniportPrivateDumpData

Der Kontext, der während des Absturzabbilds an die HwStorFindAdapter-Routine des Miniporttreibers übergeben werden soll. Der Kontext wird im Reservierten Element oder, beginnend mit Windows 8, dem MiniportDumpData-Member der PORT_CONFIGURATION_INFORMATION-Struktur übergeben.

SystemIoBusNumber

Gibt die systemseitig zugewiesene Nummer des E/A-Busses an, mit dem der HBA verbunden ist. Der Storport-Treiber initialisiert diesen Member. Miniporttreiber, die mit dem Storport-Treiber arbeiten, dürfen diesen Member nicht ändern. Weitere Informationen finden Sie im SystemIoBusNumber-Element von PORT_CONFIGURATION_INFORMATION.

AdapterInterfaceType

Identifiziert die E/A-Busschnittstelle. Der Storport-Treiber initialisiert diesen Member. Miniporttreiber, die mit dem Storport-Treiber arbeiten, dürfen diesen Member nicht ändern. Weitere Informationen finden Sie im AdapterInterfaceType-Element von PORT_CONFIGURATION_INFORMATION.

MaximumTransferLength

Gibt die maximale Anzahl von Bytes an, die der HBA in einem einzelnen Übertragungsvorgang im Absturzdumpmodus übertragen kann. Standardmäßig ist der Wert dieses Members SP_UNINITIALIZED_VALUE, was eine unbegrenzte maximale Übertragungsgröße angibt. Dieser Wert ist spezifisch für den Speicherabbildvorgang des Miniports und kann sich vom Wert im MaximumTransferLength-Element des PORT_CONFIGURATION_INFORMATION unterscheiden.

NumberOfPhysicalBreaks

Gibt die maximale Anzahl von Unterbrechungen zwischen Adressbereichen an, die ein Datenpuffer zum Erstellen von Punkt-/Sammlungslisten haben kann. Anders ausgedrückt: Die Anzahl der Punkt-/Gather-Listeneinträge, die der Adapter unterstützen kann, minus 1. Weitere Informationen finden Sie im Member NumberOfPhysicalBreaks von PORT_CONFIGURATION_INFORMATION.

AlignmentMask

Enthält eine Maske, die die Ausrichtungseinschränkungen für Puffer angibt, die vom HBA für Übertragungsvorgänge erforderlich sind. Gültige Maskenwerte werden auch durch Merkmale der Speicher-Manager in verschiedenen Versionen der Microsoft Windows-Betriebssysteme eingeschränkt. Die gültigen Maskenwerte sind 0 (Byte ausgerichtet), 0x1 (Wort ausgerichtet), 0x3 (DWORD ausgerichtet) und 0x7 (doppelteS DWORD ausgerichtet). Der Miniporttreiber sollte diese Maske festlegen, wenn der HBA scatter/gather unterstützt. Die gleichen Überlegungen gelten für den AlignmentMask-Member von PORT_CONFIGURATION_INFORMATION.

NumberOfAccessRanges

Gibt die Anzahl der AccessRanges-Elemente im Array an. Weitere Informationen finden Sie im NumberOfAccessRanges-Member von PORT_CONFIGURATION_INFORMATION.

AccessRanges

Ein Zeiger auf ein Array von elementen vom Typ ACCESS_RANGE. Der Storport-Treiber initialisiert diesen Member. Miniporttreiber, die mit dem Storport-Treiber arbeiten, dürfen diesen Member nicht ändern. Weitere Informationen finden Sie im AccessRanges-Element von PORT_CONFIGURATION_INFORMATION.

NumberOfBuses

Gibt die Anzahl der Busse an, die vom Adapter gesteuert werden. Standardmäßig ist der Wert dieses Members null. Weitere Informationen finden Sie im NumberOfBuses-Member von PORT_CONFIGURATION_INFORMATION.

Master

Gibt bei TRUE an, dass der HBA ein Bus-master ist. Der Storport-Treiber initialisiert dieses Element auf TRUE, da seine Miniporttreiber das Busmastering-DMA unterstützen müssen. Miniport-Treiber, die mit dem Storport-Treiber arbeiten, dürfen diesen Wert nicht ändern. Weitere Informationen finden Sie im Mastermember von PORT_CONFIGURATION_INFORMATION.

MapBuffers

Gibt an, ob der Storport-Treiber SRB-Datenpufferadressen virtuellen Systemadressen zuordnet. Weitere Informationen finden Sie im MapBuffers-Element von HW_INITIALIZATION_DATA.

MaximumNumberOfTargets

Gibt die Anzahl der Zielperipheriegeräte an, die der Adapter steuern kann. Weitere Informationen finden Sie im Element MaximumNumberOfTargets von PORT_CONFIGURATION_INFORMATION.

Hinweise

Ab Windows 8 können physische Minporttreiber optional SRB_FUNCTION_DUMP_POINTERS unterstützen. Wenn ein physischer Miniport diese Funktion unterstützt, muss er das flag STOR_FEATURE_DUMP_POINTERS im FeatureSupport-Element der HW_INITIALIZATION_DATA-Struktur festlegen, bevor StorPortInitialize aufgerufen wird. Physische Miniports sind erforderlich, um mindestens die Member Version und Größe von MINIPORT_DUMP_POINTERS festzulegen. Wenn sich der in PORT_CONFIGURATION_INFORMATION angegebene Wert unterscheidet, ist der MaximumTransferLength-Member für einen physischen Miniport erforderlich.

Anforderungen

Anforderung Wert
Header storport.h (Storport.h einschließen)

Weitere Informationen

HW_INITIALIZATION_DATA

HwStorInitialize

PORT_CONFIGURATION_INFORMATION

SCSI_REQUEST_BLOCK