Функция ScsiPortLogError (srb.h)

Подпрограмма ScsiPortLogError регистрирует ошибки в журнале системных событий, когда драйвер минипорта или его адаптер HBA обнаруживает ошибку SCSI.

Примечание

В будущем модели драйвера портов SCSI и драйвера для минипорта SCSI могут быть изменены или недоступны. Вместо этого используйте модели драйвера Storport и драйвера для минипорта Storport .

Синтаксис

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

Параметры

HwDeviceExtension

[in] Указатель на расширение аппаратного устройства. Это область хранения для каждого адаптера, которую драйвер порта выделяет и инициализирует от имени драйвера мини-порта. Драйверы минипорта обычно хранят сведения, относящиеся к HBA, в этом расширении, например состояние адаптера шины и сопоставленные диапазоны доступа. Эта область доступна драйверу мини-порта в элементе DeviceExtension-HwDeviceExtension> объекта устройства HBA сразу после того, как драйвер минипорта вызывает ScsiPortInitialize. Драйвер порта освобождает эту память при удалении устройства.

Srb

[in, необязательный] Указатель на блок запроса SCSI , если он связан с ошибкой. В противном случае этот параметр имеет значение NULL.

PathId

[in] Определяет шину SCSI.

TargetId

[in] Определяет целевой контроллер или устройство в шине.

Lun

[in] Определяет номер логического устройства целевого устройства.

ErrorCode

[in] Указывает код ошибки. Этот параметр может иметь одно из следующих значений в качестве типа ошибки.

Значение Значение
SP_BAD_FW_ERROR Указывает, что драйвер обнаружил неисправное или старое встроенное ПО. Устройство не будет использоваться.
SP_BAD_FW_WARNING Указывает, что драйвер обнаружил карта со старым или плохим встроенным ПО, что может привести к снижению производительности или функциональности.
SP_BUS_PARITY_ERROR Указывает, что обнаружена ошибка четности шины SCSI.
SP_BUS_TIME_OUT Указывает, что истекло время ожидания подключения шины SCSI к логической единице.
SP_INTERNAL_ADAPTER_ERROR Указывает, что обнаружена внутренняя ошибка HBA.
SP_INVALID_RESELECTION Указывает, что логическая единица была выбрана непредвиденно или с недопустимым тегом очереди.
SP_IRQ_NOT_RESPONDING Указывает, что HBA не прерывается, когда ожидается.
SP_PROTOCOL_ERROR Указывает, что драйвер минипорта обнаружил ошибку протокола SCSI.
SP_REQUEST_TIMEOUT Указывает, что истекло время ожидания операции контроллера.
SP_UNEXPECTED_DISCONNECT Указывает, что целевой объект неожиданно отключен.

UniqueId

[in] Указывает уникальный идентификатор ошибки. Это значение отличает текущую ошибку от других ошибок с тем же кодом ошибки. Для некоторых драйверов минипорта это определяет строку кода, в которой была обнаружена ошибка. Для других это дополнительные сведения, возвращаемые HBA.

Возвращаемое значение

None

Remarks

Драйвер минипорта должен регистрировать все реальные ошибки оборудования. Однако он не должен регистрировать распространенные операционные ошибки, такие как истечение времени ожидания выбора или сброс шины.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть srb.h (включая Miniport.h, Scsi.h)
Библиотека Scsiport.lib

См. также раздел

ScsiPortNotification