> -----Original Message-----
> From: Ray Kinsella <m...@ashroe.eu>
> Sent: Tuesday, April 19, 2022 11:56 PM
> To: Zhang, Peng1X <peng1x.zh...@intel.com>
> Cc: dev@dpdk.org; Yang, Qiming <qiming.y...@intel.com>; Zhang, Qi Z
> <qi.z.zh...@intel.com>; Richardson, Bruce <bruce.richard...@intel.com>
> Subject: Re: [PATCH] net/ice: promote dynflag API
>
>
> peng1x.zh...@intel.com writes:
>
> > From: Peng Zhang <peng1x.zh...@intel.com>
> >
> > Promote dynflag APIs to be stable.
> >
> > Signed-off-by: Peng Zhang <peng1x.zh...@intel.com>
> > ---
> > drivers/net/ice/rte_pmd_ice.h | 1 -
> > drivers/net/ice/version.map | 15 +++++++++------
> > 2 files changed, 9 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/net/ice/rte_pmd_ice.h
> > b/drivers/net/ice/rte_pmd_ice.h index 9a436a140b..13604bf9e2 100644
> > --- a/drivers/net/ice/rte_pmd_ice.h
> > +++ b/drivers/net/ice/rte_pmd_ice.h
> > @@ -149,7 +149,6 @@ extern uint64_t
> rte_net_ice_dynflag_proto_xtr_ip_offset_mask;
> > * @return
> > * True if registered, false otherwise.
> > */
> > -__rte_experimental
> > static __rte_always_inline int
> > rte_net_ice_dynf_proto_xtr_metadata_avail(void)
> > {
> > diff --git a/drivers/net/ice/version.map b/drivers/net/ice/version.map
> > index cc837f1c00..4cbe33a40d 100644
> > --- a/drivers/net/ice/version.map
> > +++ b/drivers/net/ice/version.map
> > @@ -1,16 +1,19 @@
> > DPDK_22 {
> > - local: *;
> > -};
> > + global:
> >
> > -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;
>
> Folks, these are all exported variables, we should be removing these not
> promoting these to stable. After looking at them closely, can't we just make
> them local, do they need to be exported at all?
These are help API we exposed to the application, they should be used paired
with devargs "proto_xtr".
Basically, the application use proto_xtr to offload specific metadata to a
customized mbuf,
The driver uses dynamic mbuf API to register the field and store the mbuf
offset to the above global variables, then the application uses them to access
specific metadata.
So I think they are not local.
>
> --
> Regards, Ray K