5d9f23fb8f
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> |
||
---|---|---|
.. | ||
ethdev_private.c | ||
ethdev_private.h | ||
ethdev_profile.c | ||
ethdev_profile.h | ||
ethdev_trace_points.c | ||
meson.build | ||
rte_class_eth.c | ||
rte_dev_info.h | ||
rte_eth_ctrl.h | ||
rte_ethdev_core.h | ||
rte_ethdev_driver.h | ||
rte_ethdev_pci.h | ||
rte_ethdev_trace_fp.h | ||
rte_ethdev_trace.h | ||
rte_ethdev_vdev.h | ||
rte_ethdev_version.map | ||
rte_ethdev.c | ||
rte_ethdev.h | ||
rte_flow_driver.h | ||
rte_flow.c | ||
rte_flow.h | ||
rte_mtr_driver.h | ||
rte_mtr.c | ||
rte_mtr.h | ||
rte_tm_driver.h | ||
rte_tm.c | ||
rte_tm.h |