diff options
-rw-r--r-- | hw/scsi-disk.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/scsi-disk.c b/hw/scsi-disk.c index 434c3cb367..bc12e3fc23 100644 --- a/hw/scsi-disk.c +++ b/hw/scsi-disk.c @@ -734,6 +734,7 @@ static int32_t scsi_send_command(SCSIDevice *d, uint32_t tag, /* The normal LEN field for this command is zero. */ memset(outbuf, 0, 8); bdrv_get_geometry(s->bdrv, &nb_sectors); + nb_sectors /= s->cluster_size; /* Returned value is the address of the last sector. */ if (nb_sectors) { nb_sectors--; @@ -834,6 +835,7 @@ static int32_t scsi_send_command(SCSIDevice *d, uint32_t tag, DPRINTF("SAI READ CAPACITY(16)\n"); memset(outbuf, 0, len); bdrv_get_geometry(s->bdrv, &nb_sectors); + nb_sectors /= s->cluster_size; /* Returned value is the address of the last sector. */ if (nb_sectors) { nb_sectors--; |