The first two commits of the series are trivial bugfixes for dpif-netdev. Then the series fixes a long standing bug that caused a crash when the admin link state of a port is changed while traffic is flowing.
The next part makes use of reconfiguration for port add: this makes the operation twice as fast and reduce some code duplication. This part conflicts with the port naming change, so I'm willing to postpone it, unless we find it to be useful for the port naming change. The rest of the series refactors a lot of code if dpif-netdev: * We no longer start pmd threads on demand for each numa node. This made the code very complicated and introduced a lot of bugs. * The pmd threads state is now internal to dpif-netdev and it's not stored in ovs-numa. * There's now a single function that handles pmd threads/ports changes: this reduces code duplication and makes port reconfiguration faster, as we don't have to bring down the whole datapath. Daniele Di Proietto (17): dpif-netdev: Fix memory leak. dpif-netdev: Take non_pmd_mutex to access tx cached ports. dpif-netdev: Don't try to output on a device without txqs. netdev-dpdk: Don't call rte_dev_stop() in update_flags(). netdev-dpdk: Start the device only once on port-add. netdev-dpdk: Refactor construct and destruct. dpif-netdev: Use a boolean instead of pmd->port_seq. dpif-netdev: Block pmd threads if there are no ports. dpif-netdev: Create pmd threads for every numa node. dpif-netdev: Make 'static_tx_qid' const. dpctl: Avoid making assumptions on pmd threads. ovs-numa: New ovs_numa_dump_contains_core() function. ovs-numa: Add new dump types. dpif-netdev: core_id shouldn't be negative. dpif-netdev: Use hmap for poll_list in pmd threads. dpif-netdev: Centralized threads and queues handling code. ovs-numa: Remove unused functions. lib/dpctl.c | 107 +--- lib/dpif-netdev.c | 1429 ++++++++++++++++++++++++++++------------------------- lib/dpif.c | 6 +- lib/dpif.h | 12 +- lib/netdev-dpdk.c | 173 +++---- lib/netdev.c | 21 +- lib/netdev.h | 1 + lib/ovs-numa.c | 227 +++------ lib/ovs-numa.h | 21 +- tests/pmd.at | 49 +- vswitchd/bridge.c | 2 + 11 files changed, 1030 insertions(+), 1018 deletions(-) -- 2.10.2 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
