Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

scsi: lpfc: vmid: Append the VMID to the wqe before sending

Add the VMID in wqe before sending out the request. The type of VMID
depends on the configured type and is checked before being appended.

Link: https://lore.kernel.org/r/20210608043556.274139-11-muneendra.kumar@broadcom.com
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Gaurav Srivastava <gaurav.srivastava@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Muneendra Kumar <muneendra.kumar@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

authored by

Gaurav Srivastava and committed by
Martin K. Petersen
f56e86a0 742b0cf8

+14
+14
drivers/scsi/lpfc/lpfc_sli.c
··· 9766 9766 *pcmd == ELS_CMD_RSCN_XMT || 9767 9767 *pcmd == ELS_CMD_FDISC || 9768 9768 *pcmd == ELS_CMD_LOGO || 9769 + *pcmd == ELS_CMD_QFPA || 9770 + *pcmd == ELS_CMD_UVEM || 9769 9771 *pcmd == ELS_CMD_PLOGI)) { 9770 9772 bf_set(els_req64_sp, &wqe->els_req, 1); 9771 9773 bf_set(els_req64_sid, &wqe->els_req, ··· 10330 10328 bf_set(wqe_wqes, &wqe->generic.wqe_com, 0); 10331 10329 } 10332 10330 10331 + /* add the VMID tags as per switch response */ 10332 + if (unlikely(piocb->iocb_flag & LPFC_IO_VMID)) { 10333 + if (phba->pport->vmid_priority_tagging) { 10334 + bf_set(wqe_ccpe, &wqe->fcp_iwrite.wqe_com, 1); 10335 + bf_set(wqe_ccp, &wqe->fcp_iwrite.wqe_com, 10336 + (piocb->vmid_tag.cs_ctl_vmid)); 10337 + } else { 10338 + bf_set(wqe_appid, &wqe->fcp_iwrite.wqe_com, 1); 10339 + bf_set(wqe_wqes, &wqe->fcp_iwrite.wqe_com, 1); 10340 + wqe->words[31] = piocb->vmid_tag.app_id; 10341 + } 10342 + } 10333 10343 rc = lpfc_sli4_issue_wqe(phba, lpfc_cmd->hdwq, piocb); 10334 10344 return rc; 10335 10345 }