mirror of https://gitee.com/openkylin/linux.git
lpfc: Fix scsi task management error message.
TMF's were getting error messages on FCP_RSP errors (underrun). Underruns aren't meaningful in the scenario. Change the error message to filter out these response check errors, and don't unconditionally mark the cmd as in error. Signed-off-by: Dick Kennedy <dick.kennedy@avagotech.com> Signed-off-by: James Smart <james.smart@avagotech.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Odin.com>
This commit is contained in:
parent
16f3b48d26
commit
ae374a308c
|
@ -5011,13 +5011,16 @@ lpfc_send_taskmgmt(struct lpfc_vport *vport, struct lpfc_rport_data *rdata,
|
|||
iocbq, iocbqrsp, lpfc_cmd->timeout);
|
||||
if ((status != IOCB_SUCCESS) ||
|
||||
(iocbqrsp->iocb.ulpStatus != IOSTAT_SUCCESS)) {
|
||||
lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP,
|
||||
"0727 TMF %s to TGT %d LUN %llu failed (%d, %d) "
|
||||
"iocb_flag x%x\n",
|
||||
lpfc_taskmgmt_name(task_mgmt_cmd),
|
||||
tgt_id, lun_id, iocbqrsp->iocb.ulpStatus,
|
||||
iocbqrsp->iocb.un.ulpWord[4],
|
||||
iocbq->iocb_flag);
|
||||
if (status != IOCB_SUCCESS ||
|
||||
iocbqrsp->iocb.ulpStatus != IOSTAT_FCP_RSP_ERROR)
|
||||
lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP,
|
||||
"0727 TMF %s to TGT %d LUN %llu "
|
||||
"failed (%d, %d) iocb_flag x%x\n",
|
||||
lpfc_taskmgmt_name(task_mgmt_cmd),
|
||||
tgt_id, lun_id,
|
||||
iocbqrsp->iocb.ulpStatus,
|
||||
iocbqrsp->iocb.un.ulpWord[4],
|
||||
iocbq->iocb_flag);
|
||||
/* if ulpStatus != IOCB_SUCCESS, then status == IOCB_SUCCESS */
|
||||
if (status == IOCB_SUCCESS) {
|
||||
if (iocbqrsp->iocb.ulpStatus == IOSTAT_FCP_RSP_ERROR)
|
||||
|
@ -5031,7 +5034,6 @@ lpfc_send_taskmgmt(struct lpfc_vport *vport, struct lpfc_rport_data *rdata,
|
|||
} else {
|
||||
ret = FAILED;
|
||||
}
|
||||
lpfc_cmd->status = IOSTAT_DRIVER_REJECT;
|
||||
} else
|
||||
ret = SUCCESS;
|
||||
|
||||
|
|
Loading…
Reference in New Issue