[v2,2/2] doc: remove flow API from the feature list
Checks
Commit Message
"Flow API" is a method/API to implement various filtering features, on
its own it doesn't give much context on what features are provided. And
it is not really a feature, so doesn't fit into feature table.
Also since other filtering related APIs, 'filter_ctrl', has been
deprecated, flow API is the only supported way in the DPDK to implement
filtering options, if related filter options announced by PMDs, listing
"Flow API" as implemented is redundant information.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
Cc: Thomas Monjalon <thomas@monjalon.net>
Cc: Andrew Rybchenko <arybchenko@solarflare.com>
Cc: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Cc: Ajit Khaparde <ajit.khaparde@broadcom.com>
Cc: Jerin Jacob <jerinj@marvell.com>
v2:
* Removed feature from all .ini files
* Removed some references from nic guides
---
doc/guides/nics/cxgbe.rst | 2 +-
doc/guides/nics/enic.rst | 6 +++---
doc/guides/nics/features.rst | 11 -----------
doc/guides/nics/features/bnxt.ini | 1 -
doc/guides/nics/features/cxgbe.ini | 1 -
doc/guides/nics/features/default.ini | 1 -
doc/guides/nics/features/enic.ini | 1 -
doc/guides/nics/features/failsafe.ini | 1 -
doc/guides/nics/features/hinic.ini | 1 -
doc/guides/nics/features/hns3.ini | 1 -
doc/guides/nics/features/hns3_vf.ini | 1 -
doc/guides/nics/features/i40e.ini | 1 -
doc/guides/nics/features/iavf.ini | 1 -
doc/guides/nics/features/ice.ini | 1 -
doc/guides/nics/features/igb.ini | 1 -
doc/guides/nics/features/ipn3ke.ini | 1 -
doc/guides/nics/features/ixgbe.ini | 1 -
doc/guides/nics/features/mlx4.ini | 1 -
doc/guides/nics/features/mlx5.ini | 1 -
doc/guides/nics/features/octeontx2.ini | 1 -
doc/guides/nics/features/octeontx2_vec.ini | 1 -
doc/guides/nics/features/octeontx2_vf.ini | 1 -
doc/guides/nics/features/qede.ini | 1 -
doc/guides/nics/features/sfc_efx.ini | 1 -
doc/guides/nics/features/tap.ini | 1 -
doc/guides/nics/hinic.rst | 2 +-
doc/guides/nics/mlx5.rst | 2 +-
doc/guides/nics/mvpp2.rst | 6 +++---
doc/guides/nics/sfc_efx.rst | 2 +-
doc/guides/nics/tap.rst | 4 ++--
30 files changed, 12 insertions(+), 45 deletions(-)
Comments
On Fri, Apr 10, 2020 at 3:00 PM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>
> "Flow API" is a method/API to implement various filtering features, on
> its own it doesn't give much context on what features are provided. And
> it is not really a feature, so doesn't fit into feature table.
>
> Also since other filtering related APIs, 'filter_ctrl', has been
> deprecated, flow API is the only supported way in the DPDK to implement
> filtering options, if related filter options announced by PMDs, listing
> "Flow API" as implemented is redundant information.
>
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> ---
> Cc: Thomas Monjalon <thomas@monjalon.net>
> Cc: Andrew Rybchenko <arybchenko@solarflare.com>
> Cc: Adrien Mazarguil <adrien.mazarguil@6wind.com>
> Cc: Ajit Khaparde <ajit.khaparde@broadcom.com>
> Cc: Jerin Jacob <jerinj@marvell.com>
>
> v2:
> * Removed feature from all .ini files
> * Removed some references from nic guides
> ---
> doc/guides/nics/cxgbe.rst | 2 +-
> doc/guides/nics/enic.rst | 6 +++---
> doc/guides/nics/features.rst | 11 -----------
> doc/guides/nics/features/bnxt.ini | 1 -
> doc/guides/nics/features/cxgbe.ini | 1 -
> doc/guides/nics/features/default.ini | 1 -
> doc/guides/nics/features/enic.ini | 1 -
> doc/guides/nics/features/failsafe.ini | 1 -
> doc/guides/nics/features/hinic.ini | 1 -
> doc/guides/nics/features/hns3.ini | 1 -
> doc/guides/nics/features/hns3_vf.ini | 1 -
> doc/guides/nics/features/i40e.ini | 1 -
> doc/guides/nics/features/iavf.ini | 1 -
> doc/guides/nics/features/ice.ini | 1 -
> doc/guides/nics/features/igb.ini | 1 -
> doc/guides/nics/features/ipn3ke.ini | 1 -
> doc/guides/nics/features/ixgbe.ini | 1 -
> doc/guides/nics/features/mlx4.ini | 1 -
> doc/guides/nics/features/mlx5.ini | 1 -
> doc/guides/nics/features/octeontx2.ini | 1 -
> doc/guides/nics/features/octeontx2_vec.ini | 1 -
> doc/guides/nics/features/octeontx2_vf.ini | 1 -
> doc/guides/nics/features/qede.ini | 1 -
> doc/guides/nics/features/sfc_efx.ini | 1 -
> doc/guides/nics/features/tap.ini | 1 -
> doc/guides/nics/hinic.rst | 2 +-
> doc/guides/nics/mlx5.rst | 2 +-
> doc/guides/nics/mvpp2.rst | 6 +++---
> doc/guides/nics/sfc_efx.rst | 2 +-
> doc/guides/nics/tap.rst | 4 ++--
Since you are changing "Flow API" to "Packet filtering via Flow API"
to all the .rst file,
Could update doc/guides/nics/octeontx2.rst, From "Generic flow API" to
"Packet filtering via Flow API"
10/04/2020 14:10, Jerin Jacob:
> On Fri, Apr 10, 2020 at 3:00 PM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
> >
> > "Flow API" is a method/API to implement various filtering features, on
> > its own it doesn't give much context on what features are provided. And
> > it is not really a feature, so doesn't fit into feature table.
> >
> > Also since other filtering related APIs, 'filter_ctrl', has been
> > deprecated, flow API is the only supported way in the DPDK to implement
> > filtering options, if related filter options announced by PMDs, listing
> > "Flow API" as implemented is redundant information.
> >
> > Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
>
> Since you are changing "Flow API" to "Packet filtering via Flow API"
> to all the .rst file,
> Could update doc/guides/nics/octeontx2.rst, From "Generic flow API" to
> "Packet filtering via Flow API"
Wait
rte_flow is not only about filtering.
rte_flow can configure any flow-related offload,
including encapsulation or header update.
On Fri, Apr 10, 2020 at 6:04 PM Thomas Monjalon <thomas@monjalon.net> wrote:
>
> 10/04/2020 14:10, Jerin Jacob:
> > On Fri, Apr 10, 2020 at 3:00 PM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
> > >
> > > "Flow API" is a method/API to implement various filtering features, on
> > > its own it doesn't give much context on what features are provided. And
> > > it is not really a feature, so doesn't fit into feature table.
> > >
> > > Also since other filtering related APIs, 'filter_ctrl', has been
> > > deprecated, flow API is the only supported way in the DPDK to implement
> > > filtering options, if related filter options announced by PMDs, listing
> > > "Flow API" as implemented is redundant information.
> > >
> > > Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> >
> > Since you are changing "Flow API" to "Packet filtering via Flow API"
> > to all the .rst file,
> > Could update doc/guides/nics/octeontx2.rst, From "Generic flow API" to
> > "Packet filtering via Flow API"
>
> Wait
> rte_flow is not only about filtering.
> rte_flow can configure any flow-related offload,
> including encapsulation or header update.
Agree. Then it better to change to "Generic flow API" in all the docs.
>
>
@@ -30,7 +30,7 @@ CXGBE and CXGBEVF PMD has support for:
- All multicast mode
- Port hardware statistics
- Jumbo frames
-- Flow API - Support for both Wildcard (LE-TCAM) and Exact (HASH) match filters.
+- Packet filtering - Support for both Wildcard (LE-TCAM) and Exact (HASH) match filters.
Limitations
-----------
@@ -208,8 +208,8 @@ the use of SR-IOV.
.. _enic-generic-flow-api:
-Generic Flow API support
-------------------------
+Generic packet filtering support
+--------------------------------
Generic Flow API (also called "rte_flow" API) is supported. More advanced
capabilities are available when "Advanced Filtering" is enabled on the adapter.
@@ -524,7 +524,7 @@ Supported features
- Scattered Rx
- MTU update
- SR-IOV on UCS managed servers connected to Fabric Interconnects
-- Flow API
+- Packet filtering via Flow API
- Overlay offload
- Rx/Tx checksum offloads for VXLAN, NVGRE, GENEVE
@@ -453,17 +453,6 @@ Supports configuring link flow control.
``rte_eth_dev_priority_flow_ctrl_set()``.
-.. _nic_features_flow_api:
-
-Flow API
---------
-
-Supports the DPDK Flow API for generic filtering.
-
-* **[implements] eth_dev_ops**: ``filter_ctrl:RTE_ETH_FILTER_GENERIC``.
-* **[implements] rte_flow_ops**: ``All``.
-
-
.. _nic_features_rate_limitation:
Rate limitation
@@ -28,7 +28,6 @@ Ethertype filter = Y
N-tuple filter = Y
Flow director = Y
Flow control = Y
-Flow API = Y
CRC offload = Y
L3 checksum offload = Y
L4 checksum offload = Y
@@ -16,7 +16,6 @@ Allmulticast mode = Y
RSS hash = Y
RSS key update = Y
Flow control = Y
-Flow API = Y
CRC offload = Y
VLAN offload = Y
L3 checksum offload = Y
@@ -45,7 +45,6 @@ Flexible filter =
Hash filter =
Flow director =
Flow control =
-Flow API =
Rate limitation =
Traffic mirroring =
Inline crypto =
@@ -25,7 +25,6 @@ SR-IOV = Y
CRC offload = Y
VLAN offload = Y
Flow director = Y
-Flow API = Y
L3 checksum offload = Y
L4 checksum offload = Y
Inner L3 checksum = Y
@@ -19,7 +19,6 @@ Unicast MAC filter = Y
Multicast MAC filter = Y
VLAN filter = Y
Flow control = Y
-Flow API = Y
Packet type parsing = Y
Basic stats = Y
Stats per queue = Y
@@ -32,7 +32,6 @@ Inner L4 checksum = Y
Basic stats = Y
Extended stats = Y
Stats per queue = Y
-Flow API = Y
Flow control = Y
FW version = Y
Multiprocess aware = Y
@@ -19,7 +19,6 @@ RSS reta update = Y
DCB = Y
VLAN filter = Y
Flow control = Y
-Flow API = Y
CRC offload = Y
VLAN offload = Y
L3 checksum offload = Y
@@ -17,7 +17,6 @@ RSS hash = Y
RSS key update = Y
RSS reta update = Y
VLAN filter = Y
-Flow API = Y
CRC offload = Y
VLAN offload = Y
L3 checksum offload = Y
@@ -28,7 +28,6 @@ SR-IOV = Y
DCB = Y
VLAN filter = Y
Flow control = Y
-Flow API = Y
Traffic mirroring = Y
CRC offload = Y
VLAN offload = Y
@@ -19,7 +19,6 @@ Multicast MAC filter = Y
RSS hash = Y
RSS key update = Y
RSS reta update = Y
-Flow API = Y
VLAN filter = Y
CRC offload = Y
VLAN offload = Y
@@ -22,7 +22,6 @@ Multicast MAC filter = Y
RSS hash = Y
RSS key update = Y
RSS reta update = Y
-Flow API = Y
VLAN filter = Y
CRC offload = Y
VLAN offload = Y
@@ -27,7 +27,6 @@ N-tuple filter = Y
SYN filter = Y
Flexible filter = Y
Flow control = Y
-Flow API = Y
CRC offload = Y
VLAN offload = Y
QinQ offload = Y
@@ -30,7 +30,6 @@ Tunnel filter = Y
Hash filter = Y
Flow director = Y
Flow control = Y
-Flow API = Y
Traffic mirroring = Y
CRC offload = Y
VLAN offload = Y
@@ -30,7 +30,6 @@ SYN filter = Y
Tunnel filter = Y
Flow director = Y
Flow control = Y
-Flow API = Y
Rate limitation = Y
Traffic mirroring = Y
Inline crypto = Y
@@ -22,7 +22,6 @@ RSS hash = Y
SR-IOV = Y
VLAN filter = Y
Flow control = Y
-Flow API = Y
CRC offload = Y
L3 checksum offload = Y
L4 checksum offload = Y
@@ -28,7 +28,6 @@ SR-IOV = Y
VLAN filter = Y
Flow director = Y
Flow control = Y
-Flow API = Y
CRC offload = Y
VLAN offload = Y
L3 checksum offload = Y
@@ -30,7 +30,6 @@ Inner RSS = Y
Inline protocol = Y
VLAN filter = Y
Flow control = Y
-Flow API = Y
Rate limitation = Y
Jumbo frame = Y
Scattered Rx = Y
@@ -27,7 +27,6 @@ RSS reta update = Y
Inner RSS = Y
VLAN filter = Y
Flow control = Y
-Flow API = Y
Rate limitation = Y
Jumbo frame = Y
VLAN offload = Y
@@ -23,7 +23,6 @@ RSS reta update = Y
Inner RSS = Y
Inline protocol = Y
VLAN filter = Y
-Flow API = Y
Rate limitation = Y
Jumbo frame = Y
Scattered Rx = Y
@@ -23,7 +23,6 @@ N-tuple filter = Y
Tunnel filter = Y
Flow director = Y
Flow control = Y
-Flow API = Y
CRC offload = Y
VLAN offload = Y
L3 checksum offload = Y
@@ -24,7 +24,6 @@ RSS key update = Y
RSS reta update = Y
SR-IOV = Y
Flow control = Y
-Flow API = Y
VLAN offload = P
L3 checksum offload = Y
L4 checksum offload = Y
@@ -11,7 +11,6 @@ Rx interrupt = Y
Promiscuous mode = Y
Allmulticast mode = Y
Basic stats = Y
-Flow API = Y
L3 checksum offload = Y
L4 checksum offload = Y
MTU update = Y
@@ -30,7 +30,7 @@ Features
- MTU update
- Unicast MAC filter
- Multicast MAC filter
-- Flow API
+- Packet filtering via Flow API
- Set Link down or up
- FW version
- LRO
@@ -82,7 +82,7 @@ Features
- Hardware checksum offloads.
- Flow director (RTE_FDIR_MODE_PERFECT, RTE_FDIR_MODE_PERFECT_MAC_VLAN and
RTE_ETH_FDIR_REJECT).
-- Flow API, including :ref:`flow_isolated_mode`.
+- Packet filtering via Flow API, including :ref:`flow_isolated_mode`.
- Multiple process.
- KVM and VMware ESX SR-IOV modes are supported.
- RSS hash result is supported.
@@ -47,7 +47,7 @@ Features of the MVPP2 PMD are:
- RX flow control
- Scattered TX frames
- :ref:`QoS <qossupport>`
-- :ref:`Flow API <flowapi>`
+- :ref:`Packet filtering via Flow API <flowapi>`
- :ref:`Traffic metering and policing <mtrapi>`
- :ref:`Traffic Management API <tmapi>`
@@ -378,8 +378,8 @@ Usage example
.. _flowapi:
-Flow API
---------
+Packet filtering
+----------------
PPv2 offers packet classification capabilities via classifier engine which
can be configured via generic flow API offered by DPDK.
@@ -67,7 +67,7 @@ SFC EFX PMD has support for:
- Transmit VLAN insertion (if running firmware variant supports it)
-- Flow API
+- Packet filtering via Flow API
- Loopback
@@ -94,8 +94,8 @@ where X stands for unique id, example::
Unlike TAP PMD, TUN PMD does not support user arguments as ``MAC`` or ``remote`` user
options. Default interface name is ``dtunX``, where X stands for unique id.
-Flow API support
-----------------
+Packet filtering support
+------------------------
The tap PMD supports major flow API pattern items and actions, when running on
linux kernels above 4.2 ("Flower" classifier required).