linux-nvme.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@suse.de>
To: Muneendra <muneendra.kumar@broadcom.com>,
	linux-block@vger.kernel.org, linux-scsi@vger.kernel.org,
	tj@kernel.org, linux-nvme@lists.infradead.org
Cc: jsmart2021@gmail.com, emilne@redhat.com, mkumar@redhat.com,
	Gaurav Srivastava <gaurav.srivastava@broadcom.com>
Subject: Re: [PATCH v8 12/16] lpfc: vmid: Appends the vmid in the wqe before sending
Date: Thu, 4 Mar 2021 13:43:20 +0100	[thread overview]
Message-ID: <cb296bf1-e001-44ca-e7da-4ca8d6a06346@suse.de> (raw)
In-Reply-To: <1614835646-16217-13-git-send-email-muneendra.kumar@broadcom.com>

On 3/4/21 6:27 AM, Muneendra wrote:
> From: Gaurav Srivastava <gaurav.srivastava@broadcom.com>
> 
> This patch adds the vmid in wqe before sending out the request.
> The type of vmid depends on the configured type and is checked before
> being appended.
> 
> Signed-off-by: Gaurav Srivastava  <gaurav.srivastava@broadcom.com>
> Signed-off-by: James Smart <jsmart2021@gmail.com>
> 
> ---
> v8:
> Modified the log messages
> 
> v7:
> No change
> 
> v6:
> No change
> 
> v5:
> Modified the comments
> 
> v4:
> No change
> 
> v3:
> No change
> 
> v2:
> Ported the patch on top of 5.10/scsi-queue
> ---
>   drivers/scsi/lpfc/lpfc_sli.c | 54 ++++++++++++++++++++++++++++++++++++
>   1 file changed, 54 insertions(+)
> 
> diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
> index b20fa5d4bd80..30b606867d67 100644
> --- a/drivers/scsi/lpfc/lpfc_sli.c
> +++ b/drivers/scsi/lpfc/lpfc_sli.c
> @@ -9767,6 +9767,8 @@ lpfc_sli4_iocb2wqe(struct lpfc_hba *phba, struct lpfc_iocbq *iocbq,
>   				*pcmd == ELS_CMD_RSCN_XMT ||
>   				*pcmd == ELS_CMD_FDISC ||
>   				*pcmd == ELS_CMD_LOGO ||
> +				*pcmd == ELS_CMD_QFPA ||
> +				*pcmd == ELS_CMD_UVEM ||
>   				*pcmd == ELS_CMD_PLOGI)) {
>   				bf_set(els_req64_sp, &wqe->els_req, 1);
>   				bf_set(els_req64_sid, &wqe->els_req,
> @@ -9898,6 +9900,24 @@ lpfc_sli4_iocb2wqe(struct lpfc_hba *phba, struct lpfc_iocbq *iocbq,
>   			ptr = &wqe->words[22];
>   			memcpy(ptr, fcp_cmnd, sizeof(struct fcp_cmnd));
>   		}
> +
> +		/* add the VMID tags as per switch response */
> +		if (iocbq->iocb_flag & LPFC_IO_VMID) {
> +			union lpfc_wqe128 *wqe128;
> +
> +			if (phba->pport->vmid_priority_tagging) {
> +				bf_set(wqe_ccpe, &wqe->fcp_iwrite.wqe_com, 1);
> +				bf_set(wqe_ccp, &wqe->fcp_iwrite.wqe_com,
> +				       (iocbq->vmid_tag.cs_ctl_vmid));
> +				/* Bit 0 must be 0 */
> +			} else {
> +				wqe128 = (union lpfc_wqe128 *)wqe;
> +				bf_set(wqe_appid, &wqe->fcp_iwrite.wqe_com, 1);
> +				bf_set(wqe_wqes, &wqe128->fcp_iwrite.wqe_com,
> +				       1);
> +				wqe128->words[31] = iocbq->vmid_tag.app_id;
> +			}
> +		}
>   		break;
>   	case CMD_FCP_IREAD64_CR:
>   		/* word3 iocb=iotag wqe=payload_offset_len */
> @@ -9962,6 +9982,23 @@ lpfc_sli4_iocb2wqe(struct lpfc_hba *phba, struct lpfc_iocbq *iocbq,
>   			ptr = &wqe->words[22];
>   			memcpy(ptr, fcp_cmnd, sizeof(struct fcp_cmnd));
>   		}
> +
> +		/* add the VMID tags as per switch response */
> +		if (iocbq->iocb_flag & LPFC_IO_VMID) {
> +			union lpfc_wqe128 *wqe128;
> +
> +			if (phba->pport->vmid_priority_tagging) {
> +				bf_set(wqe_ccpe, &wqe->fcp_iread.wqe_com, 1);
> +				bf_set(wqe_ccp, &wqe->fcp_iread.wqe_com,
> +				       (iocbq->vmid_tag.cs_ctl_vmid));
> +				/* Bit 0 must be 0 */
> +			} else {
> +				wqe128 = (union lpfc_wqe128 *)wqe;
> +				bf_set(wqe_appid, &wqe->fcp_iread.wqe_com, 1);
> +				bf_set(wqe_wqes, &wqe128->fcp_iread.wqe_com, 1);
> +				wqe128->words[31] = iocbq->vmid_tag.app_id;
> +			}
> +		}
>   		break;
>   	case CMD_FCP_ICMND64_CR:
>   		/* word3 iocb=iotag wqe=payload_offset_len */
> @@ -10019,6 +10056,23 @@ lpfc_sli4_iocb2wqe(struct lpfc_hba *phba, struct lpfc_iocbq *iocbq,
>   			ptr = &wqe->words[22];
>   			memcpy(ptr, fcp_cmnd, sizeof(struct fcp_cmnd));
>   		}
> +
> +		/* add the VMID tags as per switch response */
> +		if (iocbq->iocb_flag & LPFC_IO_VMID) {
> +			union lpfc_wqe128 *wqe128;
> +
> +			if (phba->pport->vmid_priority_tagging) {
> +				bf_set(wqe_ccpe, &wqe->fcp_icmd.wqe_com, 1);
> +				bf_set(wqe_ccp, &wqe->fcp_icmd.wqe_com,
> +				       (iocbq->vmid_tag.cs_ctl_vmid));
> +				/* Bit 0 must be 0 */
> +			} else {
> +				wqe128 = (union lpfc_wqe128 *)wqe;
> +				bf_set(wqe_appid, &wqe->fcp_icmd.wqe_com, 1);
> +				bf_set(wqe_wqes, &wqe128->fcp_icmd.wqe_com, 1);
> +				wqe128->words[31] = iocbq->vmid_tag.app_id;
> +			}
> +		}
>   		break;
>   	case CMD_GEN_REQUEST64_CR:
>   		/* For this command calculate the xmit length of the
> 
Reviewed-by: Hannes Reinecke <hare@suse.de>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke                Kernel Storage Architect
hare@suse.de                              +49 911 74053 688
SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer

_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme

  reply	other threads:[~2021-03-04 12:44 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-04  5:27 [PATCH v8 00/16] blkcg:Support to track FC storage blk io traffic Muneendra
2021-03-04  5:27 ` [PATCH v8 01/16] cgroup: Added cgroup_get_from_id Muneendra
2021-03-04 12:25   ` Hannes Reinecke
2021-03-04 16:26   ` kernel test robot
2021-03-04  5:27 ` [PATCH v8 02/16] blkcg: Added a app identifier support for blkcg Muneendra
2021-03-04 12:25   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 03/16] nvme: Added a newsysfs attribute appid_store Muneendra
2021-03-04 12:27   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 04/16] lpfc: vmid: Add the datastructure for supporting VMID in lpfc Muneendra
2021-03-04 12:29   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 05/16] lpfc: vmid: Supplementary data structures for vmid and APIs Muneendra
2021-03-04 12:31   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 06/16] lpfc: vmid: Forward declarations for APIs Muneendra
2021-03-04 12:32   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 07/16] lpfc: vmid: VMID params initialization Muneendra
2021-03-04 12:33   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 08/16] lpfc: vmid: Add support for vmid in mailbox command, does vmid resource allocation and vmid cleanup Muneendra
2021-03-04 12:34   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 09/16] lpfc: vmid: Implements ELS commands for appid patch Muneendra
2021-03-04 12:36   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 10/16] lpfc: vmid: Functions to manage vmids Muneendra
2021-03-04 12:41   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 11/16] lpfc: vmid: Implements CT commands for appid Muneendra
2021-03-04 12:42   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 12/16] lpfc: vmid: Appends the vmid in the wqe before sending Muneendra
2021-03-04 12:43   ` Hannes Reinecke [this message]
2021-03-04  5:27 ` [PATCH v8 13/16] lpfc: vmid: Timeout implementation for vmid Muneendra
2021-03-04 12:46   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 14/16] lpfc: vmid: Adding qfpa and vmid timeout check in worker thread Muneendra
2021-03-04 12:47   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 15/16] lpfc: vmid: Introducing vmid in io path Muneendra
2021-03-04 12:52   ` Hannes Reinecke
2021-03-04  5:27 ` [PATCH v8 16/16] scsi: Made changes in Kconfig to select BLK_CGROUP_FC_APPID Muneendra
2021-03-04 12:53   ` Hannes Reinecke
2021-03-11 15:33 ` [PATCH v8 00/16] blkcg:Support to track FC storage blk io traffic Hannes Reinecke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cb296bf1-e001-44ca-e7da-4ca8d6a06346@suse.de \
    --to=hare@suse.de \
    --cc=emilne@redhat.com \
    --cc=gaurav.srivastava@broadcom.com \
    --cc=jsmart2021@gmail.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=mkumar@redhat.com \
    --cc=muneendra.kumar@broadcom.com \
    --cc=tj@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).