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 要求區塊與錯誤相關聯,則為指標。 否則,此參數為 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要求結構。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
標頭 | storport.h (包含 Storport.h) |
程式庫 | Storport.lib |
DDI 合規性規則 | StorPortDeprecated (storport) |