DPDK patches and discussions
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas@monjalon.net>
To: "Wang, Haiyue" <haiyue.wang@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	"olivier.matz@6wind.com" <olivier.matz@6wind.com>,
	"Ye, Xiaolong" <xiaolong.ye@intel.com>,
	"Yigit, Ferruh" <ferruh.yigit@intel.com>
Subject: Re: [dpdk-dev] [PATCH v9] net/ice: optimize protocol extraction by dynamic mbuf API
Date: Fri, 08 Nov 2019 15:38:09 +0100
Message-ID: <2380965.TJoCyOKrBI@xps> (raw)
In-Reply-To: <E3B9F2FDCB65864C82CD632F23D8AB8773D9053F@shsmsx102.ccr.corp.intel.com>

08/11/2019 15:01, Wang, Haiyue:
> From: Thomas Monjalon <thomas@monjalon.net>
> > 07/11/2019 11:44, Haiyue Wang:
> > > --- a/drivers/net/ice/rte_pmd_ice_version.map
> > > +++ b/drivers/net/ice/rte_pmd_ice_version.map
> > > +EXPERIMENTAL {
> > > +	global:
> > > +
> > > +	# added in 19.11
> > > +	rte_net_ice_dynfield_proto_xtr_metadata_offs;
> > > +	rte_net_ice_dynflag_proto_xtr_vlan_mask;
> > > +	rte_net_ice_dynflag_proto_xtr_ipv4_mask;
> > > +	rte_net_ice_dynflag_proto_xtr_ipv6_mask;
> > > +	rte_net_ice_dynflag_proto_xtr_ipv6_flow_mask;
> > > +	rte_net_ice_dynflag_proto_xtr_tcp_mask;
> > > +};
> > 
> > Given that you provide some functions to access to the metadata,
> > why do you need to export these flags and field in the .map?
> >
> > However, the functions are missing in the .map.
> > Did you try to compile as a shared library?
> > 
> 
> These functions are 'static inline', no need to be exported in the

Yes I missed they are inline.

> .map. And the macros like 'PKT_RX_DYNF_PROTO_XTR_XXX', in fact, their
> real definitions are global values defined in rte_pmd_ice like:
> rte_net_ice_dynflag_proto_xtr_xxx_mask.
> 
> Since rte_pmd_ice are required to compiled as a shared library, so
> it is needed to export these flags and field in the .map.
> 
> This design is referred to the below upstream practice about dynamic
> mbuf.
> 
> commit 7743e81854944ed17df05bfdcba26556cb41ca0c
> Author: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
> Date:   Tue Nov 5 14:19:30 2019 +0000
> 
>     ethdev: extend flow metadata
> 
> --- a/lib/librte_ethdev/rte_ethdev_version.map
> +++ b/lib/librte_ethdev/rte_ethdev_version.map
> @@ -289,4 +289,7 @@ EXPERIMENTAL {
>         rte_eth_rx_hairpin_queue_setup;
>         rte_eth_tx_burst_mode_get;
>         rte_eth_tx_hairpin_queue_setup;
> +       rte_flow_dynf_metadata_offs;
> +       rte_flow_dynf_metadata_mask;
> +       rte_flow_dynf_metadata_register;
>  };

Yes all these internals are exported because we use macros
or inline functions.
Matter of tradeoff between API cleaning and performance...



  reply	other threads:[~2019-11-08 14:38 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-26 17:44 [dpdk-dev] [PATCH v1] net/ice: use dynamic mbuf API to handle protocol extraction Haiyue Wang
2019-10-29  7:34 ` [dpdk-dev] [PATCH v2] net/ice: optimize protocol extraction by dynamic mbuf API Haiyue Wang
2019-10-30 16:56   ` Olivier Matz
2019-10-31  1:16     ` Wang, Haiyue
2019-11-01  3:17   ` [dpdk-dev] [PATCH v3] " Haiyue Wang
2019-11-01 12:53     ` [dpdk-dev] [PATCH v4] " Haiyue Wang
2019-11-01 16:19       ` [dpdk-dev] [PATCH v5] " Haiyue Wang
2019-11-05  1:19         ` [dpdk-dev] [PATCH v6] " Haiyue Wang
2019-11-05  1:26           ` [dpdk-dev] [PATCH v7] " Haiyue Wang
2019-11-07  5:35           ` [dpdk-dev] [PATCH v8] " Haiyue Wang
2019-11-07  9:08             ` Ye Xiaolong
2019-11-07 10:38               ` Wang, Haiyue
2019-11-07 10:44           ` [dpdk-dev] [PATCH v9] " Haiyue Wang
2019-11-08  2:35             ` Ye Xiaolong
2019-11-08 12:34             ` Thomas Monjalon
2019-11-08 14:08               ` Wang, Haiyue
2019-11-08 14:39                 ` Thomas Monjalon
2019-11-08 15:04                   ` Wang, Haiyue
2019-11-08 15:03               ` Ye Xiaolong
2019-11-08 12:55             ` Thomas Monjalon
2019-11-08 14:01               ` Wang, Haiyue
2019-11-08 14:38                 ` Thomas Monjalon [this message]
2019-11-08 15:44           ` [dpdk-dev] [PATCH v10 0/2] " Haiyue Wang
2019-11-08 15:44             ` [dpdk-dev] [PATCH v10 1/2] " Haiyue Wang
2019-11-08 15:44             ` [dpdk-dev] [PATCH v10 2/2] doc: add the ice PMD doxygen Haiyue Wang
2019-11-08 15:58             ` [dpdk-dev] [PATCH v10 0/2] net/ice: optimize protocol extraction by dynamic mbuf API Thomas Monjalon
2019-11-09  1:31               ` Ye Xiaolong

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=2380965.TJoCyOKrBI@xps \
    --to=thomas@monjalon.net \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=haiyue.wang@intel.com \
    --cc=olivier.matz@6wind.com \
    --cc=xiaolong.ye@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

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ http://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git