Skip to content

Commit

Permalink
scsi: Improve error messages more
Browse files Browse the repository at this point in the history
Remove the "scsi-block:" prefix for error messages as suggested
by Markus.

Improve the previous patch by making the message the same for both
scsi-block and scsi-generic, including the strerror() output in both
and making an explicit reference to SG_IO.  Also s/can not/cannot/.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
  • Loading branch information
bonzini committed Apr 28, 2014
1 parent 4bbeb8b commit 6ee143a
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 7 deletions.
11 changes: 6 additions & 5 deletions hw/scsi/scsi-disk.c
Original file line number Diff line number Diff line change
Expand Up @@ -2458,26 +2458,27 @@ static int scsi_block_initfn(SCSIDevice *dev)
int rc;

if (!s->qdev.conf.bs) {
error_report("scsi-block: drive property not set");
error_report("drive property not set");
return -1;
}

/* check we are using a driver managing SG_IO (version 3 and after) */
rc = bdrv_ioctl(s->qdev.conf.bs, SG_GET_VERSION_NUM, &sg_version);
rc = bdrv_ioctl(s->qdev.conf.bs, SG_GET_VERSION_NUM, &sg_version);
if (rc < 0) {
error_report("scsi-block: can not get version number: %s",
error_report("cannot get SG_IO version number: %s. "
"Is this a SCSI device?",
strerror(-rc));
return -1;
}
if (sg_version < 30000) {
error_report("scsi-block: scsi generic interface too old");
error_report("scsi generic interface too old");
return -1;
}

/* get device type from INQUIRY data */
rc = get_device_type(s);
if (rc < 0) {
error_report("scsi-block: INQUIRY failed");
error_report("INQUIRY failed");
return -1;
}

Expand Down
8 changes: 6 additions & 2 deletions hw/scsi/scsi-generic.c
Original file line number Diff line number Diff line change
Expand Up @@ -394,6 +394,7 @@ static void scsi_destroy(SCSIDevice *s)

static int scsi_generic_initfn(SCSIDevice *s)
{
int rc;
int sg_version;
struct sg_scsi_id scsiid;

Expand All @@ -412,8 +413,11 @@ static int scsi_generic_initfn(SCSIDevice *s)
}

/* check we are using a driver managing SG_IO (version 3 and after */
if (bdrv_ioctl(s->conf.bs, SG_GET_VERSION_NUM, &sg_version) < 0) {
error_report("scsi generic interface not supported");
rc = bdrv_ioctl(s->conf.bs, SG_GET_VERSION_NUM, &sg_version);
if (rc < 0) {
error_report("cannot get SG_IO version number: %s. "
"Is this a SCSI device?",
strerror(-rc));
return -1;
}
if (sg_version < 30000) {
Expand Down

0 comments on commit 6ee143a

Please sign in to comment.