This is a note to let you know that I've just added the patch titled

    vhost-scsi: Add missing virtio-scsi -> TCM attribute conversion

to the 3.10-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     vhost-scsi-add-missing-virtio-scsi-tcm-attribute-conversion.patch
and it can be found in the queue-3.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From [email protected]  Tue Feb  3 15:07:50 2015
From: "Nicholas A. Bellinger" <[email protected]>
Date: Fri, 30 Jan 2015 22:17:24 +0000
Subject: vhost-scsi: Add missing virtio-scsi -> TCM attribute conversion
To: target-devel <[email protected]>
Cc: Greg-KH <[email protected]>, stable <[email protected]>, 
Nicholas Bellinger <[email protected]>, Christoph Hellwig <[email protected]>, 
"Michael S. Tsirkin" <[email protected]>, Paolo Bonzini <[email protected]>
Message-ID: <[email protected]>


From: Nicholas Bellinger <[email protected]>

commit 46243860806bdc2756f3ce8ac86b4d7c616bcd6c upstream.

While looking at hch's recent conversion to drop the MSG_*_TAG
definitions, I noticed a long standing bug in vhost-scsi where
the VIRTIO_SCSI_S_* attribute definitions where incorrectly
being passed directly into target_submit_cmd_map_sgls().

This patch adds the missing virtio-scsi to TCM/SAM task attribute
conversion.

Cc: Christoph Hellwig <[email protected]>
Cc: Michael S. Tsirkin <[email protected]>
Cc: Paolo Bonzini <[email protected]>
Signed-off-by: Nicholas Bellinger <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
 drivers/vhost/scsi.c |   23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

--- a/drivers/vhost/scsi.c
+++ b/drivers/vhost/scsi.c
@@ -820,6 +820,23 @@ static int vhost_scsi_map_iov_to_sgl(str
        return 0;
 }
 
+static int vhost_scsi_to_tcm_attr(int attr)
+{
+       switch (attr) {
+       case VIRTIO_SCSI_S_SIMPLE:
+               return MSG_SIMPLE_TAG;
+       case VIRTIO_SCSI_S_ORDERED:
+               return MSG_ORDERED_TAG;
+       case VIRTIO_SCSI_S_HEAD:
+               return MSG_HEAD_TAG;
+       case VIRTIO_SCSI_S_ACA:
+               return MSG_ACA_TAG;
+       default:
+               break;
+       }
+       return MSG_SIMPLE_TAG;
+}
+
 static void tcm_vhost_submission_work(struct work_struct *work)
 {
        struct tcm_vhost_cmd *tv_cmd =
@@ -846,9 +863,9 @@ static void tcm_vhost_submission_work(st
        rc = target_submit_cmd_map_sgls(se_cmd, tv_nexus->tvn_se_sess,
                        tv_cmd->tvc_cdb, &tv_cmd->tvc_sense_buf[0],
                        tv_cmd->tvc_lun, tv_cmd->tvc_exp_data_len,
-                       tv_cmd->tvc_task_attr, tv_cmd->tvc_data_direction,
-                       0, sg_ptr, tv_cmd->tvc_sgl_count,
-                       sg_bidi_ptr, sg_no_bidi);
+                       vhost_scsi_to_tcm_attr(tv_cmd->tvc_task_attr),
+                       tv_cmd->tvc_data_direction, 0, sg_ptr,
+                       tv_cmd->tvc_sgl_count, sg_bidi_ptr, sg_no_bidi);
        if (rc < 0) {
                transport_send_check_condition_and_sense(se_cmd,
                                TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE, 0);


Patches currently in stable-queue which might be from [email protected] are

queue-3.10/iser-target-fix-connected_handler-teardown-flow-race.patch
queue-3.10/iscsi-iser-target-initiate-termination-only-once.patch
queue-3.10/ib_isert-add-max_send_sge-2-minimum-for-control-pdu-responses.patch
queue-3.10/iser-target-fix-implicit-termination-of-connections.patch
queue-3.10/iser-target-parallelize-cm-connection-establishment.patch
queue-3.10/vhost-scsi-take-configfs-group-dependency-during-vhost_scsi_set_endpoint.patch
queue-3.10/ib-isert-adjust-cq-size-to-hw-limits.patch
queue-3.10/iser-target-handle-addr_change-event-for-listener-cm_id.patch
queue-3.10/vhost-scsi-add-missing-virtio-scsi-tcm-attribute-conversion.patch
queue-3.10/target-drop-arbitrary-maximum-i-o-size-limit.patch
queue-3.10/tcm_loop-fix-wrong-i_t-nexus-association.patch
queue-3.10/iser-target-fix-flush-disconnect-completion-handling.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to