All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Xueming(Steven) Li" <xuemingl@nvidia.com>
To: NBU-Contact-Thomas Monjalon <thomas@monjalon.net>
Cc: "zhouguoyang@huawei.com" <zhouguoyang@huawei.com>,
	"mczekaj@marvell.com" <mczekaj@marvell.com>,
	"radhac@marvell.com" <radhac@marvell.com>,
	"bruce.richardson@intel.com" <bruce.richardson@intel.com>,
	"sthotton@marvell.com" <sthotton@marvell.com>,
	Matan Azrad <matan@nvidia.com>,
	"kirankumark@marvell.com" <kirankumark@marvell.com>,
	"linville@tuxdriver.com" <linville@tuxdriver.com>,
	"beilei.xing@intel.com" <beilei.xing@intel.com>,
	"rmody@marvell.com" <rmody@marvell.com>,
	"dev@dpdk.org" <dev@dpdk.org>,
	"vburru@marvell.com" <vburru@marvell.com>,
	"somnath.kotur@broadcom.com" <somnath.kotur@broadcom.com>,
	"jiawenwu@trustnetic.com" <jiawenwu@trustnetic.com>,
	"chenbo.xia@intel.com" <chenbo.xia@intel.com>,
	"heinrich.kuhn@corigine.com" <heinrich.kuhn@corigine.com>,
	"hemant.agrawal@nxp.com" <hemant.agrawal@nxp.com>,
	"maxime.coquelin@redhat.com" <maxime.coquelin@redhat.com>,
	"asomalap@amd.com" <asomalap@amd.com>,
	"yongwang@vmware.com" <yongwang@vmware.com>,
	"andrew.rybchenko@oktetlabs.ru" <andrew.rybchenko@oktetlabs.ru>,
	"skori@marvell.com" <skori@marvell.com>,
	"ajit.khaparde@broadcom.com" <ajit.khaparde@broadcom.com>,
	"hkalra@marvell.com" <hkalra@marvell.com>,
	"shaibran@amazon.com" <shaibran@amazon.com>,
	"chas3@att.com" <chas3@att.com>,
	"cloud.wangxiaoyun@huawei.com" <cloud.wangxiaoyun@huawei.com>,
	"sthemmin@microsoft.com" <sthemmin@microsoft.com>,
	"jerinj@marvell.com" <jerinj@marvell.com>,
	"qiming.yang@intel.com" <qiming.yang@intel.com>,
	"pnalla@marvell.com" <pnalla@marvell.com>,
	"srinivasan@marvell.com" <srinivasan@marvell.com>,
	"mk@semihalf.com" <mk@semihalf.com>,
	"mw@semihalf.com" <mw@semihalf.com>,
	"xiao.w.wang@intel.com" <xiao.w.wang@intel.com>,
	"keith.wiles@intel.com" <keith.wiles@intel.com>,
	"xuanziyang2@huawei.com" <xuanziyang2@huawei.com>,
	"mtetsuyah@gmail.com" <mtetsuyah@gmail.com>,
	"qi.z.zhang@intel.com" <qi.z.zhang@intel.com>,
	"ciara.loftus@intel.com" <ciara.loftus@intel.com>,
	"g.singh@nxp.com" <g.singh@nxp.com>,
	"aboyer@pensando.io" <aboyer@pensando.io>,
	"steven.webster@windriver.com" <steven.webster@windriver.com>,
	"evgenys@amazon.com" <evgenys@amazon.com>,
	"humin29@huawei.com" <humin29@huawei.com>,
	"spinler@cesnet.cz" <spinler@cesnet.cz>,
	"johndale@cisco.com" <johndale@cisco.com>,
	"irusskikh@marvell.com" <irusskikh@marvell.com>,
	"dsinghrawat@marvell.com" <dsinghrawat@marvell.com>,
	 "shshaikh@marvell.com" <shshaikh@marvell.com>,
	"oulijun@huawei.com" <oulijun@huawei.com>,
	"ferruh.yigit@intel.com" <ferruh.yigit@intel.com>,
	"lironh@marvell.com" <lironh@marvell.com>,
	Slava Ovsiienko <viacheslavo@nvidia.com>,
	"aman.deep.singh@intel.com" <aman.deep.singh@intel.com>,
	"sachin.saxena@oss.nxp.com" <sachin.saxena@oss.nxp.com>,
	"rahul.lakkireddy@chelsio.com" <rahul.lakkireddy@chelsio.com>,
	"matt.peters@windriver.com" <matt.peters@windriver.com>,
	"jianwang@trustnetic.com" <jianwang@trustnetic.com>,
	"skoteshwar@marvell.com" <skoteshwar@marvell.com>,
	 "rosen.xu@intel.com" <rosen.xu@intel.com>,
	"zr@semihalf.com" <zr@semihalf.com>,
	"jingjing.wu@intel.com" <jingjing.wu@intel.com>,
	NBU-Contact-longli <longli@microsoft.com>,
	"yisen.zhuang@huawei.com" <yisen.zhuang@huawei.com>,
	"igorch@amazon.com" <igorch@amazon.com>,
	"grive@u256.net" <grive@u256.net>,
	"haiyue.wang@intel.com" <haiyue.wang@intel.com>,
	"jgrajcia@cisco.com" <jgrajcia@cisco.com>,
	"hyonkim@cisco.com" <hyonkim@cisco.com>,
	"ndabilpuram@marvell.com" <ndabilpuram@marvell.com>
Subject: Re: [dpdk-dev] [PATCH v2] ethdev: change queue release callback
Date: Thu, 16 Sep 2021 15:43:55 +0000	[thread overview]
Message-ID: <286d36d191dfbde87213191a217eb861b6196b99.camel@nvidia.com> (raw)
In-Reply-To: <16158406.yydg6pnXu9@thomas>

On Thu, 2021-09-16 at 10:09 +0200, Thomas Monjalon wrote:
> 15/09/2021 15:02, Xueming Li:
> > To align with other eth device queue configuration callbacks, cleanup
> > queue release callback API by changing RX and TX queue release callback
> > API parameter from queue object to device and queue index.
> 
> Please split the explanation in multiple sentences,
> so it allows taking a breath while reading :)
> A good method is to start with explaining the status:
> 	most callbacks use queue ID
> 	queue release callbacks use queue object
> Then explain what is done:
> 	queue release callbacks are changed to use queue ID
> 	all drivers are adapted
> 	empty callbacks are removed in some drivers
> 
> > This patch allows NULL callback to avoid defining empty callbacks.
> > 
> > Signed-off-by: Xueming Li <xuemingl@nvidia.com>
> > Cc: Ferruh Yigit <ferruh.yigit@intel.com>
> > Cc: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
> > Cc: "Singh, Aman Deep" <aman.deep.singh@intel.com>
> > ---
> > v2: included new NFP PMD driver
> > 
> > This patch is a preparation of shared Rx queue feature since the rxq
> > object is subject to be used by PMD as shared rxq object which is shared
> > among rx queues in same share group:
> >   https://mails.dpdk.org/archives/dev/2021-July/215575.html
> 
> This note does not fully explain why using the queue ID helps.
> 
> 
> > --- a/lib/ethdev/ethdev_driver.h
> > +++ b/lib/ethdev/ethdev_driver.h
> > -typedef void (*eth_queue_release_t)(void *queue);
> > +typedef void (*eth_queue_release_t)(struct rte_eth_dev *dev,
> > +				    uint16_t rx_queue_id);
> 
> > --- a/lib/ethdev/rte_ethdev.c
> > +++ b/lib/ethdev/rte_ethdev.c
> > -		RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->rx_queue_release, -ENOTSUP);
> 
> Why removing this check?
> It is changing the behaviour.

Some PMD implemented a dummy callback, so I think maybe it good to make
this callback optional to make PMD clean, how do you think?

> 
> > -
> > +		if (dev->dev_ops->rx_queue_release != NULL)
> > +			for (i = nb_queues; i < old_nb_queues; i++)
> > +				(*dev->dev_ops->rx_queue_release)(dev, i);
> >  		rxq = dev->data->rx_queues;
> > -
> > -		for (i = nb_queues; i < old_nb_queues; i++)
> > -			(*dev->dev_ops->rx_queue_release)(rxq[i]);
> >  		rxq = rte_realloc(rxq, sizeof(rxq[0]) * nb_queues,
> >  				RTE_CACHE_LINE_SIZE);
> 
> 
> 


  reply	other threads:[~2021-09-16 15:44 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-27  3:41 [dpdk-dev] [RFC] ethdev: change queue release callback Xueming Li
2021-07-28  7:40 ` Andrew Rybchenko
2021-08-09 14:39   ` Singh, Aman Deep
2021-08-09 15:31     ` Ferruh Yigit
2021-08-10  8:03       ` Xueming(Steven) Li
2021-08-10  8:54         ` Ferruh Yigit
2021-08-10  9:07           ` Xueming(Steven) Li
2021-08-11 11:57             ` Ferruh Yigit
2021-08-11 12:13               ` Xueming(Steven) Li
2021-08-12 14:29                 ` Xueming(Steven) Li
2021-09-26 11:25               ` Xueming(Steven) Li
2021-08-11 13:45 ` [dpdk-dev] [PATCH v1] " Xueming Li
2021-09-15 13:02 ` [dpdk-dev] [PATCH v2] " Xueming Li
2021-09-15 13:36   ` Xueming(Steven) Li
2021-09-16  8:09   ` Thomas Monjalon
2021-09-16 15:43     ` Xueming(Steven) Li [this message]
2021-09-16 15:50       ` Thomas Monjalon
2021-09-17  9:40         ` Xueming(Steven) Li
2021-09-17  9:39 ` [dpdk-dev] [PATCH v3 0/2] " Xueming Li
2021-09-17  9:39   ` [dpdk-dev] [PATCH v3 1/2] ethdev: queue release callback optional Xueming Li
2021-09-17 11:29     ` Andrew Rybchenko
2021-09-17 11:53       ` Andrew Rybchenko
2021-09-17 14:33         ` Xueming(Steven) Li
2021-09-17  9:39   ` [dpdk-dev] [PATCH v3 2/2] ethdev: change queue release callback Xueming Li
2021-09-17 11:49     ` Andrew Rybchenko
2021-09-17 14:31       ` Xueming(Steven) Li
2021-09-17 14:28 ` [dpdk-dev] [PATCH v4 0/2] " Xueming Li
2021-09-17 14:28   ` [dpdk-dev] [PATCH v4 1/2] ethdev: make queue release callback optional Xueming Li
2021-09-18  6:44     ` Andrew Rybchenko
2021-10-05 22:00       ` Thomas Monjalon
2021-09-17 14:28   ` [dpdk-dev] [PATCH v4 2/2] ethdev: change queue release callback Xueming Li
2021-09-18  6:50     ` Andrew Rybchenko
2021-09-18 12:39       ` Xueming(Steven) Li
2021-09-18 12:35 ` [dpdk-dev] [PATCH v5 0/2] " Xueming Li
2021-09-18 12:35   ` [dpdk-dev] [PATCH v5 1/2] ethdev: make queue release callback optional Xueming Li
2021-09-21 16:23     ` Ferruh Yigit
2021-09-18 12:35   ` [dpdk-dev] [PATCH v5 2/2] ethdev: change queue release callback Xueming Li
2021-09-21 18:13     ` Ferruh Yigit
2021-09-22  9:35       ` Xueming(Steven) Li
2021-09-22 10:57         ` Ferruh Yigit
2021-09-22 12:54           ` Xueming(Steven) Li
2021-09-29 13:57             ` Xueming(Steven) Li
2021-10-05 16:38               ` Ferruh Yigit
2021-10-06  7:55                 ` Xueming(Steven) Li
2021-10-06  8:04                   ` Ferruh Yigit
2021-10-06 11:19                     ` Xueming(Steven) Li
     [not found]           ` <2d2e9329b076c022418efd7b38ff280cf3ed1af4.camel@nvidia.com>
     [not found]             ` <56f7537a-bfc0-e4b8-72e8-c382ef0e2dbd@huawei.com>
     [not found]               ` <8e2c2f96265dc17af0564befb3918f1a8ea5154a.camel@nvidia.com>
2021-09-29 14:04                 ` [dpdk-dev] Fwd: " Xueming(Steven) Li
2021-09-30 15:17 ` [dpdk-dev] [PATCH v6 0/2] " Xueming Li
2021-09-30 15:17   ` [dpdk-dev] [PATCH v6 1/2] ethdev: make queue release callback optional Xueming Li
2021-10-05 22:04     ` Thomas Monjalon
2021-09-30 15:17   ` [dpdk-dev] [PATCH v6 2/2] ethdev: change queue release callback Xueming Li
2021-10-03  7:38     ` Matan Azrad
2021-10-03 21:00       ` Ajit Khaparde
2021-10-06 10:21     ` Somnath Kotur
2021-10-06 11:18 ` [dpdk-dev] [PATCH v7 0/2] " Xueming Li
2021-10-06 11:18   ` [dpdk-dev] [PATCH v7 1/2] ethdev: make queue release callback optional Xueming Li
2021-10-06 15:38     ` Hemant Agrawal
2021-10-08  8:16     ` Xu, Rosen
2021-10-06 11:18   ` [dpdk-dev] [PATCH v7 2/2] ethdev: change queue release callback Xueming Li
2021-10-06 17:20     ` Ferruh Yigit
2021-10-11  8:28     ` Thomas Monjalon
2021-10-11 13:11       ` Ferruh Yigit
2021-10-06 17:25   ` [dpdk-dev] [PATCH v7 0/2] " Ferruh Yigit

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=286d36d191dfbde87213191a217eb861b6196b99.camel@nvidia.com \
    --to=xuemingl@nvidia.com \
    --cc=aboyer@pensando.io \
    --cc=ajit.khaparde@broadcom.com \
    --cc=aman.deep.singh@intel.com \
    --cc=andrew.rybchenko@oktetlabs.ru \
    --cc=asomalap@amd.com \
    --cc=beilei.xing@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=chas3@att.com \
    --cc=chenbo.xia@intel.com \
    --cc=ciara.loftus@intel.com \
    --cc=cloud.wangxiaoyun@huawei.com \
    --cc=dev@dpdk.org \
    --cc=dsinghrawat@marvell.com \
    --cc=evgenys@amazon.com \
    --cc=ferruh.yigit@intel.com \
    --cc=g.singh@nxp.com \
    --cc=grive@u256.net \
    --cc=haiyue.wang@intel.com \
    --cc=heinrich.kuhn@corigine.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=hkalra@marvell.com \
    --cc=humin29@huawei.com \
    --cc=hyonkim@cisco.com \
    --cc=igorch@amazon.com \
    --cc=irusskikh@marvell.com \
    --cc=jerinj@marvell.com \
    --cc=jgrajcia@cisco.com \
    --cc=jianwang@trustnetic.com \
    --cc=jiawenwu@trustnetic.com \
    --cc=jingjing.wu@intel.com \
    --cc=johndale@cisco.com \
    --cc=keith.wiles@intel.com \
    --cc=kirankumark@marvell.com \
    --cc=linville@tuxdriver.com \
    --cc=lironh@marvell.com \
    --cc=longli@microsoft.com \
    --cc=matan@nvidia.com \
    --cc=matt.peters@windriver.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=mczekaj@marvell.com \
    --cc=mk@semihalf.com \
    --cc=mtetsuyah@gmail.com \
    --cc=mw@semihalf.com \
    --cc=ndabilpuram@marvell.com \
    --cc=oulijun@huawei.com \
    --cc=pnalla@marvell.com \
    --cc=qi.z.zhang@intel.com \
    --cc=qiming.yang@intel.com \
    --cc=radhac@marvell.com \
    --cc=rahul.lakkireddy@chelsio.com \
    --cc=rmody@marvell.com \
    --cc=rosen.xu@intel.com \
    --cc=sachin.saxena@oss.nxp.com \
    --cc=shaibran@amazon.com \
    --cc=shshaikh@marvell.com \
    --cc=skori@marvell.com \
    --cc=skoteshwar@marvell.com \
    --cc=somnath.kotur@broadcom.com \
    --cc=spinler@cesnet.cz \
    --cc=srinivasan@marvell.com \
    --cc=steven.webster@windriver.com \
    --cc=sthemmin@microsoft.com \
    --cc=sthotton@marvell.com \
    --cc=thomas@monjalon.net \
    --cc=vburru@marvell.com \
    --cc=viacheslavo@nvidia.com \
    --cc=xiao.w.wang@intel.com \
    --cc=xuanziyang2@huawei.com \
    --cc=yisen.zhuang@huawei.com \
    --cc=yongwang@vmware.com \
    --cc=zhouguoyang@huawei.com \
    --cc=zr@semihalf.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.