[dpdk-dev] [PATCH v8] net/iavf: support flex desc metadata extraction
Bruce Richardson
bruce.richardson at intel.com
Wed Oct 14 16:03:36 CEST 2020
On Wed, Oct 14, 2020 at 01:31:39PM +0100, Ferruh Yigit wrote:
> On 10/13/2020 9:17 AM, Jeff Guo wrote:
> > Enable metadata extraction for flexible descriptors in AVF, that would
> > allow network function directly get metadata without additional parsing
> > which would reduce the CPU cost for VFs. The enabling metadata
> > extractions involve the metadata of VLAN/IPv4/IPv6/IPv6-FLOW/TCP/MPLS
> > flexible descriptors, and the VF could negotiate the capability of
> > the flexible descriptor with PF and correspondingly configure the
> > specific offload at receiving queues.
> >
> > Signed-off-by: Jeff Guo <jia.guo at intel.com>
> > Acked-by: Haiyue Wang <haiyue.wang at intel.com>
> > ---
> > v8:
> > rebase patch for apply issue
> >
> > v7:
> > clean some useless and add doc
> >
> > v6:
> > rebase patch
> >
> > v5:
> > remove ovs configure since ovs is not protocol extraction
> >
> > v4:
> > add flex desc type in rx queue for handling vector path
> > handle ovs flex type
> >
> > v3:
> > export these global symbols into .map
> >
> > v2:
> > remove makefile change and modify the rxdid handling
> > ---
> > config/rte_config.h | 3 +
> > doc/guides/nics/intel_vf.rst | 16 +
> > doc/guides/rel_notes/release_20_11.rst | 6 +
> > drivers/net/iavf/iavf.h | 24 +-
> > drivers/net/iavf/iavf_ethdev.c | 394 ++++++++++++++++++++++
> > drivers/net/iavf/iavf_rxtx.c | 252 ++++++++++++--
> > drivers/net/iavf/iavf_rxtx.h | 168 +++++----
> > drivers/net/iavf/iavf_rxtx_vec_common.h | 3 +
> > drivers/net/iavf/iavf_vchnl.c | 22 +-
> > drivers/net/iavf/meson.build | 2 +
> > drivers/net/iavf/rte_pmd_iavf.h | 250 ++++++++++++++
> > drivers/net/iavf/rte_pmd_iavf_version.map | 13 +
> > 12 files changed, 1039 insertions(+), 114 deletions(-)
> > create mode 100644 drivers/net/iavf/rte_pmd_iavf.h
> >
> > diff --git a/config/rte_config.h b/config/rte_config.h
> > index 03d90d78bc..2c53072c3d 100644
> > --- a/config/rte_config.h
> > +++ b/config/rte_config.h
> > @@ -127,6 +127,9 @@
> > #define RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF 4
> > #define RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM 4
> > +/* iavf defines */
> > +#undef RTE_LIBRTE_IAVF_16BYTE_RX_DESC
> > +
>
> Hi Jeff,
>
> The 'RTE_LIBRTE_IAVF_16BYTE_RX_DESC' was already there, not introduced with
> this patch, so I think better to add this change as different patch.
>
> Also not sure if we want to add more config options to the 'rte_config.h',
> indeed otherway around and we are trying to get rid of as much as compile
> time optios.
> cc'ed Bruce too.
>
Actually, there is also patchset [1] to consider, which changes the format
of these values in the header file. It's better to not "undef" the not set
values, as that prevents someone from setting them via cflags/c_args when
building.
/Bruce
[1] http://patches.dpdk.org/project/dpdk/list/?series=11928
More information about the dev
mailing list