This series adds infrastructure for hardware offload providers to
register callbacks that execute as part of PMD thread processing, and
uses this infrastructure to implement simulated hardware offload in the
dummy offload provider.
Patch 1 adds the PMD thread lifecycle hooks that allow offload providers
to initialize per-PMD contexts, register work callbacks that run in each
PMD iteration, and properly clean up on thread exit. Cycle statistics
are integrated into the existing PMD performance metrics.
Patch 2 leverages this infrastructure to implement full hardware offload
simulation in the dummy provider. Packets matching fully-offloaded flows
are queued and processed asynchronously by the PMD work callback,
bypassing the software datapath entirely. This allows testing of
hardware offload behavior.
Together, these patches enable testing of hardware offload scenarios
and features in userspace datapath configurations.
Eelco Chaudron (2):
dpif-offload: Add infrastructure for offload provider PMD helpers.
dummy-offload: Add simulated hardware offload.
lib/dpif-netdev-perf.c | 19 +-
lib/dpif-netdev-perf.h | 3 +-
lib/dpif-netdev.c | 42 ++++-
lib/dpif-offload-dummy.c | 318 +++++++++++++++++++++++++++++++---
lib/dpif-offload-provider.h | 26 +++
lib/dpif-offload.c | 133 ++++++++++++++
lib/dpif-offload.h | 11 ++
lib/dummy.h | 7 +-
lib/netdev-dummy.c | 55 ++++--
tests/dpif-netdev.at | 124 +++++++++++++
tests/ofproto-dpif.at | 90 ++++++++--
tests/pmd.at | 32 ++++
utilities/checkpatch_dict.txt | 2 +
13 files changed, 801 insertions(+), 61 deletions(-)
--
2.52.0
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev