Partager via


Fonction ScsiPortLogError (srb.h)

La routine ScsiPortLogError consigne les erreurs dans le journal des événements système lorsqu’un pilote miniport ou son HBA détecte une condition d’erreur SCSI.

Notes

Les modèles de pilote de port SCSI et de pilote miniport SCSI peuvent être modifiés ou indisponibles à l’avenir. Utilisez plutôt les modèles de pilote Storport et de pilote Storport miniport .

Syntaxe

SCSIPORT_API VOID ScsiPortLogError(
  PVOID               HwDeviceExtension,
  PSCSI_REQUEST_BLOCK Srb,
  UCHAR               PathId,
  UCHAR               TargetId,
  UCHAR               Lun,
  ULONG               ErrorCode,
  ULONG               UniqueId
);

Paramètres

HwDeviceExtension

[in] Pointeur vers l’extension de périphérique matériel. Il s’agit d’une zone de stockage par adaptateur HBA que le pilote de port alloue et initialise pour le compte du pilote miniport. Les pilotes miniport stockent généralement des informations spécifiques à L’adaptateur HBA dans cette extension, telles que l’état de l’adaptateur HBA et les plages d’accès mappées de l’adaptateur HBA. Cette zone est disponible pour le pilote miniport dans le membre DeviceExtension-HwDeviceExtension> de l’objet d’appareil de l’adaptateur HBA immédiatement après que le pilote miniport a appelé ScsiPortInitialize. Le pilote de port libère cette mémoire lorsqu’il supprime l’appareil.

Srb

[in, facultatif] Pointeur vers un bloc de requête SCSI s’il est associé à l’erreur. Sinon, ce paramètre a la valeur NULL.

PathId

[in] Identifie le bus SCSI.

TargetId

[in] Identifie le contrôleur ou l’appareil cible sur le bus.

Lun

[in] Identifie le numéro d’unité logique de l’appareil cible.

ErrorCode

[in] Spécifie un code d’erreur. Ce paramètre peut être l’une des valeurs suivantes comme type d’erreur.

Valeur Signification
SP_BAD_FW_ERROR Indique que le pilote a détecté un microprogramme défectueux ou ancien. L’appareil ne sera pas utilisé.
SP_BAD_FW_WARNING Indique que le pilote a détecté un carte avec un microprogramme ancien ou incorrect, ce qui peut entraîner une réduction des performances ou des fonctionnalités.
SP_BUS_PARITY_ERROR Indique qu’une erreur de parité de bus SCSI a été détectée.
SP_BUS_TIME_OUT Indique qu’une connexion de bus SCSI à une unité logique a expiré.
SP_INTERNAL_ADAPTER_ERROR Indique qu’une erreur HBA interne a été détectée.
SP_INVALID_RESELECTION Indique une unité logique réélectionnée de manière inattendue ou avec une balise de file d’attente non valide.
SP_IRQ_NOT_RESPONDING Indique que l’adaptateur HBA n’est pas interrompu quand on s’y attend.
SP_PROTOCOL_ERROR Indique que le pilote miniport a détecté une erreur de protocole de bus SCSI.
SP_REQUEST_TIMEOUT Indique qu’une opération sur le contrôleur a expiré.
SP_UNEXPECTED_DISCONNECT Indique qu’une cible s’est déconnectée de manière inattendue.

UniqueId

[in] Spécifie un identificateur unique pour l’erreur. Cette valeur différencie l’erreur actuelle des autres erreurs avec le même ErrorCode. Pour certains pilotes miniport, cela identifie la ligne de code où l’erreur a été détectée. Pour d’autres, il s’agit d’informations supplémentaires retournées par l’adaptateur HBA.

Valeur de retour

None

Remarques

Un pilote miniport doit consigner toutes les erreurs matérielles réelles. Toutefois, il ne doit pas consigner les erreurs opérationnelles courantes, telles que les délais de sélection ou les réinitialisations de bus.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête srb.h (inclure Miniport.h, Scsi.h)
Bibliothèque Scsiport.lib

Voir aussi

ScsiPortNotification