Introduce a new netdev type - netdev-doca. In order to compile, need to install doca on the build machine.
v2-v1: - Fixed licence comment headers. - Abandoned dpdk-extra patch. It is a configuration issue and there is also [1]. - Added co-author to some of the commits. [1] https://mail.openvswitch.org/pipermail/ovs-dev/2026-February/430134.html v3-v2: - There is a lot of code that can be shared with netdev-dpdk. Refactored it to enable sharing. - Added documentation files. - Styling fixes. - Reworked ovs-rcu and refmap patches. - Added support for github actions (CI) to compile with doca. - Simplified acinclude.m4. - Reworked sysfs access. Most of the accesses are now with doca-API. - Reworked error paths - returned values, messages and rollbacks. v4-v3: - Licence comment headers. - Styling fixes. - CI dpdk is enhanced to compile mlx5 PMD and used with doca jobs. - Removed ovs-rcu patch. - Refmap fixes. - DOCA mempool free by sweep. v5-v4: - Rebased onto dpdk-latest. - Removed dev_type field from netdev-dpdk. - Dropped the direct mempool commit. - Refactored more dpdk code to netdev-dpdk-common. - --with-doca is changed to be a flag. Link type follows --with-dpdk. - Added nvhws static link support. - -DALLOW_EXPERIMENTAL_API: - Removed from acinclude.m4. It still exists via doca's pkg-config files. - Temporarily disabled shared DOCA linking in CI until a DOCA SDK built against upstream DPDK with the promoted (non-experimental) symbols is available. - Fixed a potential leak with doca_dev_rep_close(). - Preserve cX controller prefix in phys_port_name when probing ports. - Changed doca log levels to match OVS vlog ones. - Aligned flow-limit with ofproto. Keep mismatch warning in ovs-doca. - Styling fixes. Ariel Levkovich (1): acinclude.m4: Add '--with-doca' option. Eli Britstein (8): packets: Move ETH_TYPE_LLDP to be a public define. netdev-dpdk: Remove dev_type field. netdev-dpdk-common: Refactor declarations from netdev-dpdk. netdev-dpdk: Change access from dev->common.xxx to common->xxx. netdev-dpdk: Make 'started' field atomic. netdev-dpdk-common: Refactor common functions for netdev-doca reuse. unixctl: Introduce unixctl_mem_stream(). netdev-doca: Introduce doca netdev. Gaetan Rivet (1): refmap: Introduce reference map. .ci/doca-build.sh | 54 + .ci/dpdk-build.sh | 5 +- .github/workflows/build-and-test.yml | 115 +- Documentation/automake.mk | 2 + Documentation/howto/doca.rst | 144 ++ Documentation/howto/index.rst | 1 + Documentation/intro/install/doca.rst | 120 + Documentation/intro/install/index.rst | 1 + Makefile.am | 1 + NEWS | 5 + acinclude.m4 | 177 ++ configure.ac | 4 +- lib/automake.mk | 14 +- lib/dpdk.c | 32 +- lib/netdev-doca.c | 2771 ++++++++++++++++++++ lib/netdev-doca.h | 120 + lib/netdev-dpdk-common.c | 2236 +++++++++++++++++ lib/netdev-dpdk-common.h | 392 +++ lib/netdev-dpdk.c | 3351 +++++-------------------- lib/netdev-dpdk.h | 9 + lib/ovs-doca.c | 851 +++++++ lib/ovs-doca.h | 102 + lib/ovs-lldp.c | 1 - lib/packets.h | 7 +- lib/refmap.c | 494 ++++ lib/refmap.h | 163 ++ lib/unixctl.c | 43 +- lib/unixctl.h | 3 + tests/automake.mk | 1 + tests/library.at | 5 + tests/ofproto-macros.at | 1 + tests/system-dpdk.at | 2 +- tests/test-aa.c | 2 - tests/test-refmap.c | 1107 ++++++++ utilities/checkpatch_dict.txt | 4 + vswitchd/bridge.c | 5 + vswitchd/ovs-vswitchd.c | 3 + vswitchd/vswitch.ovsschema | 9 +- vswitchd/vswitch.xml | 100 +- 39 files changed, 9639 insertions(+), 2818 deletions(-) create mode 100755 .ci/doca-build.sh create mode 100644 Documentation/howto/doca.rst create mode 100644 Documentation/intro/install/doca.rst create mode 100644 lib/netdev-doca.c create mode 100644 lib/netdev-doca.h create mode 100644 lib/netdev-dpdk-common.c create mode 100644 lib/netdev-dpdk-common.h create mode 100644 lib/ovs-doca.c create mode 100644 lib/ovs-doca.h create mode 100644 lib/refmap.c create mode 100644 lib/refmap.h create mode 100644 tests/test-refmap.c -- 2.43.0 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
