estrutura MINIPORT_DUMP_POINTERS (storport.h)
Um driver de miniporto do Storport usa essa estrutura para dar suporte à SRB_FUNCTION_DUMP_POINTERS de código de função SCSI_REQUEST_BLOCK (SRB). Quando um driver de miniporto recebe esse tipo de SRB, o membro DataBuffer SRB aponta para uma estrutura MINIPORT_DUMP_POINTERS. Esse SRB é enviado para o driver de miniporto que é usado para controlar o disco que contém os dados de despejo de colisão depois que o SRB foi retornado da rotina de HwStorInitialize do driver de miniport. Os drivers de miniporto virtual são necessários para dar suporte a SRB_FUNCTION_DUMP_POINTERS.
Sintaxe
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;
Membros
Version
Definido como DUMP_MINIPORT_VERSION_1.
Size
Definido como sizeof(MINIPORT_DUMP_POINTERS).
DriverName[DUMP_MINIPORT_NAME_LENGTH]
O nome do caractere largo do driver de miniporto sem informações de caminho (por exemplo, Miniport.sys).
AdapterObject
Definir como NULL.
MappedRegisterBase
Definido como zero.
CommonBufferSize
O tamanho do buffer comum que é necessário. O tamanho não deve ser maior que 64 KB (65.536 bytes).
MiniportPrivateDumpData
O contexto que deve ser passado para a rotina de HwStorFindAdapter do driver de miniport durante o despejo de memória. O contexto é passado no membro Reservado ou, a partir do Windows 8, o MiniportDumpData membro da estrutura PORT_CONFIGURATION_INFORMATION.
SystemIoBusNumber
Especifica o número atribuído pelo sistema do barramento de E/S ao qual o HBA está conectado. O driver Storport inicializa esse membro. Os drivers de miniporto que trabalham com o driver Storport não devem alterar esse membro. Para obter mais informações, consulte o membro SystemIoBusNumber do PORT_CONFIGURATION_INFORMATION.
AdapterInterfaceType
Identifica a interface de barramento de E/S. O driver Storport inicializa esse membro. Os drivers de miniport que trabalham com o driver Storport não devem modificar esse membro. Para obter mais informações, consulte o adapterInterfaceType membro do PORT_CONFIGURATION_INFORMATION.
MaximumTransferLength
Especifica o número máximo de bytes que o HBA pode transferir em uma única operação de transferência no modo crashdump. Por padrão, o valor desse membro é SP_UNINITIALIZED_VALUE, o que indica um tamanho de transferência máximo ilimitado. Esse valor é específico para a operação de despejo do miniporto e pode ser diferente do valor no MaximumTransferLength membro do PORT_CONFIGURATION_INFORMATION.
NumberOfPhysicalBreaks
Especifica o número máximo de quebras entre intervalos de endereços que um buffer de dados pode ter para criar listas de dispersão/coleta. Em outras palavras, o número de entradas de lista de dispersão/coleta que o adaptador pode dar suporte a menos uma. Para obter mais informações, consulte o NumberOfPhysicalBreaks membro do PORT_CONFIGURATION_INFORMATION.
AlignmentMask
Contém uma máscara que indica as restrições de alinhamento para buffers exigidos pelo HBA para operações de transferência. Os valores de máscara válidos também são restritos por características dos gerenciadores de memória em diferentes versões dos sistemas operacionais Microsoft Windows. Os valores de máscara válidos são 0 (alinhados por bytes), 0x1 (alinhado com a palavra), 0x3 (DWORD alinhado) e 0x7 (DWORD duplo alinhado). O driver de miniporto deverá definir essa máscara se o HBA der suporte a dispersão/coleta. As mesmas considerações se aplicam ao AlignmentMask membro do PORT_CONFIGURATION_INFORMATION.
NumberOfAccessRanges
Especifica o número de AccessRanges elementos na matriz. Para obter mais informações, consulte o NumberOfAccessRanges membro do PORT_CONFIGURATION_INFORMATION.
AccessRanges
Um ponteiro para uma matriz de elementos do tipo ACCESS_RANGE. O driver Storport inicializa esse membro. Os drivers de miniporto que trabalham com o driver Storport não devem alterar esse membro. Para obter mais informações, consulte o AccessRanges membro do PORT_CONFIGURATION_INFORMATION.
NumberOfBuses
Especifica o número de ônibus controlados pelo adaptador. Por padrão, o valor desse membro é zero. Para obter mais informações, consulte o membro NumberOfBuses do PORT_CONFIGURATION_INFORMATION.
Master
Indica, quando VERDADEIRO, que o HBA é um mestre de barramento. O driver storport inicializa esse membro para VERDADEIRO, pois seus motoristas de miniporto devem dar suporte ao DMA de domínio de ônibus. Os drivers de miniporto que trabalham com o driver Storport não devem alterar esse valor. Para obter mais informações, consulte o membro do Master do PORT_CONFIGURATION_INFORMATION.
MapBuffers
Indica se o driver storport mapeia endereços de buffer de dados SRB para endereços virtuais do sistema. Para obter mais informações, consulte o membro MapBuffers do HW_INITIALIZATION_DATA.
MaximumNumberOfTargets
Especifica o número de periféricos de destino que o adaptador pode controlar. Para obter mais informações, consulte o MaximumNumberOfTargets membro do PORT_CONFIGURATION_INFORMATION.
Observações
A partir do Windows 8, os drivers de miniporto físico podem, opcionalmente, dar suporte a SRB_FUNCTION_DUMP_POINTERS. Se um miniporto físico der suporte a essa função, ele deverá definir o sinalizador STOR_FEATURE_DUMP_POINTERS no membro FeatureSupport da estrutura HW_INITIALIZATION_DATA antes de chamar StorPortInitialize. Os miniportos físicos são necessários para definir pelo menos os membros version e Size de MINIPORT_DUMP_POINTERS. Além disso, se diferente do valor fornecido em PORT_CONFIGURATION_INFORMATION, o membro MaximumTransferLength é necessário para um miniporto físico.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | storport.h (inclua Storport.h) |