+/**\r
+\r
+ The function can be used to create a fake host adapter error.\r
+\r
+ When VirtioScsiPassThru() is failed due to some reasons then this function\r
+ can be called to construct a host adapter error.\r
+\r
+ @param[out] Packet The Extended SCSI Pass Thru Protocol packet that the host\r
+ adapter error shall be placed in.\r
+\r
+\r
+ @retval EFI_DEVICE_ERROR The function returns this status code\r
+ unconditionally, to be propagated by\r
+ VirtioScsiPassThru().\r
+\r
+**/\r
+STATIC\r
+EFI_STATUS\r
+ReportHostAdapterError (\r
+ OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET *Packet\r
+ )\r
+{\r
+ Packet->InTransferLength = 0;\r
+ Packet->OutTransferLength = 0;\r
+ Packet->HostAdapterStatus = EFI_EXT_SCSI_STATUS_HOST_ADAPTER_OTHER;\r
+ Packet->TargetStatus = EFI_EXT_SCSI_STATUS_TARGET_GOOD;\r
+ Packet->SenseDataLength = 0;\r
+ return EFI_DEVICE_ERROR;\r
+}\r
+\r
+\r