DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Liu, Mingxia" <mingxia.liu@intel.com>
To: Ferruh Yigit <ferruh.yigit@amd.com>,
	"Xing, Beilei" <beilei.xing@intel.com>,
	"Zhang, Yuying" <yuying.zhang@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: RE: [PATCH v7 01/21] net/cpfl: support device initialization
Date: Tue, 28 Feb 2023 11:12:44 +0000	[thread overview]
Message-ID: <PH0PR11MB58774941658AB56ADF79E9CFECAC9@PH0PR11MB5877.namprd11.prod.outlook.com> (raw)
In-Reply-To: <215a5adc-c59e-bfef-be70-5ce5f1a28a47@amd.com>



> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@amd.com>
> Sent: Tuesday, February 28, 2023 5:44 AM
> To: Liu, Mingxia <mingxia.liu@intel.com>; Xing, Beilei <beilei.xing@intel.com>;
> Zhang, Yuying <yuying.zhang@intel.com>
> Cc: dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@amd.com>
> Subject: Re: [PATCH v7 01/21] net/cpfl: support device initialization
> 
> On 2/16/2023 12:29 AM, Mingxia Liu wrote:
> > Support device init and add the following dev ops:
> >  - dev_configure
> >  - dev_close
> >  - dev_infos_get
> >  - link_update
> >  - dev_supported_ptypes_get
> >
> > Signed-off-by: Mingxia Liu <mingxia.liu@intel.com>
> > ---
> >  MAINTAINERS                            |   8 +
> >  doc/guides/nics/cpfl.rst               |  66 +++
> 
> Need to add file to toctree (doc/guides/nics/index.rst) to make it visible.
> 
[Liu, Mingxia] ok, got it! Thanks!

> >  doc/guides/nics/features/cpfl.ini      |  12 +
> >  doc/guides/rel_notes/release_23_03.rst |   6 +
> >  drivers/net/cpfl/cpfl_ethdev.c         | 768 +++++++++++++++++++++++++
> >  drivers/net/cpfl/cpfl_ethdev.h         |  78 +++
> >  drivers/net/cpfl/cpfl_logs.h           |  32 ++
> >  drivers/net/cpfl/cpfl_rxtx.c           | 244 ++++++++
> >  drivers/net/cpfl/cpfl_rxtx.h           |  25 +
> 
> cpfl_rxtx.[ch] not used at all in this patch, 'cpfl_tx_queue_setup()' is added in
> this patch and next patch (2/21) looks a better place for it.
> 
[Liu, Mingxia] ok, will update it, thanks!

> >  drivers/net/cpfl/meson.build           |  14 +
> >  drivers/net/meson.build                |   1 +
> >  11 files changed, 1254 insertions(+)
> >  create mode 100644 doc/guides/nics/cpfl.rst  create mode 100644
> > doc/guides/nics/features/cpfl.ini  create mode 100644
> > drivers/net/cpfl/cpfl_ethdev.c  create mode 100644
> > drivers/net/cpfl/cpfl_ethdev.h  create mode 100644
> > drivers/net/cpfl/cpfl_logs.h  create mode 100644
> > drivers/net/cpfl/cpfl_rxtx.c  create mode 100644
> > drivers/net/cpfl/cpfl_rxtx.h  create mode 100644
> > drivers/net/cpfl/meson.build
> >
> > diff --git a/MAINTAINERS b/MAINTAINERS index 9a0f416d2e..af80edaf6e
> > 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -783,6 +783,14 @@ F: drivers/common/idpf/
> >  F: doc/guides/nics/idpf.rst
> >  F: doc/guides/nics/features/idpf.ini
> >
> > +Intel cpfl
> > +M: Yuying Zhang <yuying.zhang@intel.com>
> > +M: Beilei Xing <beilei.xing@intel.com>
> > +T: git://dpdk.org/next/dpdk-next-net-intel
> > +F: drivers/net/cpfl/
> > +F: doc/guides/nics/cpfl.rst
> > +F: doc/guides/nics/features/cpfl.ini
> > +
> 
> Documentation mentions driver is experimental, can you please highlight this
> in the maintainers file too, as:
> Intel cpfl - EXPERIMENTAL
> 
[Liu, Mingxia] ok, will update it, thanks!

> >  Intel igc
> >  M: Junfeng Guo <junfeng.guo@intel.com>
> >  M: Simei Su <simei.su@intel.com>
> > diff --git a/doc/guides/nics/cpfl.rst b/doc/guides/nics/cpfl.rst new
> > file mode 100644 index 0000000000..7c5aff0789
> > --- /dev/null
> > +++ b/doc/guides/nics/cpfl.rst
> > @@ -0,0 +1,66 @@
> > +.. SPDX-License-Identifier: BSD-3-Clause
> > +   Copyright(c) 2022 Intel Corporation.
> > +
> 
> s/2022/2023/
> 
> > +.. include:: <isonum.txt>
> > +
> > +CPFL Poll Mode Driver
> > +=====================
> > +
> > +The [*EXPERIMENTAL*] cpfl PMD (**librte_net_cpfl**) provides poll
> > +mode driver support for Intel\ |reg| Infrastructure Processing Unit (Intel\
> |reg| IPU) E2100.
> > +
> 
> Can you please provide a link for the mentioned device?
> 
> So, interested users can evaluate, learn more about the mentioned hardware.
> 
[Liu, Mingxia] ok, will add it, thanks!
> 
> > +
> > +Linux Prerequisites
> > +-------------------
> > +
> > +Follow the DPDK :doc:`../linux_gsg/index` to setup the basic DPDK
> environment.
> > +
> > +To get better performance on Intel platforms, please follow the
> > +:doc:`../linux_gsg/nic_perf_intel_platform`.
> > +
> > +
> > +Pre-Installation Configuration
> > +------------------------------
> > +
> > +Runtime Config Options
> > +~~~~~~~~~~~~~~~~~~~~~~
> 
> Is "Runtime Config Options", a sub section of "Pre-Installation Configuration"?
> 
[Liu, Mingxia] Yes, refer to ice and i40e .rst.

> > +
> > +- ``vport`` (default ``0``)
> > +
> > +  The PMD supports creation of multiple vports for one PCI device,
> > + each vport corresponds to a single ethdev.
> > +  The user can specify the vports with specific ID to be created, for
> example::
> > +
> > +    -a ca:00.0,vport=[0,2,3]
> > +
> > +  Then the PMD will create 3 vports (ethdevs) for device ``ca:00.0``.
> > +
> 
> Why need specific IDs?
> 
[beilei] we’re using this ID to map physical port to vport as default receive and transmit interface.

> other option is just provide number of requested vports and they get
> sequential ids, but since vport ids are got from user instead there must be
> some significance of them, can you please briefly document why ids matter.
> 
> > +  If the parameter is not provided, the vport 0 will be created by default.
> > +
> > +- ``rx_single`` (default ``0``)
> > +
> > +  There are two queue modes supported by Intel\ |reg| IPU Ethernet
> > + E2100 Series,  single queue mode and split queue mode for Rx queue.
> 
> Can you please describe in the documentation what 'split queue' and 'single
> queue' are and what is the difference between them?
>
 [beilei] sure, will add the description.

> <...>
> 
> > index 07914170a7..b0b23d1a44 100644
> > --- a/doc/guides/rel_notes/release_23_03.rst
> > +++ b/doc/guides/rel_notes/release_23_03.rst
> > @@ -88,6 +88,12 @@ New Features
> >    * Added timesync API support.
> >    * Added packet pacing(launch time offloading) support.
> >
> > +* **Added Intel cpfl driver.**
> > +
> > +  Added the new ``cpfl`` net driver
> > +  for Intel\ |reg| Infrastructure Processing Unit (Intel\ |reg| IPU) E2100.
> > +  See the :doc:`../nics/cpfl` NIC guide for more details on this new driver.
> > +
> 
> "New Features" section is grouped, an that grouping is documented in the
> section comment.
> 
> Can you please move the update to the proper location in the section.
> 
[Liu, Mingxia] ok, thanks will update it.
> <...>
> 
> > +static int
> > +cpfl_dev_link_update(struct rte_eth_dev *dev,
> > +		     __rte_unused int wait_to_complete) {
> > +	struct idpf_vport *vport = dev->data->dev_private;
> > +	struct rte_eth_link new_link;
> > +
> > +	memset(&new_link, 0, sizeof(new_link));
> > +
> > +	switch (vport->link_speed) {
> > +	case RTE_ETH_SPEED_NUM_10M:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_10M;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_100M:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_100M;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_1G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_1G;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_10G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_10G;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_20G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_20G;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_25G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_25G;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_40G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_40G;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_50G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_50G;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_100G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_100G;
> > +		break;
> > +	case RTE_ETH_SPEED_NUM_200G:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_200G;
> > +		break;
> 
> What about:
> ```
> switch (vport->link_speed) {
> case RTE_ETH_SPEED_NUM_10M:
> case RTE_ETH_SPEED_NUM_100M:
> ...
> case RTE_ETH_SPEED_NUM_200G:
> 	new_link.link_speed = vport->link_speed;
> 	break;
> default:
> 	new_link.link_speed = RTE_ETH_SPEED_NUM_UNKNOWN; ```
> 
> OR
> 
> ```
> for (i = 0; i < RTE_DIM(supported_speeds); i++) {
> 	if (vport->link_speed == supported_speeds[i]) {
> 		new_link.link_speed = vport->link_speed;
> 		break;
> 	}
> }
> 
> if (i == RTE_DIM(supported_speeds))
> 	new_link.link_speed = RTE_ETH_SPEED_NUM_UNKNOWN; ```
> 
> > +	default:
> > +		new_link.link_speed = RTE_ETH_SPEED_NUM_NONE;
> 
> I think this should be :
> 
> if (link_up)
> 	new_link.link_speed = RTE_ETH_SPEED_NUM_UNKNOWN; else
> 	new_link.link_speed = RTE_ETH_SPEED_NUM_NONE;
>
[Liu, Mingxia] Thanks, good idea, will update. 

> <...>
> 
> > +static int
> > +insert_value(struct cpfl_devargs *devargs, uint16_t id) {
> > +	uint16_t i;
> > +
> > +	/* ignore duplicate */
> > +	for (i = 0; i < devargs->req_vport_nb; i++) {
> > +		if (devargs->req_vports[i] == id)
> > +			return 0;
> > +	}
> > +
> > +	if (devargs->req_vport_nb >= RTE_DIM(devargs->req_vports)) {
> > +		PMD_INIT_LOG(ERR, "Total vport number can't be > %d",
> > +			     CPFL_MAX_VPORT_NUM);
> 
> Check is using 'RTE_DIM(devargs->req_vports)' and log is using
> 'CPFL_MAX_VPORT_NUM', they are same value but better to stick to one of
> them.
> 
[Liu, Mingxia] Thanks, good idea, will update.
> <...>
> 
> > +static int
> > +parse_vport(const char *key, const char *value, void *args) {
> > +	struct cpfl_devargs *devargs = args;
> > +	const char *pos = value;
> > +
> > +	devargs->req_vport_nb = 0;
> > +
> 
> if "vport" can be provided multiple times, above assignment is wrong, like:
> "vport=1,vport=3-5"
> 
[beilei] We won’t support this case. Will add check in idpf_parse_devargs.

> <...>
> 
> > +static int
> > +cpfl_parse_devargs(struct rte_pci_device *pci_dev, struct
> cpfl_adapter_ext *adapter,
> > +		   struct cpfl_devargs *cpfl_args)
> > +{
> > +	struct rte_devargs *devargs = pci_dev->device.devargs;
> > +	struct rte_kvargs *kvlist;
> > +	int i, ret;
> > +
> > +	cpfl_args->req_vport_nb = 0;
> > +
> > +	if (devargs == NULL)
> > +		return 0;
> > +
> > +	kvlist = rte_kvargs_parse(devargs->args, cpfl_valid_args);
> > +	if (kvlist == NULL) {
> > +		PMD_INIT_LOG(ERR, "invalid kvargs key");
> > +		return -EINVAL;
> > +	}
> > +
> > +	/* check parsed devargs */
> > +	if (adapter->cur_vport_nb + cpfl_args->req_vport_nb >
> > +	    CPFL_MAX_VPORT_NUM) {
> 
> At this stage 'cpfl_args->req_vport_nb' is 0 since CPFL_VPORT is not parsed
> yet, is the intention to do this check after 'rte_kvargs_processs()'?
> 
[beilei] Yes, thanks for the catch, will fix it in next version.

> > +		PMD_INIT_LOG(ERR, "Total vport number can't be > %d",
> > +			     CPFL_MAX_VPORT_NUM);
> > +		ret = -EINVAL;
> > +		goto bail;
> > +	}
> > +
> > +	for (i = 0; i < cpfl_args->req_vport_nb; i++) {> +		if
> (adapter->cur_vports & RTE_BIT32(cpfl_args->req_vports[i])) {
> > +			PMD_INIT_LOG(ERR, "Vport %d has been created",
> > +				     cpfl_args->req_vports[i]);
> 
> This is just argument parsing, nothing created yet, I suggest updating log
> accordingly.
> 
[beilei] OK, will update the log in the next version.

> > +			ret = -EINVAL;
> > +			goto bail;
> > +		}
> > +	}
> 
> same here, both for 'cpfl_args->req_vport_nb' & 'cpfl_args->req_vports[]',
> they are not updated yet.
>
[beilei] Yes, thanks for the catch, will fix it in next version.

> <...>
> 
> > +static void
> > +cpfl_handle_virtchnl_msg(struct cpfl_adapter_ext *adapter_ex) {
> > +	struct idpf_adapter *adapter = &adapter_ex->base;
> 
> Everywhere else, 'struct cpfl_adapter_ext' type variable name is 'adapter',
> here it is 'adapter_ex' and 'struct idpf_adapter' type is 'adapter'.
> 
> As far as I understand 'struct cpfl_adapter_ext' is something like "extended
> adapter" and extended version of 'struct idpf_adapter', so in the context of
> this driver what do you think to refer:
> 'struct cpfl_adapter_ext' as 'adapter'
> 'struct idpf_adapter'     as 'base' (or 'adapter_base'), consistently.
> 
[Liu, Mingxia] ok, got it, I'll update them, for your comments.

> <...>
> 
> > +static const struct eth_dev_ops cpfl_eth_dev_ops = {
> > +	.dev_configure			= cpfl_dev_configure,
> > +	.dev_close			= cpfl_dev_close,
> > +	.dev_infos_get			= cpfl_dev_info_get,
> > +	.link_update			= cpfl_dev_link_update,
> > +	.dev_supported_ptypes_get	= cpfl_dev_supported_ptypes_get,
> > +};
> 
> Can you please move the block just after 'cpfl_dev_close()', to group dev_ops
> related code together.
> 
[Liu, Mingxia] ok, thanks!

> <...>
> 
> > +
> > +static int
> > +cpfl_dev_vport_init(struct rte_eth_dev *dev, void *init_params) {
> > +	struct idpf_vport *vport = dev->data->dev_private;
> > +	struct cpfl_vport_param *param = init_params;
> > +	struct cpfl_adapter_ext *adapter = param->adapter;
> > +	/* for sending create vport virtchnl msg prepare */
> > +	struct virtchnl2_create_vport create_vport_info;
> > +	int ret = 0;
> > +
> > +	dev->dev_ops = &cpfl_eth_dev_ops;
> > +	vport->adapter = &adapter->base;
> > +	vport->sw_idx = param->idx;
> > +	vport->devarg_id = param->devarg_id;
> > +	vport->dev = dev;
> > +
> > +	memset(&create_vport_info, 0, sizeof(create_vport_info));
> > +	ret = idpf_vport_info_init(vport, &create_vport_info);
> > +	if (ret != 0) {
> > +		PMD_INIT_LOG(ERR, "Failed to init vport req_info.");
> > +		goto err;
> > +	}
> > +
> > +	ret = idpf_vport_init(vport, &create_vport_info, dev->data);
> > +	if (ret != 0) {
> > +		PMD_INIT_LOG(ERR, "Failed to init vports.");
> > +		goto err;
> > +	}
> > +
> > +	adapter->vports[param->idx] = vport;
> > +	adapter->cur_vports |= RTE_BIT32(param->devarg_id);
> > +	adapter->cur_vport_nb++;
> > +
> > +	dev->data->mac_addrs = rte_zmalloc(NULL, RTE_ETHER_ADDR_LEN,
> 0);
> > +	if (dev->data->mac_addrs == NULL) {
> > +		PMD_INIT_LOG(ERR, "Cannot allocate mac_addr memory.");
> > +		ret = -ENOMEM;
> > +		goto err_mac_addrs;
> > +	}
> > +
> > +	rte_ether_addr_copy((struct rte_ether_addr *)vport-
> >default_mac_addr,
> > +			    &dev->data->mac_addrs[0]);
> > +
> > +	return 0;
> > +
> > +err_mac_addrs:
> > +	adapter->vports[param->idx] = NULL;  /* reset */
> 
> shouln't update 'cur_vports' & 'cur_vport_nb' too in this error path.
> 
[beilei] Yes, need to update the two fields.
> <...>
> 
> > +
> > +err:
> > +	if (first_probe) {
> > +		rte_spinlock_lock(&cpfl_adapter_lock);
> > +		TAILQ_REMOVE(&cpfl_adapter_list, adapter, next);
> > +		rte_spinlock_unlock(&cpfl_adapter_lock);
> > +		cpfl_adapter_ext_deinit(adapter);
> > +		rte_free(adapter);
> > +	}
> 
> 
> Why 'first_probe' is needed, it looks like it is for the case when
> probe() called multiple time for same pci_dev, can this happen?
> 
[Liu, Mingxia] It's related to runtime creating vport in the future, but now the version doesn't support runtime.
> <...>
> 
> > +RTE_PMD_REGISTER_PCI(net_cpfl, rte_cpfl_pmd);
> > +RTE_PMD_REGISTER_PCI_TABLE(net_cpfl, pci_id_cpfl_map);
> > +RTE_PMD_REGISTER_KMOD_DEP(net_cpfl, "* igb_uio | vfio-pci");
> > +RTE_PMD_REGISTER_PARAM_STRING(net_cpfl,
> > +			      CPFL_TX_SINGLE_Q "=<0|1> "
> > +			      CPFL_RX_SINGLE_Q "=<0|1> "
> > +			      CPFL_VPORT "=[vport_set0,[vport_set1],...]");
> 
> What about:
> "\[vport0_begin[-vport0_end][,vport1_begin[-vport1_end][,..]\]"
> 
[Liu, Mingxia] Good idea, thanks!

> <...>
> 
> > +
> > +#define CPFL_MAX_VPORT_NUM	8
> > +
> It looks like there is a dynamic max vport number (adapter-
> >base.caps.max_vports), and there is above hardcoded define, for requested
> (devargs) vports.
> 
> The dynamic max is received via 'cpfl_adapter_ext_init()' before parsing
> dev_arg, so can it be possible to remove this hardcoded max completely?
> 
> 
[Liu, Mingxia] yes, we'll try.

> > +#define CPFL_INVALID_VPORT_IDX	0xffff
> > +
> > +#define CPFL_MIN_BUF_SIZE	1024
> > +#define CPFL_MAX_FRAME_SIZE	9728
> > +#define CPFL_DEFAULT_MTU	RTE_ETHER_MTU
> > +
> > +#define CPFL_NUM_MACADDR_MAX	64
> 
> The macro is not used, can you please add them when they are used.
> 
[Liu, Mingxia] ok, thanks! Will delete it.

> <...>
> 
> > @@ -0,0 +1,32 @@
> > +/* SPDX-License-Identifier: BSD-3-Clause
> > + * Copyright(c) 2023 Intel Corporation  */
> > +
> > +#ifndef _CPFL_LOGS_H_
> > +#define _CPFL_LOGS_H_
> > +
> > +#include <rte_log.h>
> > +
> > +extern int cpfl_logtype_init;
> > +extern int cpfl_logtype_driver;
> > +
> > +#define PMD_INIT_LOG(level, ...) \
> > +	rte_log(RTE_LOG_ ## level, \
> > +		cpfl_logtype_init, \
> > +		RTE_FMT("%s(): " \
> > +			RTE_FMT_HEAD(__VA_ARGS__,) "\n", \
> > +			__func__, \
> > +			RTE_FMT_TAIL(__VA_ARGS__,)))
> > +
> > +#define PMD_DRV_LOG_RAW(level, ...) \
> > +	rte_log(RTE_LOG_ ## level, \
> > +		cpfl_logtype_driver, \
> > +		RTE_FMT("%s(): " \
> > +			RTE_FMT_HEAD(__VA_ARGS__,) "\n", \
> > +			__func__, \
> > +			RTE_FMT_TAIL(__VA_ARGS__,)))
> > +
> > +#define PMD_DRV_LOG(level, fmt, args...) \
> > +	PMD_DRV_LOG_RAW(level, fmt "\n", ## args)
> > +
> 
> Is 'PMD_DRV_LOG_RAW' required at all, why not define 'PMD_DRV_LOG'
> directly as it is done with 'PMD_INIT_LOG'?
>
[Liu, Mingxia] Good idea, I'll simplify the code.

> Btw, both 'PMD_DRV_LOG_RAW' seems adding double '\n', one as part of
> 'fmt', other in the rte_log().



  reply	other threads:[~2023-02-28 11:13 UTC|newest]

Thread overview: 263+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-23  1:55 [PATCH 00/21] add support for cpfl PMD in DPDK Mingxia Liu
2022-12-23  1:55 ` [PATCH 01/21] net/cpfl: support device initialization Mingxia Liu
2022-12-23  1:55 ` [PATCH 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2022-12-23  1:55 ` [PATCH 03/21] net/cpfl: add Rx " Mingxia Liu
2022-12-23  1:55 ` [PATCH 04/21] net/cpfl: support device start and stop Mingxia Liu
2022-12-23  1:55 ` [PATCH 05/21] net/cpfl: support queue start Mingxia Liu
2022-12-23  1:55 ` [PATCH 06/21] net/cpfl: support queue stop Mingxia Liu
2022-12-23  1:55 ` [PATCH 07/21] net/cpfl: support queue release Mingxia Liu
2022-12-23  1:55 ` [PATCH 08/21] net/cpfl: support MTU configuration Mingxia Liu
2022-12-23  1:55 ` [PATCH 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2022-12-23  1:55 ` [PATCH 10/21] net/cpfl: support basic Tx " Mingxia Liu
2022-12-23  1:55 ` [PATCH 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2022-12-23  1:55 ` [PATCH 12/21] net/cpfl: support RSS Mingxia Liu
2022-12-23  1:55 ` [PATCH 13/21] net/cpfl: support Rx offloading Mingxia Liu
2022-12-23  1:55 ` [PATCH 14/21] net/cpfl: support Tx offloading Mingxia Liu
2022-12-23  1:55 ` [PATCH 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2022-12-23  1:55 ` [PATCH 16/21] net/cpfl: support timestamp offload Mingxia Liu
2022-12-23  1:55 ` [PATCH 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2022-12-23  1:55 ` [PATCH 18/21] net/cpfl: add hw statistics Mingxia Liu
2022-12-23  1:55 ` [PATCH 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2022-12-23  1:55 ` [PATCH 20/21] net/cpfl: support single q scatter RX datapath Mingxia Liu
2022-12-23  1:55 ` [PATCH 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-01-13  8:19 ` [PATCH v2 00/21] add support for cpfl PMD in DPDK Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 01/21] net/cpfl: support device initialization Mingxia Liu
2023-01-13 13:32     ` Zhang, Helin
2023-01-13  8:19   ` [PATCH v2 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 03/21] net/cpfl: add Rx " Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 05/21] net/cpfl: support queue start Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 06/21] net/cpfl: support queue stop Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 07/21] net/cpfl: support queue release Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 12/21] net/cpfl: support RSS Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 18/21] net/cpfl: add hw statistics Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 20/21] net/cpfl: support single q scatter RX datapath Mingxia Liu
2023-01-13  8:19   ` [PATCH v2 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-01-13 12:49   ` [PATCH v2 00/21] add support for cpfl PMD in DPDK Zhang, Helin
2023-01-18  7:31   ` [PATCH v3 " Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 01/21] net/cpfl: support device initialization Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 03/21] net/cpfl: add Rx " Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 05/21] net/cpfl: support queue start Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 06/21] net/cpfl: support queue stop Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 07/21] net/cpfl: support queue release Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 12/21] net/cpfl: support RSS Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 18/21] net/cpfl: add hw statistics Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-01-18  7:31     ` [PATCH v3 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-01-18  7:33   ` [PATCH v3 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-01-18  7:33     ` [PATCH v3 17/21] net/cpfl: add AVX512 data path for split " Mingxia Liu
2023-01-18  7:33     ` [PATCH v3 20/21] net/cpfl: support single q scatter RX datapath Mingxia Liu
2023-01-18  7:57   ` [PATCH v4 00/21] add support for cpfl PMD in DPDK Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 01/21] net/cpfl: support device initialization Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 03/21] net/cpfl: add Rx " Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 05/21] net/cpfl: support queue start Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 06/21] net/cpfl: support queue stop Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 07/21] net/cpfl: support queue release Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 12/21] net/cpfl: support RSS Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 18/21] net/cpfl: add hw statistics Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 20/21] net/cpfl: support single q scatter RX datapath Mingxia Liu
2023-01-18  7:57     ` [PATCH v4 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-02-09  8:45     ` [PATCH v5 00/21] add support for cpfl PMD in DPDK Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 01/21] net/cpfl: support device initialization Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 03/21] net/cpfl: add Rx " Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 05/21] net/cpfl: support queue start Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 06/21] net/cpfl: support queue stop Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 07/21] net/cpfl: support queue release Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 12/21] net/cpfl: support RSS Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 18/21] net/cpfl: add HW statistics Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 20/21] net/cpfl: support scalar scatter Rx datapath for single queue model Mingxia Liu
2023-02-09  8:45       ` [PATCH v5 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-02-09 16:47       ` [PATCH v5 00/21] add support for cpfl PMD in DPDK Stephen Hemminger
2023-02-13  1:37         ` Liu, Mingxia
2023-02-13  2:19       ` [PATCH v6 " Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 01/21] net/cpfl: support device initialization Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 03/21] net/cpfl: add Rx " Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 05/21] net/cpfl: support queue start Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 06/21] net/cpfl: support queue stop Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 07/21] net/cpfl: support queue release Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 12/21] net/cpfl: support RSS Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 18/21] net/cpfl: add HW statistics Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 20/21] net/cpfl: support scalar scatter Rx datapath for single queue model Mingxia Liu
2023-02-13  2:19         ` [PATCH v6 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-02-15 14:04         ` [PATCH v6 00/21] add support for cpfl PMD in DPDK Ferruh Yigit
2023-02-16  1:16           ` Liu, Mingxia
2023-02-16  0:29         ` [PATCH v7 " Mingxia Liu
2023-02-16  0:29           ` [PATCH v7 01/21] net/cpfl: support device initialization Mingxia Liu
2023-02-27 13:46             ` Ferruh Yigit
2023-02-27 15:45               ` Thomas Monjalon
2023-02-27 23:38                 ` Ferruh Yigit
2023-02-28  2:06                 ` Liu, Mingxia
2023-02-28  9:53                   ` Ferruh Yigit
2023-02-27 21:43             ` Ferruh Yigit
2023-02-28 11:12               ` Liu, Mingxia [this message]
2023-02-28 11:34                 ` Ferruh Yigit
2023-02-16  0:29           ` [PATCH v7 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-02-27 21:44             ` Ferruh Yigit
2023-02-28  2:40               ` Liu, Mingxia
2023-02-16  0:29           ` [PATCH v7 03/21] net/cpfl: add Rx " Mingxia Liu
2023-02-27 21:46             ` Ferruh Yigit
2023-02-28  3:03               ` Liu, Mingxia
2023-02-28 10:02                 ` Ferruh Yigit
2023-02-16  0:29           ` [PATCH v7 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-02-16  0:29           ` [PATCH v7 05/21] net/cpfl: support queue start Mingxia Liu
2023-02-27 21:47             ` Ferruh Yigit
2023-02-28  3:14               ` Liu, Mingxia
2023-02-28  3:28                 ` Liu, Mingxia
2023-02-16  0:29           ` [PATCH v7 06/21] net/cpfl: support queue stop Mingxia Liu
2023-02-27 21:48             ` Ferruh Yigit
2023-02-16  0:29           ` [PATCH v7 07/21] net/cpfl: support queue release Mingxia Liu
2023-02-16  0:29           ` [PATCH v7 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-02-16  0:29           ` [PATCH v7 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-02-16  0:29           ` [PATCH v7 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-02-16  0:30           ` [PATCH v7 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-02-27 21:49             ` Ferruh Yigit
2023-02-28 11:31               ` Liu, Mingxia
2023-02-16  0:30           ` [PATCH v7 12/21] net/cpfl: support RSS Mingxia Liu
2023-02-27 21:50             ` Ferruh Yigit
2023-02-28 11:28               ` Liu, Mingxia
2023-02-28 11:34                 ` Ferruh Yigit
2023-02-16  0:30           ` [PATCH v7 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-02-27 21:50             ` Ferruh Yigit
2023-02-28  5:48               ` Liu, Mingxia
2023-02-16  0:30           ` [PATCH v7 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-02-16  0:30           ` [PATCH v7 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-02-27 21:51             ` Ferruh Yigit
2023-02-28  3:19               ` Liu, Mingxia
2023-02-16  0:30           ` [PATCH v7 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-02-16  0:30           ` [PATCH v7 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2023-02-27 21:52             ` Ferruh Yigit
2023-02-16  0:30           ` [PATCH v7 18/21] net/cpfl: add HW statistics Mingxia Liu
2023-02-27 21:52             ` Ferruh Yigit
2023-02-28  6:46               ` Liu, Mingxia
2023-02-28 10:01                 ` Ferruh Yigit
2023-02-28 11:47                   ` Liu, Mingxia
2023-02-28 12:04                     ` Ferruh Yigit
2023-02-28 12:12                       ` Bruce Richardson
2023-02-28 12:24                         ` Ferruh Yigit
2023-02-28 12:33                           ` Ferruh Yigit
2023-02-28 13:29                             ` Zhang, Qi Z
2023-02-28 13:34                               ` Ferruh Yigit
2023-02-28 14:04                                 ` Zhang, Qi Z
2023-02-28 14:24                                 ` Bruce Richardson
2023-02-28 16:14                                   ` Ferruh Yigit
2023-02-16  0:30           ` [PATCH v7 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-02-16  0:30           ` [PATCH v7 20/21] net/cpfl: support scalar scatter Rx datapath for single queue model Mingxia Liu
2023-02-16  0:30           ` [PATCH v7 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-02-27 21:52             ` Ferruh Yigit
2023-02-28  5:28               ` Liu, Mingxia
2023-02-28  5:54               ` Liu, Mingxia
2023-02-27 21:43           ` [PATCH v7 00/21] add support for cpfl PMD in DPDK Ferruh Yigit
2023-02-28  1:44             ` Zhang, Qi Z
2023-03-02 10:35           ` [PATCH v8 " Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 01/21] net/cpfl: support device initialization Mingxia Liu
2023-03-02  9:31               ` Ferruh Yigit
2023-03-02 11:24                 ` Liu, Mingxia
2023-03-02 11:51                   ` Ferruh Yigit
2023-03-02 12:08                     ` Xing, Beilei
2023-03-02 13:11                     ` Liu, Mingxia
2023-03-02 12:08                 ` Xing, Beilei
2023-03-02 10:35             ` [PATCH v8 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 03/21] net/cpfl: add Rx " Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 05/21] net/cpfl: support queue start Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 06/21] net/cpfl: support queue stop Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 07/21] net/cpfl: support queue release Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 12/21] net/cpfl: support RSS Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 18/21] net/cpfl: add HW statistics Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 20/21] net/cpfl: support scalar scatter Rx datapath for single queue model Mingxia Liu
2023-03-02 10:35             ` [PATCH v8 21/21] net/cpfl: add xstats ops Mingxia Liu
2023-03-02  9:30               ` Ferruh Yigit
2023-03-02 11:19                 ` Liu, Mingxia
2023-03-02 21:20             ` [PATCH v9 00/21] add support for cpfl PMD in DPDK Mingxia Liu
2023-03-02 15:06               ` Ferruh Yigit
2023-03-02 21:20               ` [PATCH v9 01/21] net/cpfl: support device initialization Mingxia Liu
2023-03-07 14:11                 ` Ferruh Yigit
2023-03-07 15:03                   ` Ferruh Yigit
2023-03-08 17:03                     ` Ferruh Yigit
2023-03-09  0:59                       ` Liu, Mingxia
2023-03-09  1:42                     ` Liu, Mingxia
2023-03-02 21:20               ` [PATCH v9 02/21] net/cpfl: add Tx queue setup Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 03/21] net/cpfl: add Rx " Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 04/21] net/cpfl: support device start and stop Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 05/21] net/cpfl: support queue start Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 06/21] net/cpfl: support queue stop Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 07/21] net/cpfl: support queue release Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 08/21] net/cpfl: support MTU configuration Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 09/21] net/cpfl: support basic Rx data path Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 10/21] net/cpfl: support basic Tx " Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 11/21] net/cpfl: support write back based on ITR expire Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 12/21] net/cpfl: support RSS Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 13/21] net/cpfl: support Rx offloading Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 14/21] net/cpfl: support Tx offloading Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 15/21] net/cpfl: add AVX512 data path for single queue model Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 16/21] net/cpfl: support timestamp offload Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 17/21] net/cpfl: add AVX512 data path for split queue model Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 18/21] net/cpfl: add HW statistics Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 19/21] net/cpfl: add RSS set/get ops Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 20/21] net/cpfl: support scalar scatter Rx datapath for single queue model Mingxia Liu
2023-03-02 21:20               ` [PATCH v9 21/21] net/cpfl: add xstats ops Mingxia Liu

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=PH0PR11MB58774941658AB56ADF79E9CFECAC9@PH0PR11MB5877.namprd11.prod.outlook.com \
    --to=mingxia.liu@intel.com \
    --cc=beilei.xing@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@amd.com \
    --cc=yuying.zhang@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 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).