StorPortLogError 函数 (storport.h)
StorPortLogError 例程通知端口驱动程序发生错误。
语法
STORPORT_API VOID StorPortLogError(
[in] PVOID HwDeviceExtension,
[in, optional] PSCSI_REQUEST_BLOCK Srb,
[in] UCHAR PathId,
[in] UCHAR TargetId,
[in] UCHAR Lun,
[in] ULONG ErrorCode,
[in] ULONG UniqueId
);
参数
[in] HwDeviceExtension
指向硬件设备扩展的指针。 这是端口驱动程序代表微型端口驱动程序分配和初始化的每个 HBA 存储区域。 微型端口驱动程序通常在此扩展中存储特定于 HBA 的信息,例如 HBA 的状态和 HBA 的映射访问范围。 在微型端口驱动程序调用 StorPortInitialize后,此区域立即可供微型端口使用。 端口驱动程序在删除设备时释放此内存。
[in, optional] Srb
如果 SCSI 请求块与错误相关联,则指向 SCSI 请求块的指针。 否则,此参数 NULL。
[in] PathId
标识 SCSI 总线。
[in] TargetId
标识总线上的目标控制器或设备。
[in] Lun
标识目标设备的逻辑单元号。
[in] ErrorCode
指定一个错误代码,指示以下值之一作为错误类型。
价值 | 意义 |
---|---|
SP_BAD_FW_ERROR | 指示驱动程序检测到错误或旧固件。 不会使用设备。 |
SP_BAD_FW_WARNING | 指示驱动程序检测到具有旧固件或固件错误的卡,这可能会导致性能或功能降低。 |
SP_BUS_PARITY_ERROR | 指示检测到 SCSI 总线奇偶校验错误。 |
SP_BUS_TIME_OUT | 指示与逻辑单元的 SCSI 总线连接超时。 |
SP_INTERNAL_ADAPTER_ERROR | 指示检测到内部 HBA 错误。 |
SP_INVALID_RESELECTION | 指示逻辑单元意外重新选择或队列标记无效。 |
SP_IRQ_NOT_RESPONDING | 指示 HBA 未按预期中断。 |
SP_PROTOCOL_ERROR | 指示微型端口驱动程序检测到 SCSI 总线协议错误。 |
SP_REQUEST_TIMEOUT | 指示控制器的作已超时。 |
SP_UNEXPECTED_DISCONNECT | 指示目标意外断开连接。 |
[in] UniqueId
指定错误的唯一标识符。 此值将当前错误与具有相同 ErrorCode 值的其他错误区分开来。 对于某些微型端口驱动程序,这将标识检测到错误的代码行。 对于其他人,这是 HBA 返回的其他信息。
返回值
没有
言论
端口驱动程序会将错误记录到系统事件日志。
从 Windows 8 开始,Srb 参数可能指向 SCSI_REQUEST_BLOCK 或 STORAGE_REQUEST_BLOCK。 如果 Srb函数 字段中的函数标识符 SRB_FUNCTION_STORAGE_REQUEST_BLOCK,则 SRB 是 STORAGE_REQUEST_BLOCK 请求结构。
要求
要求 | 价值 |
---|---|
目标平台 | 普遍 |
标头 | storport.h (包括 Storport.h) |
库 | Storport.lib |
DDI 符合性规则 | StorPortDeprecated(storport) |