All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Xia, Chenbo" <chenbo.xia@intel.com>
To: "Pei, Andy" <andy.pei@intel.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "Xu, Rosen" <rosen.xu@intel.com>,
	"Huang, Wei" <wei.huang@intel.com>,
	"Cao, Gang" <gang.cao@intel.com>,
	"maxime.coquelin@redhat.com" <maxime.coquelin@redhat.com>
Subject: RE: [PATCH v3 4/8] vdpa/ifc: write queue count to MQ register
Date: Wed, 12 Oct 2022 08:08:09 +0000	[thread overview]
Message-ID: <SN6PR11MB3504B7C96F54D9725CC6D1639C229@SN6PR11MB3504.namprd11.prod.outlook.com> (raw)
In-Reply-To: <1663308990-621-5-git-send-email-andy.pei@intel.com>

> -----Original Message-----
> From: Pei, Andy <andy.pei@intel.com>
> Sent: Friday, September 16, 2022 2:16 PM
> To: dev@dpdk.org
> Cc: Xia, Chenbo <chenbo.xia@intel.com>; Xu, Rosen <rosen.xu@intel.com>;
> Huang, Wei <wei.huang@intel.com>; Cao, Gang <gang.cao@intel.com>;
> maxime.coquelin@redhat.com
> Subject: [PATCH v3 4/8] vdpa/ifc: write queue count to MQ register
> 
> Write queue count to IFCVF_MQ_OFFSET register
> to enable multi queue feature.

Multi-queue

> 
> Signed-off-by: Andy Pei <andy.pei@intel.com>
> Signed-off-by: Huang Wei <wei.huang@intel.com>
> ---
>  drivers/vdpa/ifc/base/ifcvf.c | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
> 
> diff --git a/drivers/vdpa/ifc/base/ifcvf.c b/drivers/vdpa/ifc/base/ifcvf.c
> index 34c8226..7efb408 100644
> --- a/drivers/vdpa/ifc/base/ifcvf.c
> +++ b/drivers/vdpa/ifc/base/ifcvf.c
> @@ -198,6 +198,35 @@
>  	IFCVF_WRITE_REG32(val >> 32, hi);
>  }
> 
> +STATIC void
> +ifcvf_enable_multiqueue(struct ifcvf_hw *hw)

Maybe ifcvf_enable_mq?

> +{
> +	u8 *mq_cfg;
> +	int qid;

Qid should be the same type as nr_vring, so u8

> +	int nr_queue_pair = 0;
> +
> +	for (qid = 0; qid < hw->nr_vring; qid++) {
> +		if (!hw->vring[qid].enable)
> +			continue;
> +		nr_queue_pair++;
> +	}
> +
> +	if (nr_queue_pair == 0) {
> +		WARNINGOUT("no enabled vring\n");
> +		return;
> +	}
> +
> +	if (hw->device_type == IFCVF_NET)
> +		nr_queue_pair = (nr_queue_pair + 1) / 2;

Why +1?

> +
> +	mq_cfg = hw->mq_cfg;
> +	if (mq_cfg) {
> +		*(u32 *)mq_cfg = nr_queue_pair;
> +		RTE_LOG(INFO, PMD, "%d queue pairs are enabled\n",
> +			nr_queue_pair);
> +	}

As blk does not have queue pair, the log should be different for net/blk.

The variable nr_queue_pair should be nr_queue as it's the number of queues.
When device type is net, you can make *(u32 *)mq_cfg equal to nr_queue / 2

Thanks,
Chenbo

> +}
> +
>  STATIC int
>  ifcvf_hw_enable(struct ifcvf_hw *hw)
>  {
> @@ -215,6 +244,7 @@
>  		return -1;
>  	}
> 
> +	ifcvf_enable_multiqueue(hw);
>  	for (i = 0; i < hw->nr_vring; i++) {
>  		IFCVF_WRITE_REG16(i, &cfg->queue_select);
>  		io_write64_twopart(hw->vring[i].desc, &cfg->queue_desc_lo,
> --
> 1.8.3.1


  reply	other threads:[~2022-10-12  8:08 UTC|newest]

Thread overview: 181+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-23  4:34 [PATCH 0/8] add multi queue support to vDPA ifc driver Andy Pei
2022-08-23  4:34 ` [PATCH 1/8] vdpa/ifc: add new device ID Andy Pei
2022-09-08  5:54   ` [PATCH v2 0/8] vdpa/ifc: add multi queue support Andy Pei
2022-09-08  5:54     ` [PATCH v2 1/8] vdpa/ifc: add new device ID Andy Pei
2022-09-09  0:29       ` Xia, Chenbo
2022-09-09  7:44         ` Pei, Andy
2022-09-08  5:54     ` [PATCH v2 2/8] vdpa/ifc: add multi queue support Andy Pei
2022-09-09  0:29       ` Xia, Chenbo
2022-09-09  7:55         ` Pei, Andy
2022-09-08  5:54     ` [PATCH v2 3/8] vdpa/ifc: set max queues according to HW spec Andy Pei
2022-09-09  5:56       ` Xia, Chenbo
2022-09-14  3:59         ` Pei, Andy
2022-09-08  5:54     ` [PATCH v2 4/8] vdpa/ifc: write queue count to MQ register Andy Pei
2022-09-09  7:35       ` Xia, Chenbo
2022-09-09  8:31         ` Pei, Andy
2022-09-08  5:54     ` [PATCH v2 5/8] vdpa/ifc: only configure enabled queue Andy Pei
2022-09-14  1:59       ` Xia, Chenbo
2022-09-14  2:57         ` Huang, Wei
2022-09-08  5:54     ` [PATCH v2 6/8] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-09-14  2:23       ` Xia, Chenbo
2022-09-14  3:04         ` Huang, Wei
2022-09-14  3:14           ` Xia, Chenbo
2022-09-14  5:29           ` Pei, Andy
2022-09-08  5:54     ` [PATCH v2 7/8] vhost: configure device when any queue is ready for BLK device Andy Pei
2022-09-14  2:50       ` Xia, Chenbo
2022-09-14  7:01         ` Pei, Andy
2022-09-08  5:54     ` [PATCH v2 8/8] vhost: vDPA BLK devices configure device when all queue callfds are set Andy Pei
2022-09-16  6:16   ` [PATCH v3 0/8] vdpa/ifc: add multi queue support Andy Pei
2022-09-16  6:16     ` [PATCH v3 1/8] vdpa/ifc: add new device ID for legacy network device Andy Pei
2022-10-11 16:49       ` Maxime Coquelin
2022-10-12  6:33         ` Pei, Andy
2022-10-12  2:59       ` Xia, Chenbo
2022-10-12  6:34         ` Pei, Andy
2022-09-16  6:16     ` [PATCH v3 2/8] vdpa/ifc: add multi-queue support Andy Pei
2022-10-12  3:01       ` Xia, Chenbo
2022-10-12  7:25         ` Pei, Andy
2022-09-16  6:16     ` [PATCH v3 3/8] vdpa/ifc: set max queues based on virtio spec Andy Pei
2022-10-12  6:08       ` Xia, Chenbo
2022-10-12  7:22         ` Pei, Andy
2022-10-12  7:22         ` Pei, Andy
2022-09-16  6:16     ` [PATCH v3 4/8] vdpa/ifc: write queue count to MQ register Andy Pei
2022-10-12  8:08       ` Xia, Chenbo [this message]
2022-10-12  8:14         ` Pei, Andy
2022-09-16  6:16     ` [PATCH v3 5/8] vdpa/ifc: only configure enabled queue Andy Pei
2022-10-12  8:12       ` Xia, Chenbo
2022-10-12  8:37         ` Pei, Andy
2022-09-16  6:16     ` [PATCH v3 6/8] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-10-12  8:19       ` Xia, Chenbo
2022-10-12 11:00         ` Pei, Andy
2022-09-16  6:16     ` [PATCH v3 7/8] vhost: vDPA blk device gets ready when any queue is ready Andy Pei
2022-10-12  9:09       ` Xia, Chenbo
2022-10-12 12:13         ` Pei, Andy
2022-10-13  1:00           ` Xia, Chenbo
2022-10-13  3:05             ` Pei, Andy
2022-10-13  7:16             ` Maxime Coquelin
2022-10-13  9:00               ` Pei, Andy
2022-09-16  6:16     ` [PATCH v3 8/8] vhost: improve vDPA blk device readiness condition Andy Pei
2022-10-12  9:35       ` Xia, Chenbo
2022-10-13  7:55         ` Pei, Andy
2022-10-13  8:23           ` Pei, Andy
2022-10-13  8:44   ` [PATCH v4 0/8] vdpa/ifc: add multi queue support Andy Pei
2022-10-13  8:44     ` [PATCH v4 1/8] vdpa/ifc: add new device ID for legacy network device Andy Pei
2022-10-13  8:44     ` [PATCH v4 2/8] vdpa/ifc: add multi-queue support Andy Pei
2022-10-17  6:21       ` Xia, Chenbo
2022-10-17  6:28         ` Pei, Andy
2022-10-13  8:44     ` [PATCH v4 3/8] vdpa/ifc: set max queues based on virtio spec Andy Pei
2022-10-17  6:22       ` Xia, Chenbo
2022-10-17  6:29         ` Pei, Andy
2022-10-13  8:44     ` [PATCH v4 4/8] vdpa/ifc: write queue count to MQ register Andy Pei
2022-10-17  6:23       ` Xia, Chenbo
2022-10-17  6:36         ` Pei, Andy
2022-10-13  8:44     ` [PATCH v4 5/8] vdpa/ifc: only configure enabled queue Andy Pei
2022-10-17  6:24       ` Xia, Chenbo
2022-10-17  6:38         ` Pei, Andy
2022-10-13  8:44     ` [PATCH v4 6/8] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-10-17  6:26       ` Xia, Chenbo
2022-10-17  6:41         ` Pei, Andy
2022-10-13  8:44     ` [PATCH v4 7/8] vhost: vDPA blk device gets ready when any queue is ready Andy Pei
2022-10-17  6:34       ` Xia, Chenbo
2022-10-17  6:43         ` Pei, Andy
2022-10-13  8:44     ` [PATCH v4 8/8] vhost: improve vDPA blk device configure condition Andy Pei
2022-10-17  6:35       ` Xia, Chenbo
2022-10-17  7:12         ` Pei, Andy
2022-10-17  7:13   ` [PATCH v5 0/8] vdpa/ifc: add multi queue support Andy Pei
2022-10-17  7:13     ` [PATCH v5 1/8] vdpa/ifc: add new device ID for legacy network device Andy Pei
2022-10-17  7:13     ` [PATCH v5 2/8] vdpa/ifc: add multi-queue support Andy Pei
2022-10-17  7:13     ` [PATCH v5 3/8] vdpa/ifc: set max queues based on virtio spec Andy Pei
2022-10-17  7:13     ` [PATCH v5 4/8] vdpa/ifc: write queue count to MQ register Andy Pei
2022-10-17  7:13     ` [PATCH v5 5/8] vdpa/ifc: only configure enabled queue Andy Pei
2022-10-17  7:13     ` [PATCH v5 6/8] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-10-17  7:13     ` [PATCH v5 7/8] vhost: vDPA blk device gets ready when the first queue is ready Andy Pei
2022-10-17  7:54       ` Xia, Chenbo
2022-10-17  8:36         ` Maxime Coquelin
2022-10-17  8:42           ` Xia, Chenbo
2022-10-17  8:46             ` Maxime Coquelin
2022-10-17  7:13     ` [PATCH v5 8/8] vhost: improve vDPA blk device configure condition Andy Pei
2022-10-17 11:41   ` [PATCH v6 0/8] vdpa/ifc: add multi queue support Andy Pei
2022-10-17 11:41     ` [PATCH v6 1/8] vdpa/ifc: add new device ID for legacy network device Andy Pei
2022-10-17 11:41     ` [PATCH v6 2/8] vdpa/ifc: add multi-queue support Andy Pei
2022-10-17 11:41     ` [PATCH v6 3/8] vdpa/ifc: set max queues based on virtio spec Andy Pei
2022-10-17 11:41     ` [PATCH v6 4/8] vdpa/ifc: write queue count to MQ register Andy Pei
2022-10-17 11:41     ` [PATCH v6 5/8] vdpa/ifc: only configure enabled queue Andy Pei
2022-10-17 11:41     ` [PATCH v6 6/8] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-10-17 11:41     ` [PATCH v6 7/8] vhost: vDPA blk device gets ready when the first queue is ready Andy Pei
2022-10-17 11:41     ` [PATCH v6 8/8] vhost: improve vDPA blk device configure condition Andy Pei
2022-10-18  6:19   ` [PATCH v7 00/12] vdpa/ifc: add multi queue support Andy Pei
2022-10-18  6:19     ` [PATCH v7 01/12] vdpa/ifc: add new device ID for legacy network device Andy Pei
2022-10-18  6:19     ` [PATCH v7 02/12] vdpa/ifc: add multi-queue support Andy Pei
2022-10-18  6:19     ` [PATCH v7 03/12] vdpa/ifc: set max queues based on virtio spec Andy Pei
2022-10-18  6:19     ` [PATCH v7 04/12] vdpa/ifc: write queue count to MQ register Andy Pei
2022-10-18  6:19     ` [PATCH v7 05/12] vdpa/ifc: only configure enabled queue Andy Pei
2022-10-18  6:19     ` [PATCH v7 06/12] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-10-18  6:19     ` [PATCH v7 07/12] vdpa/ifc: change internal function name Andy Pei
2022-10-18  6:19     ` [PATCH v7 08/12] vdpa/ifc: add internal API to get device Andy Pei
2022-10-18  6:19     ` [PATCH v7 09/12] vdpa/ifc: change some driver logic Andy Pei
2022-10-18  6:19     ` [PATCH v7 10/12] vhost: add vdpa device type to rte vdpa device Andy Pei
2022-10-18  7:14       ` Maxime Coquelin
2022-10-18 12:14         ` Pei, Andy
2022-10-19  9:14       ` Xia, Chenbo
2022-10-19  9:19         ` Pei, Andy
2022-10-18  6:19     ` [PATCH v7 11/12] vhost: vDPA blk device gets ready when the first queue is ready Andy Pei
2022-10-18  6:19     ` [PATCH v7 12/12] vhost: improve vDPA blk device configure condition Andy Pei
2022-10-18 12:07   ` [PATCH v8 00/12] vdpa/ifc: add multi queue support Andy Pei
2022-10-18 12:07     ` [PATCH v8 01/12] vdpa/ifc: add new device ID for legacy network device Andy Pei
2022-10-18 12:07     ` [PATCH v8 02/12] vdpa/ifc: add multi-queue support Andy Pei
2022-10-18 12:07     ` [PATCH v8 03/12] vdpa/ifc: set max queues based on virtio spec Andy Pei
2022-10-18 12:07     ` [PATCH v8 04/12] vdpa/ifc: write queue count to MQ register Andy Pei
2022-10-18 12:07     ` [PATCH v8 05/12] vdpa/ifc: only configure enabled queue Andy Pei
2022-10-18 12:07     ` [PATCH v8 06/12] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-10-18 12:07     ` [PATCH v8 07/12] vdpa/ifc: change internal function name Andy Pei
2022-10-18 13:44       ` Maxime Coquelin
2022-10-18 13:47         ` Pei, Andy
2022-10-19  6:59       ` Xia, Chenbo
2022-10-19  9:41         ` Pei, Andy
2022-10-18 12:07     ` [PATCH v8 08/12] vdpa/ifc: add internal API to get device Andy Pei
2022-10-18 13:48       ` Maxime Coquelin
2022-10-18 13:52         ` Pei, Andy
2022-10-19  7:03       ` Xia, Chenbo
2022-10-19  9:40         ` Pei, Andy
2022-10-18 12:07     ` [PATCH v8 09/12] vdpa/ifc: change some driver logic Andy Pei
2022-10-18 13:57       ` Maxime Coquelin
2022-10-18 14:01         ` Pei, Andy
2022-10-19  9:13       ` Xia, Chenbo
2022-10-19  9:21         ` Pei, Andy
2022-10-18 12:07     ` [PATCH v8 10/12] vhost: add type to rte vdpa device Andy Pei
2022-10-18 13:15       ` Maxime Coquelin
2022-10-18 13:42         ` Pei, Andy
2022-10-18 12:07     ` [PATCH v8 11/12] vhost: vDPA blk device gets ready when the first queue is ready Andy Pei
2022-10-18 14:09       ` Maxime Coquelin
2022-10-18 14:11         ` Pei, Andy
2022-10-19  9:14       ` Xia, Chenbo
2022-10-19  9:18         ` Pei, Andy
2022-10-18 12:07     ` [PATCH v8 12/12] vhost: improve vDPA blk device configure condition Andy Pei
2022-10-18 14:14       ` Maxime Coquelin
2022-10-18 14:16         ` Pei, Andy
2022-10-19  9:15       ` Xia, Chenbo
2022-10-19  9:19         ` Pei, Andy
2022-10-19  8:41   ` [PATCH v9 00/12] vdpa/ifc: add multi queue support Andy Pei
2022-10-19  8:41     ` [PATCH v9 01/12] vdpa/ifc: add new device ID for legacy network device Andy Pei
2022-10-19  8:41     ` [PATCH v9 02/12] vdpa/ifc: add multi-queue support Andy Pei
2022-10-19  8:41     ` [PATCH v9 03/12] vdpa/ifc: set max queues based on virtio spec Andy Pei
2022-10-19  8:41     ` [PATCH v9 04/12] vdpa/ifc: write queue count to MQ register Andy Pei
2022-10-19  8:41     ` [PATCH v9 05/12] vdpa/ifc: only configure enabled queue Andy Pei
2022-10-19  8:41     ` [PATCH v9 06/12] vdpa/ifc: support dynamic enable/disable queue Andy Pei
2022-10-19  8:41     ` [PATCH v9 07/12] vdpa/ifc: change internal function name Andy Pei
2022-10-19  8:41     ` [PATCH v9 08/12] vdpa/ifc: add internal API to get device Andy Pei
2022-10-19  8:41     ` [PATCH v9 09/12] vdpa/ifc: improve internal list logic Andy Pei
2022-10-20  3:21       ` Xia, Chenbo
2022-10-20  5:53         ` Pei, Andy
2022-10-19  8:41     ` [PATCH v9 10/12] vhost: add type to rte vdpa device Andy Pei
2022-10-19  8:41     ` [PATCH v9 11/12] vhost: vDPA blk device gets ready when the first queue is ready Andy Pei
2022-10-19  8:41     ` [PATCH v9 12/12] vhost: improve vDPA blk device configure condition Andy Pei
2022-10-26  9:00     ` [PATCH v9 00/12] vdpa/ifc: add multi queue support Xia, Chenbo
2022-10-26  9:26       ` Pei, Andy
2022-08-23  4:34 ` [PATCH 2/8] vdpa/ifc: add multi queue suppoort Andy Pei
2022-08-23  4:35 ` [PATCH 3/8] vdpa/ifc: set max queues according to HW spec Andy Pei
2022-08-23  4:35 ` [PATCH 4/8] vdpa/ifc: write queue count to MQ register Andy Pei
2022-08-23  4:35 ` [PATCH 5/8] vdpa/ifc: only configure enabled queue Andy Pei
2022-08-23  4:35 ` [PATCH 6/8] vdpa/ifc: set vring state callback update data path Andy Pei
2022-08-23  4:35 ` [PATCH 7/8] vhost: configure device when any queue is ready for BLK device Andy Pei
2022-08-23  4:35 ` [PATCH 8/8] vhost: vDPA BLK devices configure device when all queue callfds are set Andy Pei

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=SN6PR11MB3504B7C96F54D9725CC6D1639C229@SN6PR11MB3504.namprd11.prod.outlook.com \
    --to=chenbo.xia@intel.com \
    --cc=andy.pei@intel.com \
    --cc=dev@dpdk.org \
    --cc=gang.cao@intel.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=rosen.xu@intel.com \
    --cc=wei.huang@intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.