qla2xxx: Return the fabric command state for non-task management requests
authorDilip Kumar Uppugandla <dilip@purestorage.com>
Tue, 21 Jul 2015 22:07:55 +0000 (15:07 -0700)
committerJames Bottomley <JBottomley@Odin.com>
Wed, 26 Aug 2015 23:31:58 +0000 (16:31 -0700)
Invoking get_cmd_state for qla2xxx always returns 0. Instead change it
to return the actual fabric state from qla_tgt_cmd. This will help with
debugging.

Signed-off-by: Dilip Kumar Uppugandla <dilip@purestorage.com>
Signed-off-by: Spencer Baugh <sbaugh@catern.com>
Acked-by: Himanshu Madhani <himanshu.madhani@qlogic.com>
Signed-off-by: James Bottomley <JBottomley@Odin.com>
drivers/scsi/qla2xxx/tcm_qla2xxx.c

index d9a8c6084346759778c5cd8506c42d4ead19e2cc..e8595867bb8d242030feaed08955070d2420fc84 100644 (file)
@@ -420,6 +420,12 @@ static void tcm_qla2xxx_set_default_node_attrs(struct se_node_acl *nacl)
 
 static int tcm_qla2xxx_get_cmd_state(struct se_cmd *se_cmd)
 {
+       if (!(se_cmd->se_cmd_flags & SCF_SCSI_TMR_CDB)) {
+               struct qla_tgt_cmd *cmd = container_of(se_cmd,
+                               struct qla_tgt_cmd, se_cmd);
+               return cmd->state;
+       }
+
        return 0;
 }