numam-dpdk/examples
Adrien Mazarguil ac8d22de23 ethdev: flatten RSS configuration in flow API
Since its inception, the rte_flow RSS action has been relying in part on
external struct rte_eth_rss_conf for compatibility with the legacy RSS API.
This structure lacks parameters such as the hash algorithm to use, and more
recently, a method to tell which layer RSS should be performed on [1].

Given struct rte_eth_rss_conf will never be flexible enough to represent a
complete RSS configuration (e.g. RETA table), this patch supersedes it by
extending the rte_flow RSS action directly.

A subsequent patch will add a field to use a non-default RSS hash
algorithm. To that end, a field named "types" replaces the field formerly
known as "rss_hf" and standing for "RSS hash functions" as it was
confusing. Actual RSS hash function types are defined by enum
rte_eth_hash_function.

This patch updates all PMDs and example applications accordingly.

It breaks ABI compatibility for the following public functions:

- rte_flow_copy()
- rte_flow_create()
- rte_flow_query()
- rte_flow_validate()

[1] commit 676b605182 ("doc: announce ethdev API change for RSS
    configuration")

Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
2018-04-27 18:00:53 +01:00
..
bbdev_app fix ethdev port id validation 2018-04-18 00:37:05 +02:00
bond ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
cmdline examples/cmdline: convert to SPDX license tag 2018-02-13 23:30:52 +01:00
distributor ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
ethtool examples/ethtool: add a new command module-eeprom 2018-04-27 18:00:53 +01:00
eventdev_pipeline ethdev: deprecate port count function 2018-04-18 00:48:41 +02:00
exception_path ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
flow_classify ethdev: deprecate port count function 2018-04-18 00:48:41 +02:00
flow_filtering ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
helloworld build: replace license text with SPDX tag 2018-01-30 21:58:59 +01:00
ip_fragmentation ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
ip_pipeline fix ethdev port id validation 2018-04-18 00:37:05 +02:00
ip_reassembly ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
ipsec-secgw ethdev: flatten RSS configuration in flow API 2018-04-27 18:00:53 +01:00
ipv4_multicast ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
kni ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l2fwd ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l2fwd-cat ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l2fwd-crypto ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l2fwd-jobstats ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l2fwd-keepalive ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l3fwd ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l3fwd-acl ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l3fwd-power ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
l3fwd-vf ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
link_status_interrupt ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
load_balancer convert snprintf to strlcpy 2018-04-04 17:33:08 +02:00
multi_process ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
netmap_compat ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
packet_ordering ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
performance-thread ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
ptpclient ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
qos_meter examples: fix build with meson 2018-03-13 23:57:33 +01:00
qos_sched ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
quota_watermark ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
rxtx_callbacks ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
server_node_efd ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
service_cores service: remove experimental tags 2018-04-25 14:57:37 +02:00
skeleton ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
tep_termination examples: use new API to create control threads 2018-04-25 00:51:31 +02:00
timer build: replace license text with SPDX tag 2018-01-30 21:58:59 +01:00
vhost examples: use new API to create control threads 2018-04-25 00:51:31 +02:00
vhost_crypto examples/vhost_crypto: add sample application 2018-04-14 00:43:30 +02:00
vhost_scsi examples/vhost_scsi: move to safe GPA translation API 2018-04-23 17:12:13 +02:00
vm_power_manager ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
vmdq ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
vmdq_dcb ethdev: remove experimental flag of ports enumeration 2018-04-27 18:00:24 +01:00
Makefile examples/vhost_crypto: add sample application 2018-04-14 00:43:30 +02:00
meson.build examples: improve error report for missing meson deps 2018-04-17 16:09:43 +02:00