StorPortLogError-Funktion (storport.h)
Die StorPortLogError Routine benachrichtigt den Porttreiber, dass ein Fehler aufgetreten ist.
Syntax
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
);
Parameter
[in] HwDeviceExtension
Ein Zeiger auf die Hardwaregeräteerweiterung. Dies ist ein HBA-Speicherbereich, den der Porttreiber im Namen des Miniporttreibers zuweist und initialisiert. Miniporttreiber speichern in der Regel HBA-spezifische Informationen in dieser Erweiterung, z. B. den Zustand der HBA und die zugeordneten Zugriffsbereiche für die HBA. Dieser Bereich steht dem Miniport unmittelbar nach dem Aufruf des Miniporttreibers StorPortInitializezur Verfügung. Der Porttreiber gibt diesen Speicher frei, wenn es das Gerät entfernt.
[in, optional] Srb
Zeiger auf einen SCSI-Anforderungsblock, wenn einem der Fehler zugeordnet ist. Andernfalls ist dieser Parameter NULL-.
[in] PathId
Identifiziert den SCSI-Bus.
[in] TargetId
Identifiziert den Zielcontroller oder das Gerät auf dem Bus.
[in] Lun
Identifiziert die logische Einheitennummer des Zielgeräts.
[in] ErrorCode
Gibt einen Fehlercode an, der einen der folgenden Werte als Fehlertyp angibt.
Wert | Bedeutung |
---|---|
SP_BAD_FW_ERROR | Gibt an, dass der Treiber schlechte oder alte Firmware erkannt hat. Das Gerät wird nicht verwendet. |
SP_BAD_FW_WARNING | Gibt an, dass der Treiber eine Karte mit alter oder schlechter Firmware erkannt hat, was zu einer reduzierten Leistung oder Funktionalität führen kann. |
SP_BUS_PARITY_ERROR | Gibt an, dass ein SCSI-Busparitätsfehler erkannt wurde. |
SP_BUS_TIME_OUT | Gibt eine SCSI-Busverbindung mit einem logischen Timeout einer Einheit an. |
SP_INTERNAL_ADAPTER_ERROR | Gibt an, dass ein interner HBA-Fehler erkannt wurde. |
SP_INVALID_RESELECTION | Gibt an, dass eine logische Einheit unerwartet oder mit einem ungültigen Warteschlangentag erneut ausgewählt wurde. |
SP_IRQ_NOT_RESPONDING | Gibt an, dass die HBA nicht unterbrochen wird, wenn erwartet. |
SP_PROTOCOL_ERROR | Gibt an, dass der Miniporttreiber einen SCSI-Busprotokollfehler erkannt hat. |
SP_REQUEST_TIMEOUT | Gibt an, dass für den Controller ein Timeout aufgetreten ist. |
SP_UNEXPECTED_DISCONNECT | Gibt an, dass ein Ziel unerwartet getrennt wurde. |
[in] UniqueId
Gibt einen eindeutigen Bezeichner für den Fehler an. Dieser Wert unterscheidet den aktuellen Fehler von anderen Fehlern mit demselben ErrorCode Wert. Bei einigen Miniporttreibern identifiziert dies die Codezeile, in der der Fehler erkannt wurde. Für andere werden zusätzliche Informationen vom HBA zurückgegeben.
Rückgabewert
Nichts
Bemerkungen
Der Porttreiber protokolliert einen Fehler im Systemereignisprotokoll.
Ab Windows 8 kann der parameter Srb entweder auf SCSI_REQUEST_BLOCK oder STORAGE_REQUEST_BLOCKverweisen. Wenn der Funktionsbezeichner im Feld Function von SrbSRB_FUNCTION_STORAGE_REQUEST_BLOCKist, ist der SRB eine STORAGE_REQUEST_BLOCK Anforderungsstruktur.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | storport.h (include Storport.h) |
Library | Storport.lib |
DDI-Complianceregeln | StorPortDeprecated(storport) |