[PATCH v4] net/ice: refactor proto_ext to remove global variable
Zhang, Qi Z
qi.z.zhang at intel.com
Tue Aug 30 04:03:39 CEST 2022
> -----Original Message-----
> From: Liu, KevinX <kevinx.liu at intel.com>
> Sent: Friday, August 26, 2022 6:15 PM
> To: dev at dpdk.org
> Cc: Yang, Qiming <qiming.yang at intel.com>; Zhang, Qi Z
> <qi.z.zhang at intel.com>; Yang, SteveX <stevex.yang at intel.com>; Liu, KevinX
> <kevinx.liu at intel.com>
> Subject: [PATCH v4] net/ice: refactor proto_ext to remove global variable
>
> The ice has the feature to extract protocol fields into flex descriptor by
> programming per queue. However, the dynamic field for proto_ext are
> allocated by PMD, it is the responsibility of application to reserved the field,
> before start DPDK.
>
> Application with parse the offset and proto_ext name to PMD with devargs.
> Remove related private API in 'rte_pmd_ice.h' and 'rte_pmd_ice.h' file.
>
> Signed-off-by: Kevin Liu <kevinx.liu at intel.com>
>
> ---
> v2: Delete doc content related to 'rte_pmd_ice.h'.
> ---
> v3: Delete doc content related to 'rte_pmd_ice.h'.
> ---
> v4: refine code and change the check mode of dynamic field.
> ---
> doc/api/doxy-api-index.md | 1 -
> doc/api/doxy-api.conf.in | 1 -
> doc/guides/nics/ice.rst | 33 ++--
> drivers/net/ice/ice_ddp_package.c | 1 -
> drivers/net/ice/ice_ethdev.c | 113 ++++++++++----
> drivers/net/ice/ice_ethdev.h | 7 +
> drivers/net/ice/ice_rxtx.c | 45 ++----
> drivers/net/ice/ice_rxtx.h | 1 +
> drivers/net/ice/ice_testpmd.c | 2 +-
> drivers/net/ice/meson.build | 2 -
> drivers/net/ice/rte_pmd_ice.h | 247 ------------------------------
> drivers/net/ice/version.map | 7 -
> 12 files changed, 122 insertions(+), 338 deletions(-) delete mode 100644
> drivers/net/ice/rte_pmd_ice.h
>
> diff --git a/doc/api/doxy-api-index.md b/doc/api/doxy-api-index.md index
> 186a258be4..e578800cea 100644
> --- a/doc/api/doxy-api-index.md
> +++ b/doc/api/doxy-api-index.md
> @@ -44,7 +44,6 @@ The public API headers are grouped by topics:
> [KNI](@ref rte_kni.h),
> [ixgbe](@ref rte_pmd_ixgbe.h),
> [i40e](@ref rte_pmd_i40e.h),
> - [ice](@ref rte_pmd_ice.h),
> [iavf](@ref rte_pmd_iavf.h),
> [ioat](@ref rte_ioat_rawdev.h),
> [bnxt](@ref rte_pmd_bnxt.h),
> diff --git a/doc/api/doxy-api.conf.in b/doc/api/doxy-api.conf.in index
> 608494a7c0..6fab7436d7 100644
> --- a/doc/api/doxy-api.conf.in
> +++ b/doc/api/doxy-api.conf.in
> @@ -18,7 +18,6 @@ INPUT = @TOPDIR@/doc/api/doxy-api-
> index.md \
> @TOPDIR@/drivers/net/dpaa2 \
> @TOPDIR@/drivers/net/i40e \
> @TOPDIR@/drivers/net/iavf \
> - @TOPDIR@/drivers/net/ice \
> @TOPDIR@/drivers/net/ixgbe \
> @TOPDIR@/drivers/net/mlx5 \
> @TOPDIR@/drivers/net/softnic \ diff --git
> a/doc/guides/nics/ice.rst b/doc/guides/nics/ice.rst index
> 6b903b9bbc..432c6fd7ed 100644
> --- a/doc/guides/nics/ice.rst
> +++ b/doc/guides/nics/ice.rst
> @@ -110,29 +110,43 @@ Runtime Config Options
>
> The argument format is::
>
> - -a 18:00.0,proto_xtr=<queues:protocol>[<queues:protocol>...]
> - -a 18:00.0,proto_xtr=<protocol>
> +
> 18:00.0,proto_xtr=<queues:protocol>[<queues:protocol>...],field_offs=<offset>,
> \
> + field_name=<name>
> +
> + 18:00.0,proto_xtr=<protocol>,field_offs=<offset>,field_name=<name>
>
> Queues are grouped by ``(`` and ``)`` within the group. The ``-`` character
> is used as a range separator and ``,`` is used as a single number separator.
> The grouping ``()`` can be omitted for single element group. If no queues are
> specified, PMD will use this protocol extraction type for all queues.
> + ``field_offs`` is the offset of mbuf dynamic field for protocol extraction data.
> + ``field_name`` is the name of mbuf dynamic field for protocol extraction
> data.
> + ``field_offs`` and ``field_name`` will be checked whether it is
> + valid. If it is invalid the value needs to be reconfigured.
It is not clear here, better just describe when the configure is invalid what kind of failure will happen
More information about the dev
mailing list