[dpdk-dev] [PATCH v6] ethdev: add namespace
Andrew Rybchenko
andrew.rybchenko at oktetlabs.ru
Fri Oct 22 08:44:26 CEST 2021
On 10/22/21 5:02 AM, Ferruh Yigit wrote:
> Add 'RTE_ETH' namespace to all enums & macros in a backward compatible
> Add 'RTE_ETH' namespace to all enums & macros in a backward compatible
> way. The macros for backward compatibility can be removed in next LTS.
> Also updated some struct names to have 'rte_eth' prefix.
>
> All internal components switched to using new names.
>
> Syntax fixed on lines that this patch touches.
>
> Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>
> Acked-by: Tyler Retzlaff <roretzla at linux.microsoft.com>
> Acked-by: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
> Acked-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
> Acked-by: Jerin Jacob <jerinj at marvell.com>
> Acked-by: Wisam Jaddo <wisamm at nvidia.com>
> Acked-by: Rosen Xu <rosen.xu at intel.com>
> Acked-by: Chenbo Xia <chenbo.xia at intel.com>
> Acked-by: Hemant Agrawal <hemant.agrawal at nxp.com>
> ---
> Cc: David Marchand <david.marchand at redhat.com>
> Cc: Thomas Monjalon <thomas at monjalon.net>
>
> v2:
> * Updated internal components
> * Removed deprecation notice
>
> v3:
> * Updated missing macros / structs that David highlighted
> * Added release notes update
>
> v4:
> * rebased on latest next-net
> * depends on https://patches.dpdk.org/user/todo/dpdk/?series=19744
> * Not able to complete scripts to update user code, although some
> shared by Aman:
> https://patches.dpdk.org/project/dpdk/patch/20211008102949.70716-1-aman.deep.singh@intel.com/
> Sending new version for possible option to get this patch for -rc1 and
> work for scripts later, before release.
>
> v5:
> * rebased on latest next-net
>
> v6:
> * rebased on latest next-net
[snip]
>
> +/** Maximum nb. of vlan per mirror rule */
> +#define RTE_ETH_MIRROR_MAX_VLANS 64
> +#define ETH_MIRROR_MAX_VLANS RTE_ETH_MIRROR_MAX_VLANS
> +
> +#define RTE_ETH_MIRROR_VIRTUAL_POOL_UP 0x01 /**< Virtual Pool uplink Mirroring. */
> +#define ETH_MIRROR_VIRTUAL_POOL_UP RTE_ETH_MIRROR_VIRTUAL_POOL_UP
> +#define RTE_ETH_MIRROR_UPLINK_PORT 0x02 /**< Uplink Port Mirroring. */
> +#define ETH_MIRROR_UPLINK_PORT RTE_ETH_MIRROR_UPLINK_PORT
> +#define RTE_ETH_MIRROR_DOWNLINK_PORT 0x04 /**< Downlink Port Mirroring. */
> +#define ETH_MIRROR_DOWNLINK_PORT RTE_ETH_MIRROR_DOWNLINK_PORT
> +#define RTE_ETH_MIRROR_VLAN 0x08 /**< VLAN Mirroring. */
> +#define ETH_MIRROR_VLAN RTE_ETH_MIRROR_VLAN
> +#define RTE_ETH_MIRROR_VIRTUAL_POOL_DOWN 0x10 /**< Virtual Pool downlink Mirroring. */
> +#define ETH_MIRROR_VIRTUAL_POOL_DOWN RTE_ETH_MIRROR_VIRTUAL_POOL_DOWN
> +
> +/**
> + * A structure used to configure VLAN traffic mirror of an Ethernet port.
> + */
> +struct rte_eth_vlan_mirror {
> + uint64_t vlan_mask; /**< mask for valid VLAN ID. */
> + /** VLAN ID list for vlan mirroring. */
> + uint16_t vlan_id[RTE_ETH_MIRROR_MAX_VLANS];
> +};
> +
> +/**
> + * A structure used to configure traffic mirror of an Ethernet port.
> + */
> +struct rte_eth_mirror_conf {
> + uint8_t rule_type; /**< Mirroring rule type */
> + uint8_t dst_pool; /**< Destination pool for this mirror rule. */
> + uint64_t pool_mask; /**< Bitmap of pool for pool mirroring */
> + /** VLAN ID setting for VLAN mirroring. */
> + struct rte_eth_vlan_mirror vlan;
> +};
> +
I guess above is an incorrect merge which returns mirror
structures and defines back.
Andrew.
More information about the dev
mailing list