Commit 33c3e710 authored by Martin K. Petersen's avatar Martin K. Petersen
Browse files

Merge patch series "lpfc: Update lpfc to revision 14.2.0.17"

Justin Tee <justintee8345@gmail.com> says:

Update lpfc to revision 14.2.0.17

This patch set contains bug fixes for the VMID feature.

The patches were cut against Martin's 6.8/scsi-queue tree.

Link: https://lore.kernel.org/r/20231207224039.35466-1-justintee8345@gmail.com


Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parents a6478b26 819952d5
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -5954,7 +5954,7 @@ LPFC_ATTR_R(enable_mi, 1, 0, 1, "Enable MI");
 *       4 - 255  = vmid support enabled for 4-255 VMs
 *       Value range is [4,255].
 */
LPFC_ATTR_RW(max_vmid, LPFC_MIN_VMID, LPFC_MIN_VMID, LPFC_MAX_VMID,
LPFC_ATTR_R(max_vmid, LPFC_MIN_VMID, LPFC_MIN_VMID, LPFC_MAX_VMID,
	     "Maximum number of VMs supported");

/*
@@ -5962,7 +5962,7 @@ LPFC_ATTR_RW(max_vmid, LPFC_MIN_VMID, LPFC_MIN_VMID, LPFC_MAX_VMID,
 *       0  = Timeout is disabled
 * Value range is [0,24].
 */
LPFC_ATTR_RW(vmid_inactivity_timeout, 4, 0, 24,
LPFC_ATTR_R(vmid_inactivity_timeout, 4, 0, 24,
	     "Inactivity timeout in hours");

/*
@@ -5971,7 +5971,7 @@ LPFC_ATTR_RW(vmid_inactivity_timeout, 4, 0, 24,
 *       1  = Support is enabled
 * Value range is [0,1].
 */
LPFC_ATTR_RW(vmid_app_header, LPFC_VMID_APP_HEADER_DISABLE,
LPFC_ATTR_R(vmid_app_header, LPFC_VMID_APP_HEADER_DISABLE,
	     LPFC_VMID_APP_HEADER_DISABLE, LPFC_VMID_APP_HEADER_ENABLE,
	     "Enable App Header VMID support");

@@ -5982,7 +5982,7 @@ LPFC_ATTR_RW(vmid_app_header, LPFC_VMID_APP_HEADER_DISABLE,
 *       2  = Allow all targets
 * Value range is [0,2].
 */
LPFC_ATTR_RW(vmid_priority_tagging, LPFC_VMID_PRIO_TAG_DISABLE,
LPFC_ATTR_R(vmid_priority_tagging, LPFC_VMID_PRIO_TAG_DISABLE,
	     LPFC_VMID_PRIO_TAG_DISABLE,
	     LPFC_VMID_PRIO_TAG_ALL_TARGETS,
	     "Enable Priority Tagging VMID support");
+11 −3
Original line number Diff line number Diff line
@@ -1130,12 +1130,12 @@ lpfc_cmpl_els_flogi(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
			 vport->port_state, vport->fc_flag,
			 sp->cmn.priority_tagging, kref_read(&ndlp->kref));

	if (sp->cmn.priority_tagging)
		vport->phba->pport->vmid_flag |= (LPFC_VMID_ISSUE_QFPA |
						  LPFC_VMID_TYPE_PRIO);
	/* reinitialize the VMID datastructure before returning */
	if (lpfc_is_vmid_enabled(phba))
		lpfc_reinit_vmid(vport);
	if (sp->cmn.priority_tagging)
		vport->phba->pport->vmid_flag |= (LPFC_VMID_ISSUE_QFPA |
						  LPFC_VMID_TYPE_PRIO);

	/*
	 * Address a timing race with dev_loss.  If dev_loss is active on
@@ -11143,6 +11143,14 @@ lpfc_cmpl_reg_new_vport(struct lpfc_hba *phba, LPFC_MBOXQ_t *pmb)
	lpfc_nlp_put(ndlp);

	mempool_free(pmb, phba->mbox_mem_pool);

	/* reinitialize the VMID datastructure before returning.
	 * this is specifically for vport
	 */
	if (lpfc_is_vmid_enabled(phba))
		lpfc_reinit_vmid(vport);
	vport->vmid_flag = vport->phba->pport->vmid_flag;

	return;
}

+1 −1
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@
 * included with this package.                                     *
 *******************************************************************/

#define LPFC_DRIVER_VERSION "14.2.0.16"
#define LPFC_DRIVER_VERSION "14.2.0.17"
#define LPFC_DRIVER_NAME		"lpfc"

/* Used for SLI 2/3 */
+1 −0
Original line number Diff line number Diff line
@@ -321,5 +321,6 @@ lpfc_reinit_vmid(struct lpfc_vport *vport)
	if (!hash_empty(vport->hash_table))
		hash_for_each_safe(vport->hash_table, bucket, tmp, cur, hnode)
			hash_del(&cur->hnode);
	vport->vmid_flag = 0;
	write_unlock(&vport->vmid_lock);
}