Função ScsiPortLogError (srb.h)
O ScsiPortLogError erros de logs de rotina no log de eventos do sistema quando um driver de miniporto ou seu HBA detecta uma condição de erro SCSI.
Nota
O driver de porta SCSI e os modelos de driver de miniporto SCSI podem estar alterados ou indisponíveis no futuro. Use os modelos de driver do Storport e miniporto storport modelos de driver.
Sintaxe
SCSIPORT_API VOID ScsiPortLogError(
PVOID HwDeviceExtension,
PSCSI_REQUEST_BLOCK Srb,
UCHAR PathId,
UCHAR TargetId,
UCHAR Lun,
ULONG ErrorCode,
ULONG UniqueId
);
Parâmetros
HwDeviceExtension
[in] Ponteiro para a extensão do dispositivo de hardware. Essa é uma área de armazenamento por HBA que o driver de porta aloca e inicializa em nome do driver de miniporto. Os drivers de miniporto geralmente armazenam informações específicas do HBA nessa extensão, como o estado do HBA e os intervalos de acesso mapeados do HBA. Essa área está disponível para o driver de miniporto no DeviceExtension->HwDeviceExtension membro do objeto de dispositivo do HBA imediatamente após o driver de miniporto chamar ScsiPortInitialize. O driver de porta libera essa memória quando remove o dispositivo.
Srb
[in, opcional] Ponteiro para um bloco de solicitação SCSI se um estiver associado ao erro. Caso contrário, esse parâmetro será NULL.
PathId
[in] Identifica o barramento SCSI.
TargetId
[in] Identifica o controlador de destino ou o dispositivo no barramento.
Lun
[in] Identifica o número de unidade lógica do dispositivo de destino.
ErrorCode
[in] Especifica um código de erro. Esse parâmetro pode ser um dos seguintes valores como o tipo de erro.
Valor | Significado |
---|---|
SP_BAD_FW_ERROR | Indica que o driver detectou firmware inválido ou antigo. O dispositivo não será usado. |
SP_BAD_FW_WARNING | Indica que o driver detectou um cartão com firmware antigo ou inválido, o que pode resultar em desempenho ou funcionalidade reduzidas. |
SP_BUS_PARITY_ERROR | Indica que um erro de paridade de barramento SCSI foi detectado. |
SP_BUS_TIME_OUT | Indica que uma conexão de barramento SCSI com uma unidade lógica atingiu o tempo limite. |
SP_INTERNAL_ADAPTER_ERROR | Indica que um erro interno do HBA foi detectado. |
SP_INVALID_RESELECTION | Indica uma unidade lógica reeleita inesperadamente ou com uma marca de fila inválida. |
SP_IRQ_NOT_RESPONDING | Indica que o HBA não está interrompendo quando esperado. |
SP_PROTOCOL_ERROR | Indica que o driver de miniporto detectou um erro de protocolo de barramento SCSI. |
SP_REQUEST_TIMEOUT | Indica que uma operação para o controlador atingiu o tempo limite. |
SP_UNEXPECTED_DISCONNECT | Indica que um destino se desconectou inesperadamente. |
UniqueId
[in] Especifica um identificador exclusivo para o erro. Esse valor diferencia o erro atual de outros erros com o mesmo ErrorCode. Para alguns drivers de miniporto, isso identifica a linha de código em que o erro foi detectado. Para outros, são informações adicionais retornadas pelo HBA.
Valor de retorno
Nenhum
Observações
Um driver de miniporto deve registrar todos os erros reais de hardware. No entanto, ele não deve registrar erros operacionais comuns, como tempos limite de seleção ou redefinições de barramento.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | srb.h (inclua Miniport.h, Scsi.h) |
biblioteca | Scsiport.lib |