dp-packet batches can hold only a fixed count of packets since their introduction.
This limitation makes it impossible to split packets/emit more than the batch size during the processing of one batch. This series proposes to dynamically grow those batches when a NETDEV_MAX_BURST threshold is reached. -- David Marchand Changes since RFC v1: - rebased, - with AVX512 removal, patch 2 was dropped and some other patches got simpler, - add some helper for ip fragments, - split patch 4 in multiple patches and refactored meter and output actions to drop the dependency on NETDEV_MAX_BURST arrays, - updated max retries count for vhost-user ports, David Marchand (13): tests: Add a helper to check coverage counters. tests: Add a helper for generating IP fragments. dpif-netdev: Remove ambiguous array size. dpif-netdev: Prepare metering for dynamic packet batches. dpif-netdev: Prepare recirculation for dynamic packet batches. dpif-netdev: Prepare output for dynamic packet batches. netdev-dpdk: Prepare vhost transmission for dynamic packet batches. dp-packet: Prepare for dynamic packet batches. dp-packet: Introduce dynamic packet batches. dpif-netdev: Use dynamic packet batches for output. ipf: Use dynamic packet batches. dp-packet-gso: Use dynamic packet batches. netdev: Use software GSO for nested tunnels. Documentation/topics/userspace-tso.rst | 4 +- lib/dp-packet-gso.c | 66 ++++--- lib/dp-packet-gso.h | 4 +- lib/dp-packet.c | 25 +++ lib/dp-packet.h | 88 ++++++--- lib/dpif-netdev.c | 220 ++++++++++++++------- lib/dpif.c | 1 + lib/ipf.c | 49 ++--- lib/netdev-afxdp.c | 2 +- lib/netdev-bsd.c | 3 +- lib/netdev-dpdk.c | 25 ++- lib/netdev-dummy.c | 3 +- lib/netdev-linux.c | 2 +- lib/netdev.c | 159 ++++----------- lib/odp-execute.c | 5 +- tests/dpif-netdev.at | 207 +++++++++++++------- tests/drop-stats.at | 60 ++---- tests/ofproto-dpif.at | 258 ++++++++++--------------- tests/ofproto-macros.at | 18 +- tests/system-offloads-traffic.at | 4 +- tests/test-conntrack.c | 10 +- tests/tunnel-push-pop-ipv6.at | 30 +-- tests/tunnel-push-pop.at | 36 ++-- tests/tunnel.at | 6 +- 24 files changed, 655 insertions(+), 630 deletions(-) -- 2.54.0 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
