scsi: lpfc: Reduce log spew on controller reconnects
There are several log messages that report abnormal terminations that by default are marked warn. These are typically the result of failures due to invalid controller state or abort completions. They are all natural when a controller resets. Unfortunately, as they are logged by default, it makes the admin very concerned. Convert the messages to Info. Signed-off-by: Dick Kennedy <dick.kennedy@broadcom.com> Signed-off-by: James Smart <james.smart@broadcom.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Родитель
8e036a9497
Коммит
e3246a123d
|
@ -886,7 +886,7 @@ lpfc_nvme_io_cmd_wqe_cmpl(struct lpfc_hba *phba, struct lpfc_iocbq *pwqeIn,
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
out_err:
|
out_err:
|
||||||
lpfc_printf_vlog(vport, KERN_ERR, LOG_NVME_IOERR,
|
lpfc_printf_vlog(vport, KERN_INFO, LOG_NVME_IOERR,
|
||||||
"6072 NVME Completion Error: xri %x "
|
"6072 NVME Completion Error: xri %x "
|
||||||
"status x%x result x%x placed x%x\n",
|
"status x%x result x%x placed x%x\n",
|
||||||
lpfc_ncmd->cur_iocbq.sli4_xritag,
|
lpfc_ncmd->cur_iocbq.sli4_xritag,
|
||||||
|
@ -1339,7 +1339,7 @@ lpfc_nvme_fcp_io_submit(struct nvme_fc_local_port *pnvme_lport,
|
||||||
ret = lpfc_sli4_issue_wqe(phba, LPFC_FCP_RING, &lpfc_ncmd->cur_iocbq);
|
ret = lpfc_sli4_issue_wqe(phba, LPFC_FCP_RING, &lpfc_ncmd->cur_iocbq);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
atomic_dec(&ndlp->cmd_pending);
|
atomic_dec(&ndlp->cmd_pending);
|
||||||
lpfc_printf_vlog(vport, KERN_ERR, LOG_NVME_IOERR,
|
lpfc_printf_vlog(vport, KERN_INFO, LOG_NVME_IOERR,
|
||||||
"6113 FCP could not issue WQE err %x "
|
"6113 FCP could not issue WQE err %x "
|
||||||
"sid: x%x did: x%x oxid: x%x\n",
|
"sid: x%x did: x%x oxid: x%x\n",
|
||||||
ret, vport->fc_myDID, ndlp->nlp_DID,
|
ret, vport->fc_myDID, ndlp->nlp_DID,
|
||||||
|
@ -1399,7 +1399,7 @@ void
|
||||||
lpfc_nvme_abort_fcreq_cmpl(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
|
lpfc_nvme_abort_fcreq_cmpl(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
|
||||||
struct lpfc_wcqe_complete *abts_cmpl)
|
struct lpfc_wcqe_complete *abts_cmpl)
|
||||||
{
|
{
|
||||||
lpfc_printf_log(phba, KERN_ERR, LOG_NVME,
|
lpfc_printf_log(phba, KERN_INFO, LOG_NVME,
|
||||||
"6145 ABORT_XRI_CN completing on rpi x%x "
|
"6145 ABORT_XRI_CN completing on rpi x%x "
|
||||||
"original iotag x%x, abort cmd iotag x%x "
|
"original iotag x%x, abort cmd iotag x%x "
|
||||||
"req_tag x%x, status x%x, hwstatus x%x\n",
|
"req_tag x%x, status x%x, hwstatus x%x\n",
|
||||||
|
|
|
@ -76,7 +76,7 @@ lpfc_nvmet_defer_release(struct lpfc_hba *phba, struct lpfc_nvmet_rcv_ctx *ctxp)
|
||||||
{
|
{
|
||||||
unsigned long iflag;
|
unsigned long iflag;
|
||||||
|
|
||||||
lpfc_printf_log(phba, KERN_ERR, LOG_NVME_ABTS,
|
lpfc_printf_log(phba, KERN_INFO, LOG_NVME_ABTS,
|
||||||
"6313 NVMET Defer ctx release xri x%x flg x%x\n",
|
"6313 NVMET Defer ctx release xri x%x flg x%x\n",
|
||||||
ctxp->oxid, ctxp->flag);
|
ctxp->oxid, ctxp->flag);
|
||||||
|
|
||||||
|
@ -494,7 +494,7 @@ lpfc_nvmet_xmt_fcp_op_cmp(struct lpfc_hba *phba, struct lpfc_iocbq *cmdwqe,
|
||||||
struct lpfc_nvmet_tgtport *tgtp;
|
struct lpfc_nvmet_tgtport *tgtp;
|
||||||
struct nvmefc_tgt_fcp_req *rsp;
|
struct nvmefc_tgt_fcp_req *rsp;
|
||||||
struct lpfc_nvmet_rcv_ctx *ctxp;
|
struct lpfc_nvmet_rcv_ctx *ctxp;
|
||||||
uint32_t status, result, op, start_clean;
|
uint32_t status, result, op, start_clean, logerr;
|
||||||
#ifdef CONFIG_SCSI_LPFC_DEBUG_FS
|
#ifdef CONFIG_SCSI_LPFC_DEBUG_FS
|
||||||
uint32_t id;
|
uint32_t id;
|
||||||
#endif
|
#endif
|
||||||
|
@ -522,17 +522,21 @@ lpfc_nvmet_xmt_fcp_op_cmp(struct lpfc_hba *phba, struct lpfc_iocbq *cmdwqe,
|
||||||
if (tgtp)
|
if (tgtp)
|
||||||
atomic_inc(&tgtp->xmt_fcp_rsp_error);
|
atomic_inc(&tgtp->xmt_fcp_rsp_error);
|
||||||
|
|
||||||
|
logerr = LOG_NVME_IOERR;
|
||||||
|
|
||||||
/* pick up SLI4 exhange busy condition */
|
/* pick up SLI4 exhange busy condition */
|
||||||
if (bf_get(lpfc_wcqe_c_xb, wcqe)) {
|
if (bf_get(lpfc_wcqe_c_xb, wcqe)) {
|
||||||
ctxp->flag |= LPFC_NVMET_XBUSY;
|
ctxp->flag |= LPFC_NVMET_XBUSY;
|
||||||
|
logerr |= LOG_NVME_ABTS;
|
||||||
|
|
||||||
lpfc_printf_log(phba, KERN_INFO, LOG_NVME_ABTS,
|
|
||||||
"6315 IO Cmpl XBUSY: xri x%x: %x/%x\n",
|
|
||||||
ctxp->oxid, status, result);
|
|
||||||
} else {
|
} else {
|
||||||
ctxp->flag &= ~LPFC_NVMET_XBUSY;
|
ctxp->flag &= ~LPFC_NVMET_XBUSY;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lpfc_printf_log(phba, KERN_INFO, logerr,
|
||||||
|
"6315 IO Error Cmpl xri x%x: %x/%x XBUSY:x%x\n",
|
||||||
|
ctxp->oxid, status, result, ctxp->flag);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
rsp->fcp_error = NVME_SC_SUCCESS;
|
rsp->fcp_error = NVME_SC_SUCCESS;
|
||||||
if (op == NVMET_FCOP_RSP)
|
if (op == NVMET_FCOP_RSP)
|
||||||
|
@ -2353,7 +2357,7 @@ lpfc_nvmet_sol_fcp_abort_cmp(struct lpfc_hba *phba, struct lpfc_iocbq *cmdwqe,
|
||||||
spin_unlock_irqrestore(&ctxp->ctxlock, flags);
|
spin_unlock_irqrestore(&ctxp->ctxlock, flags);
|
||||||
atomic_inc(&tgtp->xmt_abort_rsp);
|
atomic_inc(&tgtp->xmt_abort_rsp);
|
||||||
|
|
||||||
lpfc_printf_log(phba, KERN_ERR, LOG_NVME_ABTS,
|
lpfc_printf_log(phba, KERN_INFO, LOG_NVME_ABTS,
|
||||||
"6165 ABORT cmpl: xri x%x flg x%x (%d) "
|
"6165 ABORT cmpl: xri x%x flg x%x (%d) "
|
||||||
"WCQE: %08x %08x %08x %08x\n",
|
"WCQE: %08x %08x %08x %08x\n",
|
||||||
ctxp->oxid, ctxp->flag, released,
|
ctxp->oxid, ctxp->flag, released,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче