[dpdk-dev] ethdev flow director/filtering/steering API

Thomas Monjalon thomas at monjalon.net
Tue Apr 16 12:10:03 CEST 2019


16/04/2019 11:51, Ferruh Yigit:
> On 4/16/2019 10:33 AM, Andrew Rybchenko wrote:
> > On 4/12/19 8:57 PM, Ferruh Yigit wrote:
> >> On 4/11/2019 9:43 AM, Andrew Rybchenko wrote:
> >>> On 4/11/19 10:49 AM, Thomas Monjalon wrote:
> >>>> About the features called flow director, filtering or flow steering,
> >>>> we have some overlap in our API that we should clean.
> >>>> It is especially important when considering to freeze the API for stability.
> >>>>
> >>>> Please read this deprecation notice from December 2016:
> >>>>
> >>>> * ethdev: the legacy filter API, including
> >>>>    ``rte_eth_dev_filter_supported()``, ``rte_eth_dev_filter_ctrl()`` as well
> >>>>    as filter types MACVLAN, ETHERTYPE, FLEXIBLE, SYN, NTUPLE, TUNNEL, FDIR,
> >>>>    HASH and L2_TUNNEL, is superseded by the generic flow API (rte_flow) in
> >>>>    PMDs that implement the latter.
> >>>>    Target release for removal of the legacy API will be defined once most
> >>>>    PMDs have switched to rte_flow.
> >>>>
> >>>> We must mark the eth_dev_filter API as deprecated and decide about
> >>>> a date to remove it.
> >>>>
> >>>> Which PMD is implementing this API and not rte_flow?
> >>> In accordance with feature matrix is it i40e_vec, ixgbe_vec and qede, but
> >>> I think it is just a mistake in documentation.
> >>>
> >>> Flow API support tick is missing for many PMDs which actually implement
> >>> (as far as I can see): bonding, dppa2, e100, mlx4, qede, mvpp2, softnic.
> >>> I've added maintainers to CC.
> 
> > Flow API is about filtering and actions.
> > Flow director is mainly filtering approach and I would agree to classify 
> > it as
> > implementation detail. I'd consider to move it under flow API umbrella
> > finally, but I don't know enough details on it.
> 
> I was trying to say "flow api" is not target, target is "filtering" support,
> "flow api" it method to have it, perhaps can merge "flow API" & "Flow director"
> under "flow filtering" ...

They are 2 different API for the same purpose.
The former is announced to be deprecated for more than 2 years.
I'll send a patch to mark it clearly as deprecated.




More information about the dev mailing list