scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg()
authorTianjia Zhang <tianjia.zhang@linux.alibaba.com>
Sun, 2 Aug 2020 11:15:28 +0000 (19:15 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 25 Aug 2020 03:23:00 +0000 (23:23 -0400)
In the case of a failed retry, a positive value EIO is returned here.  I
think this is a typo error. It is necessary to return an error value.

[mkp: caller checks != 0 but the rest of the file uses -Exxx so fix this up
to be consistent]

Link: https://lore.kernel.org/r/20200802111528.4974-1-tianjia.zhang@linux.alibaba.com
Fixes: 0691094ff3f2 ("scsi: qla2xxx: Add logic to detect ABTS hang and response completion")
Cc: Quinn Tran <quinn.tran@cavium.com>
Signed-off-by: Tianjia Zhang <tianjia.zhang@linux.alibaba.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_target.c

index c2c0e60..f2bb841 100644 (file)
@@ -5668,7 +5668,7 @@ static int qlt_chk_unresolv_exchg(struct scsi_qla_host *vha,
                /* found existing exchange */
                qpair->retry_term_cnt++;
                if (qpair->retry_term_cnt >= 5) {
-                       rc = EIO;
+                       rc = -EIO;
                        qpair->retry_term_cnt = 0;
                        ql_log(ql_log_warn, vha, 0xffff,
                            "Unable to send ABTS Respond. Dumping firmware.\n");