Función ScsiPortLogError (srb.h)
El ScsiPortLogError rutina registra errores en el registro de eventos del sistema cuando un controlador de miniporte o su HBA detecta una condición de error SCSI.
Nota
Los modelos de controlador de puerto SCSI y de miniporte SCSI pueden modificarse o no estar disponibles en el futuro. Use el del controlador storport de y modelos de controlador de storport.
Sintaxis
SCSIPORT_API VOID ScsiPortLogError(
PVOID HwDeviceExtension,
PSCSI_REQUEST_BLOCK Srb,
UCHAR PathId,
UCHAR TargetId,
UCHAR Lun,
ULONG ErrorCode,
ULONG UniqueId
);
Parámetros
HwDeviceExtension
[in] Puntero a la extensión de dispositivo de hardware. Se trata de un área de almacenamiento por HBA que el controlador de puerto asigna e inicializa en nombre del controlador de miniport. Los controladores de miniportar suelen almacenar información específica de HBA en esta extensión, como el estado del HBA y los intervalos de acceso asignados del HBA. Esta área está disponible para el controlador de miniport en el DeviceExtension->HwDeviceExtension miembro del objeto de dispositivo del HBA inmediatamente después de que el controlador de miniport llame a ScsiPortInitialize. El controlador de puerto libera esta memoria cuando quita el dispositivo.
Srb
[in, opcional] Puntero a un bloque de solicitud SCSI de si se asocia uno al error. De lo contrario, este parámetro es NULL.
PathId
[in] Identifica el bus SCSI.
TargetId
[in] Identifica el controlador de destino o el dispositivo en el bus.
Lun
[in] Identifica el número de unidad lógica del dispositivo de destino.
ErrorCode
[in] Especifica un código de error. Este parámetro puede ser uno de los siguientes valores como el tipo de error.
Valor | Significado |
---|---|
SP_BAD_FW_ERROR | Indica que el controlador ha detectado un firmware incorrecto o antiguo. El dispositivo no se usará. |
SP_BAD_FW_WARNING | Indica que el controlador ha detectado una tarjeta con firmware antiguo o incorrecto, lo que puede dar lugar a una reducción del rendimiento o la funcionalidad. |
SP_BUS_PARITY_ERROR | Indica que se detectó un error de paridad de bus SCSI. |
SP_BUS_TIME_OUT | Indica una conexión de bus SCSI a una unidad lógica agota el tiempo de espera. |
SP_INTERNAL_ADAPTER_ERROR | Indica que se detectó un error de HBA interno. |
SP_INVALID_RESELECTION | Indica que una unidad lógica se vuelve a seleccionar inesperadamente o con una etiqueta de cola no válida. |
SP_IRQ_NOT_RESPONDING | Indica que el HBA no se interrumpe cuando se espera. |
SP_PROTOCOL_ERROR | Indica que el controlador de miniporte detectó un error de protocolo de bus SCSI. |
SP_REQUEST_TIMEOUT | Indica que se agota el tiempo de espera de una operación en el controlador. |
SP_UNEXPECTED_DISCONNECT | Indica que un destino se desconecta de forma inesperada. |
UniqueId
[in] Especifica un identificador único para el error. Este valor diferencia el error actual de otros errores con la misma ErrorCode. Para algunos controladores de miniporte, esto identifica la línea de código donde se detectó el error. Para otros, es información adicional devuelta por el HBA.
Valor devuelto
Ninguno
Observaciones
Un controlador de miniport debe registrar todos los errores de hardware reales. Sin embargo, no debe registrar errores operativos comunes, como tiempos de espera de selección o restablecimientos de bus.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | srb.h (include Miniport.h, Scsi.h) |
biblioteca de | Scsiport.lib |