From: Paolo Bonzini Date: Wed, 2 Apr 2014 10:12:50 +0000 (+0200) Subject: iscsi: recognize "invalid field" ASCQ from WRITE SAME command X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=27898a5daa4c6d28adb32b401a011d7198494482;p=qemu.git iscsi: recognize "invalid field" ASCQ from WRITE SAME command Some targets may return "invalid field" as the ASCQ from WRITE SAME if they support the command only without the UNMAP field. Recognize that, and return ENOTSUP just like for "invalid operation code". Reviewed-by: Peter Lieven Signed-off-by: Paolo Bonzini --- diff --git a/block/iscsi.c b/block/iscsi.c index b490e98c05..2f96a8e037 100644 --- a/block/iscsi.c +++ b/block/iscsi.c @@ -838,7 +838,8 @@ retry: if (iTask.status == SCSI_STATUS_CHECK_CONDITION && iTask.task->sense.key == SCSI_SENSE_ILLEGAL_REQUEST && - iTask.task->sense.ascq == SCSI_SENSE_ASCQ_INVALID_OPERATION_CODE) { + (iTask.task->sense.ascq == SCSI_SENSE_ASCQ_INVALID_OPERATION_CODE || + iTask.task->sense.ascq == SCSI_SENSE_ASCQ_INVALID_FIELD_IN_CDB)) { /* WRITE SAME is not supported by the target */ iscsilun->has_write_same = false; scsi_free_scsi_task(iTask.task);