From: "Medvedkin, Vladimir" <vladimir.medvedkin@intel.com>
To: Anatoly Burakov <anatoly.burakov@intel.com>, <dev@dpdk.org>
Subject: Re: [PATCH v3 04/19] net/ixgbe: add support for common flow parsing
Date: Sat, 19 Sep 2026 17:09:57 +0100 [thread overview]
Message-ID: <d5816959-01bf-4204-ade8-45eb9a0790df@intel.com> (raw)
In-Reply-To: <59c9c34e52af32f061d747086d301cf01f091c58.1789560945.git.anatoly.burakov@intel.com>
Acked-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com>
On 9/16/2026 1:18 PM, Anatoly Burakov wrote:
> Implement support for common flow parsing infrastructure in preparation for
> migration of flow engines. The following features are enabled:
>
> - Conf init on dev_init
> - Conf uninit on dev_close
> - Flow cleanup on dev_close
> - Flow replay on dev_start
>
> Signed-off-by: Anatoly Burakov<anatoly.burakov@intel.com>
> ---
> drivers/net/intel/ixgbe/ixgbe_ethdev.c | 22 ++++++++++-
> drivers/net/intel/ixgbe/ixgbe_ethdev.h | 5 +++
> drivers/net/intel/ixgbe/ixgbe_flow.c | 54 +++++++++++++++++++++++++-
> drivers/net/intel/ixgbe/ixgbe_flow.h | 12 ++++++
> 4 files changed, 90 insertions(+), 3 deletions(-)
> create mode 100644 drivers/net/intel/ixgbe/ixgbe_flow.h
>
> diff --git a/drivers/net/intel/ixgbe/ixgbe_ethdev.c b/drivers/net/intel/ixgbe/ixgbe_ethdev.c
> index fc3a02c7d98..48cf608aebb 100644
> --- a/drivers/net/intel/ixgbe/ixgbe_ethdev.c
> +++ b/drivers/net/intel/ixgbe/ixgbe_ethdev.c
> @@ -46,6 +46,7 @@
> #include "base/ixgbe_phy.h"
> #include "ixgbe_osdep.h"
> #include "ixgbe_regs.h"
> +#include "ixgbe_flow.h"
>
> /*
> * High threshold controlling when to start sending XOFF frames. Must be at
> @@ -1373,6 +1374,12 @@ eth_ixgbe_dev_init(struct rte_eth_dev *eth_dev, void *init_params __rte_unused)
> if (ret)
> goto err_l2_tn_filter_init;
>
> + /* initialize flow engine configuration */
> + ret = ci_flow_engine_conf_init(&ad->flow_engine_conf,
> + &ixgbe_flow_engine_list, eth_dev->data);
> + if (ret)
> + goto err_flow_engine_conf_init;
> +
> /* initialize flow filter lists */
> ixgbe_filterlist_init(eth_dev);
>
> @@ -1384,6 +1391,8 @@ eth_ixgbe_dev_init(struct rte_eth_dev *eth_dev, void *init_params __rte_unused)
>
> return 0;
>
> +err_flow_engine_conf_init:
> + ixgbe_l2_tn_filter_uninit(eth_dev);
> err_l2_tn_filter_init:
> ixgbe_fdir_filter_uninit(eth_dev);
> err_fdir_filter_init:
> @@ -2949,6 +2958,9 @@ ixgbe_dev_start(struct rte_eth_dev *dev)
> if (macsec_setting->offload_en)
> ixgbe_dev_macsec_register_enable(dev, macsec_setting);
>
> + /* re-install kept flows to hardware */
> + ci_flow_replay(&adapter->flow_engine_conf);
> +
> return 0;
>
> error:
> @@ -3128,8 +3140,8 @@ ixgbe_dev_set_link_down(struct rte_eth_dev *dev)
> static int
> ixgbe_dev_close(struct rte_eth_dev *dev)
> {
> - struct ixgbe_hw *hw =
> - IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private);
> + struct ixgbe_adapter *ad = dev->data->dev_private;
> + struct ixgbe_hw *hw = IXGBE_DEV_PRIVATE_TO_HW(ad);
> struct rte_pci_device *pci_dev = RTE_CLASS_TO_BUS_DEVICE(dev, *pci_dev);
> struct rte_intr_handle *intr_handle = pci_dev->intr_handle;
> int retries = 0;
> @@ -3196,6 +3208,12 @@ ixgbe_dev_close(struct rte_eth_dev *dev)
> rte_free(dev->security_ctx);
> dev->security_ctx = NULL;
>
> + /* drop all flows */
> + ci_flow_cleanup(&ad->flow_engine_conf);
> +
> + /* reset flow engines */
> + ci_flow_engine_conf_reset(&ad->flow_engine_conf);
> +
> return ret;
> }
>
> diff --git a/drivers/net/intel/ixgbe/ixgbe_ethdev.h b/drivers/net/intel/ixgbe/ixgbe_ethdev.h
> index fd3236fda24..fe3790b9f49 100644
> --- a/drivers/net/intel/ixgbe/ixgbe_ethdev.h
> +++ b/drivers/net/intel/ixgbe/ixgbe_ethdev.h
> @@ -22,6 +22,8 @@
> #include <bus_pci_driver.h>
> #include <rte_tm_driver.h>
>
> +#include "../common/flow_engine.h"
> +
> /* need update link, bit flag */
> #define IXGBE_FLAG_NEED_LINK_UPDATE (uint32_t)(1 << 0)
> #define IXGBE_FLAG_MAILBOX (uint32_t)(1 << 1)
> @@ -346,6 +348,7 @@ struct ixgbe_l2_tn_info {
> };
>
> struct rte_flow {
> + struct ci_flow flow;
> enum rte_filter_type filter_type;
> /* security flows are not rte_filter_type */
> bool is_security;
> @@ -492,6 +495,8 @@ struct ixgbe_adapter {
> struct rte_timecounter tx_tstamp_tc;
> struct ixgbe_tm_conf tm_conf;
>
> + struct ci_flow_engine_conf flow_engine_conf;
> +
> /* For RSS reta table update */
> uint8_t rss_reta_updated;
>
> diff --git a/drivers/net/intel/ixgbe/ixgbe_flow.c b/drivers/net/intel/ixgbe/ixgbe_flow.c
> index 80d9147acf4..6c2f7d591e4 100644
> --- a/drivers/net/intel/ixgbe/ixgbe_flow.c
> +++ b/drivers/net/intel/ixgbe/ixgbe_flow.c
> @@ -47,7 +47,8 @@
> #include "rte_pmd_ixgbe.h"
>
> #include "../common/flow_check.h"
> -
> +#include "../common/flow_engine.h"
> +#include "ixgbe_flow.h"
>
> #define IXGBE_MIN_N_TUPLE_PRIO 1
> #define IXGBE_MAX_N_TUPLE_PRIO 7
> @@ -93,6 +94,8 @@ struct ixgbe_flow_mem {
> struct rte_flow *flow;
> };
>
> +const struct ci_flow_engine_list ixgbe_flow_engine_list = {0};
> +
> /**
> * Endless loop will never happen with below assumption
> * 1. there is at least one no-void item(END)
> @@ -2832,6 +2835,13 @@ ixgbe_flow_create(struct rte_eth_dev *dev,
> struct ixgbe_rss_conf_ele *rss_filter_ptr;
> struct ixgbe_flow_mem *ixgbe_flow_mem_ptr;
>
> + /* try the new flow engine first */
> + flow = ci_flow_create(&adapter->flow_engine_conf, attr, pattern, actions, error);
> + if (flow != NULL)
> + return flow;
> +
> + /* fall back to legacy flow engines */
> +
> flow = rte_zmalloc("ixgbe_rte_flow", sizeof(struct rte_flow), 0);
> if (!flow) {
> PMD_DRV_LOG(ERR, "failed to allocate memory");
> @@ -3015,6 +3025,7 @@ ixgbe_flow_validate(struct rte_eth_dev *dev,
> const struct rte_flow_action actions[],
> struct rte_flow_error *error)
> {
> + struct ixgbe_adapter *ad = IXGBE_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
> struct rte_eth_ntuple_filter ntuple_filter;
> struct rte_eth_ethertype_filter ethertype_filter;
> struct rte_eth_syn_filter syn_filter;
> @@ -3023,6 +3034,13 @@ ixgbe_flow_validate(struct rte_eth_dev *dev,
> struct ixgbe_rte_flow_rss_conf rss_conf;
> int ret;
>
> + /* try the new flow engine first */
> + ret = ci_flow_validate(&ad->flow_engine_conf, attr, pattern, actions, error);
> + if (ret == 0)
> + return ret;
> +
> + /* fall back to legacy engines */
> +
> /**
> * Special case for flow action type RTE_FLOW_ACTION_TYPE_SECURITY
> */
> @@ -3094,6 +3112,13 @@ ixgbe_flow_destroy(struct rte_eth_dev *dev,
> struct rte_eth_fdir_conf *fdir_conf = IXGBE_DEV_FDIR_CONF(dev);
> struct ixgbe_rss_conf_ele *rss_filter_ptr;
>
> + /* try the new flow engine first */
> + ret = ci_flow_destroy(&adapter->flow_engine_conf, flow, error);
> + if (ret == 0)
> + return 0;
> +
> + /* fall back to legacy engines */
> +
> /* Validate ownership before touching HW/SW state. */
> TAILQ_FOREACH(flow_mem_base, &adapter->flow_list, entries) {
> struct ixgbe_flow_mem *ixgbe_flow_mem_ptr =
> @@ -3197,8 +3222,16 @@ static int
> ixgbe_flow_flush(struct rte_eth_dev *dev,
> struct rte_flow_error *error)
> {
> + struct ixgbe_adapter *ad = IXGBE_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
> int ret = 0;
>
> + /* flush all flows from the new flow engine */
> + ret = ci_flow_flush(&ad->flow_engine_conf, error);
> + if (ret) {
> + PMD_DRV_LOG(ERR, "Failed to flush flow");
> + return ret;
> + }
> +
> ixgbe_clear_all_ntuple_filter(dev);
> ixgbe_clear_all_ethertype_filter(dev);
> ixgbe_clear_syn_filter(dev);
> @@ -3318,6 +3351,25 @@ ixgbe_flow_dev_dump(struct rte_eth_dev *dev,
> struct ixgbe_adapter *ad = IXGBE_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
> struct ixgbe_filter_ele_base *flow_mem_base;
> bool found = false;
> + int ret;
> +
> + /* try the new flow engine first */
> + ret = ci_flow_dump(&ad->flow_engine_conf, flow, file, error);
> +
> + /*
> + * There are multiple possible situations here:
> + *
> + * - User requested to dump all flows
> + * - User requested to dump a specific flow
> + *
> + * For the first case, we keep going because legacy engines might still
> + * have flows we want to dump.
> + *
> + * For the second case, we only stop if the flow we were asked to dump
> + * was found in the new engines, otherwise we keep looking.
> + */
> + if (flow != NULL && ret == 0)
> + return 0;
>
> TAILQ_FOREACH(flow_mem_base, &ad->flow_list, entries) {
> struct ixgbe_flow_mem *ixgbe_flow_mem_ptr =
> diff --git a/drivers/net/intel/ixgbe/ixgbe_flow.h b/drivers/net/intel/ixgbe/ixgbe_flow.h
> new file mode 100644
> index 00000000000..5e68c9886c1
> --- /dev/null
> +++ b/drivers/net/intel/ixgbe/ixgbe_flow.h
> @@ -0,0 +1,12 @@
> +/* SPDX-License-Identifier: BSD-3-Clause
> + * Copyright(c) 2026 Intel Corporation
> + */
> +
> +#ifndef _IXGBE_FLOW_H_
> +#define _IXGBE_FLOW_H_
> +
> +#include "../common/flow_engine.h"
> +
> +extern const struct ci_flow_engine_list ixgbe_flow_engine_list;
> +
> +#endif /* _IXGBE_FLOW_H_ */
--
Regards,
Vladimir
next prev parent reply other threads:[~2026-09-19 16:10 UTC|newest]
Thread overview: 160+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-20 14:00 [PATCH v1 00/21] Building a better rte_flow parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 01/21] ethdev: add flow graph API Anatoly Burakov
2026-08-25 13:55 ` Thomas Monjalon
2026-08-26 8:58 ` Burakov, Anatoly
2026-08-26 9:21 ` Thomas Monjalon
2026-08-26 9:26 ` Bruce Richardson
2026-08-26 10:20 ` Burakov, Anatoly
2026-08-26 14:46 ` Thomas Monjalon
2026-08-27 7:58 ` Burakov, Anatoly
2026-08-27 8:02 ` Thomas Monjalon
2026-08-20 14:00 ` [PATCH v1 02/21] net/intel/common: add flow engines infrastructure Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 03/21] net/intel/common: add utility functions Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 04/21] net/ixgbe: add support for common flow parsing Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 05/21] net/ixgbe: reimplement ethertype parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 06/21] net/ixgbe: reimplement syn parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 07/21] net/ixgbe: reimplement L2 tunnel parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 08/21] net/ixgbe: reimplement ntuple parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 09/21] net/ixgbe: reimplement security parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 10/21] net/ixgbe: reimplement FDIR parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 11/21] net/ixgbe: reimplement hash parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 12/21] net/i40e: add support for common flow parsing Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 13/21] net/i40e: reimplement ethertype parser Anatoly Burakov
2026-08-20 14:00 ` [PATCH v1 14/21] net/i40e: reimplement FDIR parser Anatoly Burakov
2026-08-20 14:01 ` [PATCH v1 15/21] net/i40e: reimplement tunnel QinQ parser Anatoly Burakov
2026-08-20 14:01 ` [PATCH v1 16/21] net/i40e: reimplement VXLAN parser Anatoly Burakov
2026-08-20 14:01 ` [PATCH v1 17/21] net/i40e: reimplement NVGRE parser Anatoly Burakov
2026-08-20 14:01 ` [PATCH v1 18/21] net/i40e: reimplement MPLS parser Anatoly Burakov
2026-08-20 14:01 ` [PATCH v1 19/21] net/i40e: reimplement gtp parser Anatoly Burakov
2026-08-20 14:01 ` [PATCH v1 20/21] net/i40e: reimplement L4 cloud parser Anatoly Burakov
2026-08-20 14:01 ` [PATCH v1 21/21] net/i40e: reimplement hash parser Anatoly Burakov
2026-08-21 15:27 ` [PATCH v1 00/21] Building a better rte_flow parser Stephen Hemminger
2026-09-08 15:20 ` [PATCH v2 00/19] " Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 01/19] ethdev: add flow graph API Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 02/19] net/intel/common: add flow engines infrastructure Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 03/19] net/intel/common: add utility functions Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 04/19] net/ixgbe: add support for common flow parsing Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 05/19] net/ixgbe: reimplement ethertype parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 06/19] net/ixgbe: reimplement syn parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 07/19] net/ixgbe: reimplement L2 tunnel parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 08/19] net/ixgbe: reimplement ntuple parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 09/19] net/ixgbe: reimplement security parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 10/19] net/ixgbe: reimplement FDIR parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 11/19] net/ixgbe: reimplement hash parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 12/19] net/ixgbe: advertise flow keep capability Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 13/19] net/i40e: add support for common flow parsing Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 14/19] net/i40e: reimplement ethertype parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 15/19] net/i40e: refactor FDIR engine infrastructure Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 16/19] net/i40e: reimplement FDIR parser Anatoly Burakov
2026-09-08 15:20 ` [PATCH v2 17/19] net/i40e: reimplement tunnel parsers Anatoly Burakov
2026-09-08 15:21 ` [PATCH v2 18/19] net/i40e: reimplement hash parser Anatoly Burakov
2026-09-08 15:21 ` [PATCH v2 19/19] net/i40e: advertise flow keep capability Anatoly Burakov
2026-09-09 9:08 ` [PATCH v2 00/19] Building a better rte_flow parser Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 " Anatoly Burakov
2026-09-16 12:18 ` [PATCH v3 01/19] ethdev: add flow graph API Anatoly Burakov
2026-09-17 0:21 ` Stephen Hemminger
2026-10-02 11:00 ` Burakov, Anatoly
2026-09-19 16:09 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 02/19] net/intel/common: add flow engines infrastructure Anatoly Burakov
2026-09-17 0:26 ` Stephen Hemminger
2026-09-18 9:17 ` Burakov, Anatoly
2026-09-19 16:09 ` Medvedkin, Vladimir
2026-10-02 11:29 ` Burakov, Anatoly
2026-10-02 13:13 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 03/19] net/intel/common: add utility functions Anatoly Burakov
2026-09-17 0:30 ` Stephen Hemminger
2026-09-18 9:20 ` Burakov, Anatoly
2026-09-19 16:09 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 04/19] net/ixgbe: add support for common flow parsing Anatoly Burakov
2026-09-19 16:09 ` Medvedkin, Vladimir [this message]
2026-09-16 12:18 ` [PATCH v3 05/19] net/ixgbe: reimplement ethertype parser Anatoly Burakov
2026-09-19 16:10 ` Medvedkin, Vladimir
2026-10-02 14:45 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 06/19] net/ixgbe: reimplement syn parser Anatoly Burakov
2026-09-19 16:10 ` Medvedkin, Vladimir
2026-10-05 8:35 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 07/19] net/ixgbe: reimplement L2 tunnel parser Anatoly Burakov
2026-09-19 16:10 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 08/19] net/ixgbe: reimplement ntuple parser Anatoly Burakov
2026-09-19 16:11 ` Medvedkin, Vladimir
2026-10-05 9:45 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 09/19] net/ixgbe: reimplement security parser Anatoly Burakov
2026-09-19 16:11 ` Medvedkin, Vladimir
2026-10-05 12:16 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 10/19] net/ixgbe: reimplement FDIR parser Anatoly Burakov
2026-09-19 16:11 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 11/19] net/ixgbe: reimplement hash parser Anatoly Burakov
2026-09-19 16:11 ` Medvedkin, Vladimir
2026-10-05 12:35 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 12/19] net/ixgbe: advertise flow keep capability Anatoly Burakov
2026-09-19 16:11 ` Medvedkin, Vladimir
2026-10-05 12:54 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 13/19] net/i40e: add support for common flow parsing Anatoly Burakov
2026-09-19 16:13 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 14/19] net/i40e: reimplement ethertype parser Anatoly Burakov
2026-09-19 16:13 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 15/19] net/i40e: refactor FDIR engine infrastructure Anatoly Burakov
2026-09-19 16:13 ` Medvedkin, Vladimir
2026-10-05 14:46 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 16/19] net/i40e: reimplement FDIR parser Anatoly Burakov
2026-09-19 16:13 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 17/19] net/i40e: reimplement tunnel parsers Anatoly Burakov
2026-09-19 16:14 ` Medvedkin, Vladimir
2026-10-05 15:45 ` Burakov, Anatoly
2026-09-16 12:18 ` [PATCH v3 18/19] net/i40e: reimplement hash parser Anatoly Burakov
2026-09-19 16:14 ` Medvedkin, Vladimir
2026-09-16 12:18 ` [PATCH v3 19/19] net/i40e: advertise flow keep capability Anatoly Burakov
2026-09-19 16:16 ` Medvedkin, Vladimir
2026-09-17 0:19 ` [PATCH v3 00/19] Building a better rte_flow parser Stephen Hemminger
2026-10-05 16:37 ` [PATCH v4 00/24] " Anatoly Burakov
2026-10-05 16:37 ` [PATCH v4 01/24] ethdev: add default mask query to flow Anatoly Burakov
2026-10-05 16:37 ` [PATCH v4 02/24] ethdev: add flow graph API Anatoly Burakov
2026-10-05 16:37 ` [PATCH v4 03/24] net/intel/common: add flow engines infrastructure Anatoly Burakov
2026-10-05 16:37 ` [PATCH v4 04/24] net/intel/common: add utility functions Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 05/24] net/ixgbe: add support for common flow parsing Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 06/24] net/ixgbe: make ethertype filter table dynamic Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 07/24] net/ixgbe: reimplement ethertype parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 08/24] net/ixgbe: fix syn filter priority Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 09/24] net/ixgbe: reimplement syn parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 10/24] net/ixgbe: reimplement L2 tunnel parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 11/24] net/ixgbe: fix ntuple filter priority Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 12/24] net/ixgbe: reimplement ntuple parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 13/24] net/ixgbe: reimplement security parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 14/24] net/ixgbe: reimplement FDIR parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 15/24] net/ixgbe: don't embed RSS conf in filter structs Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 16/24] net/ixgbe: reimplement hash parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 17/24] net/ixgbe: advertise flow keep capability Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 18/24] net/i40e: add support for common flow parsing Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 19/24] net/i40e: reimplement ethertype parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 20/24] net/i40e: refactor FDIR engine infrastructure Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 21/24] net/i40e: reimplement FDIR parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 22/24] net/i40e: reimplement tunnel parsers Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 23/24] net/i40e: reimplement hash parser Anatoly Burakov
2026-10-05 16:38 ` [PATCH v4 24/24] net/i40e: advertise flow keep capability Anatoly Burakov
2026-10-07 10:49 ` [PATCH v5 00/25] Building a better rte_flow parser Anatoly Burakov
2026-10-07 10:49 ` [PATCH v5 01/25] ethdev: add default mask query to flow Anatoly Burakov
2026-10-07 14:40 ` Thomas Monjalon
2026-10-07 10:49 ` [PATCH v5 02/25] ethdev: add flow graph API Anatoly Burakov
2026-10-07 10:49 ` [PATCH v5 03/25] net/intel/common: add flow engines infrastructure Anatoly Burakov
2026-10-07 10:49 ` [PATCH v5 04/25] net/intel/common: add utility functions Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 05/25] net/ixgbe: add support for common flow parsing Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 06/25] net/ixgbe: make ethertype filter table dynamic Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 07/25] net/ixgbe: reimplement ethertype parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 08/25] net/ixgbe: fix syn filter priority Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 09/25] net/ixgbe: reimplement syn parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 10/25] net/ixgbe: reimplement L2 tunnel parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 11/25] net/ixgbe: fix ntuple filter priority Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 12/25] net/ixgbe: fix protocol-only ntuple parsing Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 13/25] net/ixgbe: reimplement ntuple parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 14/25] net/ixgbe: reimplement security parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 15/25] net/ixgbe: reimplement FDIR parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 16/25] net/ixgbe: don't embed RSS conf in filter structs Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 17/25] net/ixgbe: reimplement hash parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 18/25] net/ixgbe: advertise flow keep capability Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 19/25] net/i40e: add support for common flow parsing Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 20/25] net/i40e: reimplement ethertype parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 21/25] net/i40e: refactor FDIR engine infrastructure Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 22/25] net/i40e: reimplement FDIR parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 23/25] net/i40e: reimplement tunnel parsers Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 24/25] net/i40e: reimplement hash parser Anatoly Burakov
2026-10-07 10:50 ` [PATCH v5 25/25] net/i40e: advertise flow keep capability Anatoly Burakov
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=d5816959-01bf-4204-ade8-45eb9a0790df@intel.com \
--to=vladimir.medvedkin@intel.com \
--cc=anatoly.burakov@intel.com \
--cc=dev@dpdk.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.