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
设置为零。
CommonBufferSize
所需公共缓冲区的大小。 大小不得大于 64 KB(65,536 字节)。
MiniportPrivateDumpData
要传递到微型端口驱动程序的 HwStorFindAdapter 的上下文在故障转储期间 例程。 上下文传入 保留 成员,或者从 Windows 8 开始,MiniportDumpDataPORT_CONFIGURATION_INFORMATION 结构的成员。
SystemIoBusNumber
指定 HBA 连接到的系统分配的 I/O 总线数。 Storport 驱动程序初始化此成员。 使用 Storport 驱动程序的微型端口驱动程序不得更改此成员。 有关详细信息,请参阅 PORT_CONFIGURATION_INFORMATIONSystemIoBusNumber 成员。
AdapterInterfaceType
标识 I/O 总线接口。 Storport 驱动程序初始化此成员。 使用 Storport 驱动程序的微型端口驱动程序不得修改此成员。 有关详细信息,请参阅 PORT_CONFIGURATION_INFORMATION的 AdapterInterfaceType 成员。
MaximumTransferLength
指定 HBA 在故障转储模式下单个传输作中可以传输的最大字节数。 默认情况下,此成员的值SP_UNINITIALIZED_VALUE,表示最大传输大小不受限制。 此值特定于微型端口的转储作,可能与 PORT_CONFIGURATION_INFORMATION的 MaximumTransferLength 成员中的值不同。
NumberOfPhysicalBreaks
指定数据缓冲区必须创建散点/收集列表的地址范围之间的最大中断数。 换句话说,适配器可以支持的散点/收集列表条目数减一。 有关详细信息,请参阅 PORT_CONFIGURATION_INFORMATION的 NumberOfPhysicalBreaks 成员。
AlignmentMask
包含一个掩码,该掩码指示 HBA 对传输作所需的缓冲区的对齐限制。 有效掩码值还受不同版本的 Microsoft windows作系统上内存管理器的特征的限制。 有效掩码值为 0(字节对齐)、0x1(单词对齐)、0x3(DWORD 对齐)和0x7(双 DWORD 对齐)。 如果 HBA 支持散点/收集,微型端口驱动程序应设置此掩码。 相同的注意事项适用于 PORT_CONFIGURATION_INFORMATION的 AlignmentMask 成员。
NumberOfAccessRanges
指定数组中 AccessRanges 元素的数目。 有关详细信息,请参阅 NumberOfAccessRangesPORT_CONFIGURATION_INFORMATION成员。
AccessRanges
指向ACCESS_RANGE类型元素数组的指针。 Storport 驱动程序初始化此成员。 使用 Storport 驱动程序的微型端口驱动程序不得更改此成员。 有关详细信息,请参阅 PORT_CONFIGURATION_INFORMATION的 AccessRanges 成员。
NumberOfBuses
指定适配器控制的总线数。 默认情况下,此成员的值为零。 有关详细信息,请参阅 PORT_CONFIGURATION_INFORMATION的 NumberOfBuses 成员。
Master
指示当 TRUE时,HBA 是总线主控形状。 Storport 驱动程序将此成员初始化为 TRUE,因为它的微型端口驱动程序必须支持总线主控 DMA。 使用 Storport 驱动程序的微型端口驱动程序不得更改此值。 有关详细信息,请参阅 PORT_CONFIGURATION_INFORMATIONMaster 成员。
MapBuffers
指示 Storport 驱动程序是否将 SRB 数据缓冲区地址映射到系统虚拟地址。 有关详细信息,请参阅 HW_INITIALIZATION_DATA的 MapBuffers 成员。
MaximumNumberOfTargets
指定适配器可以控制的目标外围设备数。 有关详细信息,请参阅 PORT_CONFIGURATION_INFORMATION的 MaximumNumberOfTargets 成员。
言论
从 Windows 8 开始,物理微型端口驱动程序可以选择支持SRB_FUNCTION_DUMP_POINTERS。 如果物理微型端口支持此函数,则必须在 HW_INITIALIZATION_DATA 结构的 FeatureSupport 成员中设置STOR_FEATURE_DUMP_POINTERS标志,然后才能调用 StorPortInitialize。 物理微型端口至少需要设置 版本 和 大小MINIPORT_DUMP_POINTERS成员。 此外,如果不同于 PORT_CONFIGURATION_INFORMATION中给定的值,则物理微型端口需要 MaximumTransferLength 成员。
要求
要求 | 价值 |
---|---|
标头 | storport.h (包括 Storport.h) |