From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35704) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a6rSj-0001nj-RO for qemu-devel@nongnu.org; Wed, 09 Dec 2015 22:00:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a6rSj-0006ET-3F for qemu-devel@nongnu.org; Wed, 09 Dec 2015 22:00:09 -0500 From: Zhu Lingshan Date: Thu, 10 Dec 2015 10:59:46 +0800 Message-Id: <1449716386-5652-1-git-send-email-lszhu@suse.com> Subject: [Qemu-devel] [PATCH] fix:readcapacity 10 failure shown even 16 sent List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-block@nongnu.org, qemu-devel@nongnu.org Cc: pbonzini@redhat.com, pl@kamp.de, Zhu Lingshan , ronniesahlberg@gmail.com This Patch would fix a bug that readcapacity10 failuare would be shown no matter readcapacy10 or readcapacity16 actually sent. Signed-off-by: Zhu Lingshan --- block/iscsi.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/block/iscsi.c b/block/iscsi.c index bd1f1bf..6425cf4 100644 --- a/block/iscsi.c +++ b/block/iscsi.c @@ -1269,7 +1269,10 @@ static void iscsi_readcapacity_sync(IscsiLun *iscsilun, Error **errp) && task->sense.key == SCSI_SENSE_UNIT_ATTENTION && retries-- > 0); - if (task == NULL || task->status != SCSI_STATUS_GOOD) { + if ((rc16 != NULL) && ((task == NULL) || (task->status != SCSI_STATUS_GOOD))) { + error_setg(errp, "iSCSI: failed to send readcapacity16 command."); + } + if ((rc10 != NULL) && ((task == NULL) || (task->status != SCSI_STATUS_GOOD))) { error_setg(errp, "iSCSI: failed to send readcapacity10 command."); } else if (!iscsilun->block_size || iscsilun->block_size % BDRV_SECTOR_SIZE) { -- 2.6.2