On Wed, Jul 21, 2021 at 11:16 AM Stephen Hemminger wrote: > > On Wed, 21 Jul 2021 17:58:14 +0200 > Martin Havlik wrote: > > > The ability to create RTE flow rules, depending on > > port status, can and does differ between PMDs. > > Now the doc reflects that. > > > > Signed-off-by: Martin Havlik > > --- > > doc/guides/prog_guide/rte_flow.rst | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst > > index 2b42d5ec8c..2988e3328a 100644 > > --- a/doc/guides/prog_guide/rte_flow.rst > > +++ b/doc/guides/prog_guide/rte_flow.rst > > @@ -3097,6 +3097,10 @@ actually created and a handle returned. > > const struct rte_flow_action *actions[], > > struct rte_flow_error *error); > > > > +The ability to create a flow rule may depend on the status (started/stopped) > > +of the port for which the rule is being created. This behaviour is > > +PMD specific. Seek relevant PMD documentation for details. > > Any PMD specific behavior in DPDK is an anathema to application developers > and should be considered a design flaw! But it is better to be clear about the behavior. Drivers and their underlying devices may need certain resources to be initialized before flows could be created. There may be some drivers who do not need that. Specifying ports to be started would cover both the cases. Maybe then we can say that "some drivers may _not_ need the port to be started. Check PMD specific documentation".