From 04cf171cb35aedf7721de7e30fcd0f63fd8b883b Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Wed, 14 Sep 2022 23:30:04 +0200 Subject: [PATCH] doc: relate bifurcated driver and flow isolated mode The relation between the isolated mode in ethdev flow API and bifurcated driver behaviour was not clearly explained. It is made clear in the how-to guide that isolated mode is required for flow bifurcation to the kernel. On the other side, the impact of the isolated mode on a bifurcated driver is made more explicit. Signed-off-by: Thomas Monjalon Reviewed-by: Dariusz Sosnowski Acked-by: Ori Kam --- doc/guides/howto/flow_bifurcation.rst | 3 ++- lib/ethdev/rte_flow.h | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/doc/guides/howto/flow_bifurcation.rst b/doc/guides/howto/flow_bifurcation.rst index e6549ed99c..838eb2a4cc 100644 --- a/doc/guides/howto/flow_bifurcation.rst +++ b/doc/guides/howto/flow_bifurcation.rst @@ -55,7 +55,8 @@ The full device is already shared with the kernel driver. The DPDK application can setup some flow steering rules, and let the rest go to the kernel stack. In order to define the filters strictly with flow rules, -the :ref:`flow_isolated_mode` can be configured. +the :ref:`flow_isolated_mode` must be configured, +so there is no default rule routing traffic to userspace. There is no specific instructions to follow. The recommended reading is the :doc:`../prog_guide/rte_flow` guide. diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h index 7e5b1442d3..cddbe74c33 100644 --- a/lib/ethdev/rte_flow.h +++ b/lib/ethdev/rte_flow.h @@ -4121,6 +4121,10 @@ rte_flow_query(uint16_t port_id, * * Isolated mode guarantees that all ingress traffic comes from defined flow * rules only (current and future). + * When enabled with a bifurcated driver, + * non-matched packets are routed to the kernel driver interface. + * When disabled (the default), + * there may be some default rules routing traffic to the DPDK port. * * Besides making ingress more deterministic, it allows PMDs to safely reuse * resources otherwise assigned to handle the remaining traffic, such as