Partilhar via


Rotina "InterpretRequestSense" do driver de classe de armazenamento

Uma rotina InterpretRequestSense interpreta os dados retornados no SenseInfoBuffer do CUR, determina se a solicitação deve ser repetida e, se não, mapeia o erro para um valor NTSTATUS para o bloco de status de E/S do IRP.

O driver da porta do sistema indica se as informações de deteção de solicitação estão disponíveis definindo SRB_STATUS_AUTOSENSE_VALID ou SRB_STATUS_REQUEST_SENSE_FAILED em SrbStatus.

Se nenhuma informação de deteção de solicitação estiver disponível, InterpretRequestSense deve verificar o valor SrbStatus para determinar se uma determinada solicitação deve ser repetida ou para determinar um mapeamento apropriado para um valor NTSTATUS.

A rotina InterpretRequestSense também pode chamar uma rotina de registro de erros fornecida pelo driver. Sempre que um driver de classe de armazenamento registrar um erro de E/S, ele deve incluir os valores PathId, TargetId, Lun e SrbStatus definidos pelo driver da porta de armazenamento no SRB e, se possível, informações pertinentes de deteção de solicitação como parte do DumpData da entrada do log de erros. Observe que um driver de classe de armazenamento não deve usar o PathId, TargetId e Lun desses SRBs para atender a outras solicitações.

Para obter mais informações sobre como registrar erros de E/S, consulte Erros de log.