структура MINIPORT_DUMP_POINTERS (storport.h)
Драйвер мини-порта Storport использует эту структуру для поддержки кода функции SCSI_REQUEST_BLOCK (SRB) SRB_FUNCTION_DUMP_POINTERS. Когда драйвер мини-порта получает такой тип SRB, член SRB DataBuffer указывает на MINIPORT_DUMP_POINTERS структуру. Этот SRB отправляется драйверу мини-порта, который используется для управления диском, на котором хранятся данные аварийного дампа после того, как SRB был возвращен из подпрограммы HwStorInitialize драйвера мини-порта. Для поддержки 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
Задайте нулевое значение.
CommonBufferSize
Требуемый размер общего буфера. Размер не должен превышать 64 КБ (65 536 байт).
MiniportPrivateDumpData
Контекст, который передается в подпрограмму HwStorFindAdapter водителя мини-порта во время аварийного дампа. Контекст передается в элемент Reserved или, начиная с Windows 8, элемент MiniportDumpDataструктуры PORT_CONFIGURATION_INFORMATION.
SystemIoBusNumber
Указывает назначаемый системой номер шины ввода-вывода, к которой подключен адаптер HBA. Драйвер Storport инициализирует этот элемент. Драйверы miniport, работающие с драйвером Storport, не должны изменять этот элемент. Дополнительные сведения см. в разделе Элемент SystemIoBusNumberPORT_CONFIGURATION_INFORMATION.
AdapterInterfaceType
Определяет интерфейс шины ввода-вывода. Драйвер Storport инициализирует этот элемент. Драйверы miniport, работающие с драйвером Storport, не должны изменять этот элемент. Дополнительные сведения см. в разделе Элемент AdapterInterfaceTypePORT_CONFIGURATION_INFORMATION.
MaximumTransferLength
Указывает максимальное количество байтов, которые может передавать адаптер HBA за одну операцию передачи в режиме аварийного восстановления. По умолчанию значение этого элемента равно SP_UNINITIALIZED_VALUE, что указывает на неограниченный максимальный размер передачи. Это значение зависит от операции дампа мини-порта и может отличаться от значения в элементе MaximumTransferLengthPORT_CONFIGURATION_INFORMATION.
NumberOfPhysicalBreaks
Указывает максимальное количество разрывов между диапазонами адресов, которое может иметь буфер данных для создания точечных или собираемых списков. Иными словами, количество записей в списке точечной и сборной, которую может поддерживать адаптер, минус одна. Дополнительные сведения см. в разделе Элемент NumberOfPhysicalBreaksPORT_CONFIGURATION_INFORMATION.
AlignmentMask
Содержит маску, указывающую ограничения выравнивания для буферов, необходимых адаптеру HBA для операций передачи. Допустимые значения маски также ограничены характеристиками диспетчеров памяти в разных версиях операционных систем Microsoft Windows. Допустимые значения маски: 0 (выравнивание по байтам), 0x1 (выравнивание по словам), 0x3 (выравнивание DWORD) и 0x7 (двойное выравнивание DWORD). Драйвер мини-порта должен установить эту маску, если HBA поддерживает точечную и сборную. Те же рекомендации относятся к члену AlignmentMaskPORT_CONFIGURATION_INFORMATION.
NumberOfAccessRanges
Указывает количество элементов AccessRanges в массиве. Дополнительные сведения см. в разделе Элемент NumberOfAccessRangesPORT_CONFIGURATION_INFORMATION.
AccessRanges
Указатель на массив элементов ACCESS_RANGE типа. Драйвер Storport инициализирует этот элемент. Драйверы miniport, работающие с драйвером Storport, не должны изменять этот элемент. Дополнительные сведения см. в разделе Элемент AccessRangesPORT_CONFIGURATION_INFORMATION.
NumberOfBuses
Указывает количество автобусов, управляемых адаптером. По умолчанию значение этого элемента равно нулю. Дополнительные сведения см. в разделе Элемент NumberOfBusesPORT_CONFIGURATION_INFORMATION.
Master
При значении TRUE указывает, что HBA является master автобуса. Драйвер Storport инициализирует этот элемент значением TRUE, так как его драйверы мини-порта должны поддерживать DMA для шины. Драйверы мини-портов, работающие с драйвером Storport, не должны изменять это значение. Дополнительные сведения см. в разделе Главный член PORT_CONFIGURATION_INFORMATION.
MapBuffers
Указывает, сопоставляет ли драйвер Storport адреса буфера данных SRB с системными виртуальными адресами. Дополнительные сведения см. в разделе Элемент MapBuffersHW_INITIALIZATION_DATA.
MaximumNumberOfTargets
Указывает количество целевых периферийных устройств, которыми может управлять адаптер. Дополнительные сведения см. в разделе Элемент MaximumNumberOfTargetsPORT_CONFIGURATION_INFORMATION.
Комментарии
Начиная с Windows 8, физические драйверы minport могут дополнительно поддерживать SRB_FUNCTION_DUMP_POINTERS. Если физический мини-порт поддерживает эту функцию, он должен установить флаг STOR_FEATURE_DUMP_POINTERS в элементе FeatureSupport структуры HW_INITIALIZATION_DATA перед вызовом StorPortInitialize. Физические мини-порты требуются для установки по крайней мере элементов Version и SizeMINIPORT_DUMP_POINTERS. Кроме того, если значение отличается от значения, указанного в PORT_CONFIGURATION_INFORMATION, для физического мини-порта требуется член MaximumTransferLength .
Требования
Требование | Значение |
---|---|
Заголовок | storport.h (включая Storport.h) |