numam-dpdk/lib
Bing Zhao 5d9f23fb8f ethdev: add new attributes to hairpin config
To support two ports hairpin mode and keep the backward compatibility
for the application, two new attribute members of the hairpin queue
configuration structure will be added.

`tx_explicit` means if the application itself will insert the Tx part
flow rules. If not set, PMD will insert the rules implicitly.
`manual_bind` means if the hairpin Tx queue and peer Rx queue will be
bound automatically during the device start stage.

Different Tx and Rx queue pairs could have different values, but it
is highly recommended that all paired queues between one egress and
its peer ingress ports have the same values, in order not to bring
any chaos to the system. The actual support of these attribute
parameters will be checked and decided by the PMD drivers.

In the single port hairpin, if both are zero without any setting, the
behavior will remain the same as before. It means that no bind API
needs to be called and no Tx flow rules need to be inserted manually
by the application.

Signed-off-by: Bing Zhao <bingz@nvidia.com>
Acked-by: Ori Kam <orika@nvidia.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2020-10-16 19:48:19 +02:00
..
librte_acl acl: fix build with gcc 5.4.0 2020-10-15 14:31:46 +02:00
librte_bbdev bbdev: use C11 atomics for device processing counter 2020-09-25 15:37:55 +02:00
librte_bitratestats build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_bpf bpf: promote library as stable 2020-09-16 18:52:55 +02:00
librte_cfgfile build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_cmdline cmdline: support Windows 2020-10-15 00:39:10 +02:00
librte_compressdev build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_cryptodev cryptodev: remove algo lists end 2020-10-14 22:22:06 +02:00
librte_distributor build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_eal eal/x86: fix memcpy AVX-512 enablement 2020-10-17 12:22:01 +02:00
librte_efd build: remove deprecated cpuflag macros 2020-09-25 11:13:57 +02:00
librte_ethdev ethdev: add new attributes to hairpin config 2020-10-16 19:48:19 +02:00
librte_eventdev eventdev: add PCI probe named convenience function 2020-10-15 23:25:35 +02:00
librte_fib build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_flow_classify build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_graph build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_gro gro: support VXLAN UDP/IPv4 2020-10-06 21:51:03 +02:00
librte_gso gso: fix payload unit size for UDP 2020-09-18 18:55:12 +02:00
librte_hash build: remove deprecated cpuflag macros 2020-09-25 11:13:57 +02:00
librte_ip_frag ethdev: add IPv6 fragment extension header item 2020-10-16 19:48:18 +02:00
librte_ipsec cryptodev: change crypto symmetric vector structure 2020-10-14 22:22:06 +02:00
librte_jobstats build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_kni mem: remove physical address aliases 2020-09-19 00:25:35 +02:00
librte_kvargs build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_latencystats build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_lpm config: remap flags used for Arm platforms 2020-10-13 16:35:48 +02:00
librte_mbuf mbuf: extend meaning of QinQ stripped bit 2020-10-15 23:04:55 +02:00
librte_member build: remove deprecated cpuflag macros 2020-09-25 11:13:57 +02:00
librte_mempool mempool: dump handler index and name 2020-10-06 23:44:15 +02:00
librte_meter meter: remove experimental alias 2020-10-05 11:11:59 +02:00
librte_metrics build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_net ethdev: add IPv6 fragment extension header item 2020-10-16 19:48:18 +02:00
librte_node build: remove deprecated cpuflag macros 2020-09-25 11:13:57 +02:00
librte_pci net/qede: define PCI config space specific osals 2020-09-30 19:19:11 +02:00
librte_pdump build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_pipeline pipeline: fix instruction config free 2020-10-08 15:09:28 +02:00
librte_port port: remove useless assignment 2020-10-06 23:39:34 +02:00
librte_power power: fix current frequency index 2020-10-07 14:51:52 +02:00
librte_rawdev telemetry: fix passing full params string to command 2020-10-06 22:54:58 +02:00
librte_rcu rcu: promote library as stable 2020-10-06 10:31:13 +02:00
librte_regexdev build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_reorder build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_rib build: remove makefiles 2020-09-08 00:09:50 +02:00
librte_ring config: remove default configs used with make 2020-09-08 00:11:30 +02:00
librte_sched sched: remove redundant subport parameters 2020-10-15 02:14:28 +02:00
librte_security security: modify PDCP xform to support SDAP 2020-10-14 22:24:41 +02:00
librte_stack stack: promote library as stable 2020-10-05 11:56:17 +02:00
librte_table table: fix hash for 32-bit 2020-10-14 14:42:29 +02:00
librte_telemetry telemetry: support array values in data object 2020-10-06 22:55:00 +02:00
librte_timer timer: add limitation note for sync stop and reset 2020-10-08 09:43:57 +02:00
librte_vhost vhost: fix async unregister deadlock 2020-10-16 19:48:19 +02:00
meson.build cmdline: support Windows 2020-10-15 00:39:10 +02:00