Skip to content

Commit 33c3e71

Browse files
Merge patch series "lpfc: Update lpfc to revision 14.2.0.17"
Justin Tee <[email protected]> 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/[email protected] Signed-off-by: Martin K. Petersen <[email protected]>
2 parents a6478b2 + 819952d commit 33c3e71

File tree

4 files changed

+17
-8
lines changed

4 files changed

+17
-8
lines changed

drivers/scsi/lpfc/lpfc_attr.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5954,15 +5954,15 @@ LPFC_ATTR_R(enable_mi, 1, 0, 1, "Enable MI");
59545954
* 4 - 255 = vmid support enabled for 4-255 VMs
59555955
* Value range is [4,255].
59565956
*/
5957-
LPFC_ATTR_RW(max_vmid, LPFC_MIN_VMID, LPFC_MIN_VMID, LPFC_MAX_VMID,
5957+
LPFC_ATTR_R(max_vmid, LPFC_MIN_VMID, LPFC_MIN_VMID, LPFC_MAX_VMID,
59585958
"Maximum number of VMs supported");
59595959

59605960
/*
59615961
* lpfc_vmid_inactivity_timeout: Inactivity timeout duration in hours
59625962
* 0 = Timeout is disabled
59635963
* Value range is [0,24].
59645964
*/
5965-
LPFC_ATTR_RW(vmid_inactivity_timeout, 4, 0, 24,
5965+
LPFC_ATTR_R(vmid_inactivity_timeout, 4, 0, 24,
59665966
"Inactivity timeout in hours");
59675967

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

@@ -5982,7 +5982,7 @@ LPFC_ATTR_RW(vmid_app_header, LPFC_VMID_APP_HEADER_DISABLE,
59825982
* 2 = Allow all targets
59835983
* Value range is [0,2].
59845984
*/
5985-
LPFC_ATTR_RW(vmid_priority_tagging, LPFC_VMID_PRIO_TAG_DISABLE,
5985+
LPFC_ATTR_R(vmid_priority_tagging, LPFC_VMID_PRIO_TAG_DISABLE,
59865986
LPFC_VMID_PRIO_TAG_DISABLE,
59875987
LPFC_VMID_PRIO_TAG_ALL_TARGETS,
59885988
"Enable Priority Tagging VMID support");

drivers/scsi/lpfc/lpfc_els.c

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1130,12 +1130,12 @@ lpfc_cmpl_els_flogi(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
11301130
vport->port_state, vport->fc_flag,
11311131
sp->cmn.priority_tagging, kref_read(&ndlp->kref));
11321132

1133-
if (sp->cmn.priority_tagging)
1134-
vport->phba->pport->vmid_flag |= (LPFC_VMID_ISSUE_QFPA |
1135-
LPFC_VMID_TYPE_PRIO);
11361133
/* reinitialize the VMID datastructure before returning */
11371134
if (lpfc_is_vmid_enabled(phba))
11381135
lpfc_reinit_vmid(vport);
1136+
if (sp->cmn.priority_tagging)
1137+
vport->phba->pport->vmid_flag |= (LPFC_VMID_ISSUE_QFPA |
1138+
LPFC_VMID_TYPE_PRIO);
11391139

11401140
/*
11411141
* 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)
1114311143
lpfc_nlp_put(ndlp);
1114411144

1114511145
mempool_free(pmb, phba->mbox_mem_pool);
11146+
11147+
/* reinitialize the VMID datastructure before returning.
11148+
* this is specifically for vport
11149+
*/
11150+
if (lpfc_is_vmid_enabled(phba))
11151+
lpfc_reinit_vmid(vport);
11152+
vport->vmid_flag = vport->phba->pport->vmid_flag;
11153+
1114611154
return;
1114711155
}
1114811156

drivers/scsi/lpfc/lpfc_version.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
* included with this package. *
2121
*******************************************************************/
2222

23-
#define LPFC_DRIVER_VERSION "14.2.0.16"
23+
#define LPFC_DRIVER_VERSION "14.2.0.17"
2424
#define LPFC_DRIVER_NAME "lpfc"
2525

2626
/* Used for SLI 2/3 */

drivers/scsi/lpfc/lpfc_vmid.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -321,5 +321,6 @@ lpfc_reinit_vmid(struct lpfc_vport *vport)
321321
if (!hash_empty(vport->hash_table))
322322
hash_for_each_safe(vport->hash_table, bucket, tmp, cur, hnode)
323323
hash_del(&cur->hnode);
324+
vport->vmid_flag = 0;
324325
write_unlock(&vport->vmid_lock);
325326
}

0 commit comments

Comments
 (0)