Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2ab70c21 authored by James Smart's avatar James Smart Committed by Martin K. Petersen
Browse files

scsi: lpfc: Revise message when stuck due to unresponsive adapter



Revise a stalled adapter message to also include the number of jobs that
are stalling the thread.

Signed-off-by: default avatarDick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: default avatarJames Smart <jsmart2021@gmail.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 4767c58a
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -2143,7 +2143,9 @@ lpfc_nvme_lport_unreg_wait(struct lpfc_vport *vport,
			   struct completion *lport_unreg_cmp)
{
	u32 wait_tmo;
	int ret;
	int ret, i, pending = 0;
	struct lpfc_sli_ring  *pring;
	struct lpfc_hba  *phba = vport->phba;

	/* Host transport has to clean up and confirm requiring an indefinite
	 * wait. Print a message if a 10 second wait expires and renew the
@@ -2153,10 +2155,18 @@ lpfc_nvme_lport_unreg_wait(struct lpfc_vport *vport,
	while (true) {
		ret = wait_for_completion_timeout(lport_unreg_cmp, wait_tmo);
		if (unlikely(!ret)) {
			pending = 0;
			for (i = 0; i < phba->cfg_hdw_queue; i++) {
				pring = phba->sli4_hba.hdwq[i].nvme_wq->pring;
				if (!pring)
					continue;
				if (pring->txcmplq_cnt)
					pending += pring->txcmplq_cnt;
			}
			lpfc_printf_vlog(vport, KERN_ERR, LOG_NVME_IOERR,
					 "6176 Lport %p Localport %p wait "
					 "timed out. Renewing.\n",
					 lport, vport->localport);
					 "timed out. Pending %d. Renewing.\n",
					 lport, vport->localport, pending);
			continue;
		}
		break;