DPDK patches and discussions
 help / color / mirror / Atom feed
From: Andrew Rybchenko <arybchenko@solarflare.com>
To: Ferruh Yigit <ferruh.yigit@intel.com>,
	Thomas Monjalon <thomas@monjalon.net>
Cc: <dev@dpdk.org>, Chas Williams <chas3@att.com>,
	Hemant Agrawal <hemant.agrawal@nxp.com>,
	Shreyansh Jain <shreyansh.jain@nxp.com>,
	Wenzhuo Lu <wenzhuo.lu@intel.com>,
	Matan Azrad <matan@mellanox.com>,
	Shahaf Shuler <shahafs@mellanox.com>,
	Rasesh Mody <rmody@marvell.com>,
	Shahed Shaikh <shshaikh@marvell.com>,
	Tomasz Duszynski <tdu@semihalf.com>,
	Liron Himi <lironh@marvell.com>,
	Alan Winkowski <walan@marvell.com>,
	Jasvinder Singh <jasvinder.singh@intel.com>,
	Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Subject: Re: [dpdk-dev] ethdev flow director/filtering/steering API
Date: Tue, 16 Apr 2019 12:33:29 +0300	[thread overview]
Message-ID: <c6c1a458-a2d1-b02d-764e-1af876f493d7@solarflare.com> (raw)
Message-ID: <20190416093329.HTl0orWQGGBMv6HknPLTfzaoH2ygtt1ZROzFv8GkwMA@z> (raw)
In-Reply-To: <75db6e78-275e-80fb-9a57-305344a03b38@intel.com>

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.
> I think having both "Flow control" and "Flow API" is confusing, it looks to me
> "Flow control" is name of the feature, "Flow API" is implementation detail and
> other implementation detail is "Flow director"
>
>  From the consumers point of view, to they need to know if the flow control
> implemented using "Flow API"? This information looks like more driver internal.

Flow control and flow API are absolutely different features.
Flow control is about Ethernet pauses etc.
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.

> Keeping only "Flow control" in feature list, and remove "Flow API" & "Flow
> director", and set "Flow control" as support both with implementations makes
> sense to me. What do you think?
>
>>> If there are still some, deadlines should help them to be converted :)
>>> If some help is needed, please ask.
>>>
>>> Anyway, after more than 2 years of notice, I think it is fair to mark
>>> the legacy API as deprecated in 19.05 release.
>> I agree. I think it is a good idea.
>>
>> Andrew.


  parent reply	other threads:[~2019-04-16  9:33 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-11  7:49 Thomas Monjalon
2019-04-11  7:49 ` Thomas Monjalon
2019-04-11  8:43 ` Andrew Rybchenko
2019-04-11  8:43   ` Andrew Rybchenko
2019-04-12 17:57   ` Ferruh Yigit
2019-04-12 17:57     ` Ferruh Yigit
2019-04-16  9:33     ` Andrew Rybchenko [this message]
2019-04-16  9:33       ` Andrew Rybchenko
2019-04-16  9:51       ` Ferruh Yigit
2019-04-16  9:51         ` Ferruh Yigit
2019-04-16 10:10         ` Thomas Monjalon
2019-04-16 10:10           ` Thomas Monjalon

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=c6c1a458-a2d1-b02d-764e-1af876f493d7@solarflare.com \
    --to=arybchenko@solarflare.com \
    --cc=chas3@att.com \
    --cc=cristian.dumitrescu@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=jasvinder.singh@intel.com \
    --cc=lironh@marvell.com \
    --cc=matan@mellanox.com \
    --cc=rmody@marvell.com \
    --cc=shahafs@mellanox.com \
    --cc=shreyansh.jain@nxp.com \
    --cc=shshaikh@marvell.com \
    --cc=tdu@semihalf.com \
    --cc=thomas@monjalon.net \
    --cc=walan@marvell.com \
    --cc=wenzhuo.lu@intel.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).