OSDN Git Service

scsi: Support TEST UNIT READY in the dummy LUN0
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 16 Jan 2014 12:06:13 +0000 (13:06 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 16 Jan 2014 12:09:50 +0000 (13:09 +0100)
SeaBIOS waits for LUN0 to respond to the TEST UNIT READY command
in order to decide whether it should part of the boot sequence.
If LUN0 does not respond to the command, boot is delayed by up
to 5 seconds.  This currently happens when there is no LUN0 on
a target.  Fix that by adding a trivial implementation of the
command.

Cc: qemu-stable@nongnu.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
hw/scsi/scsi-bus.c

index 3496c0b..50b89ad 100644 (file)
@@ -469,6 +469,8 @@ static int32_t scsi_target_send_command(SCSIRequest *req, uint8_t *buf)
             r->req.dev->sense_is_ua = false;
         }
         break;
+    case TEST_UNIT_READY:
+        break;
     default:
         scsi_req_build_sense(req, SENSE_CODE(LUN_NOT_SUPPORTED));
         scsi_req_complete(req, CHECK_CONDITION);