The goal of this series is to add an upcall to retrieve detailed performance statistics from the pmd thread execution. These statistics include exact match cache and masked classifier hits and rough cycles counters.
This series also introduces a simple lock (taken from the cmap) which is used to protect (already existing and newly introduced) statistics reads/write. v1 -> v2: * Group writes to stats variables * Introduce 64-bit stats lock, based on new cntlock (thanks to Jarno) * Fix a typo (thanks to Jarno) * Protect existing dpif-netdev stats updates with new locks (thanks to Jarno) * Protect new stats updates with new locks (thanks to Jarno) * Change rte_get_timer_cycles() to rte_get_tsc_cycles(). This prevents an OVS DPDK build from crashing when DPDK has not been enabled at runtime Daniele Di Proietto (9): dpif-netdev: account for and free lost packets dpif-netdev: Group statistics updates in the slow path lib: Introduce cntlock mechanism lib: Introduce u64-stats-sync dpif-netdev: Use u64_stats_sync when reading/writing stats dpif-netdev: count exact match cache hits dpif-netdev: added simple per pmd-thread cycles counters dpif-provider: add class init function dpif-netdev: Add dpif-netdev/pmd-stats-* appctl commands INSTALL.DPDK.md | 8 ++ lib/automake.mk | 2 + lib/cmap.c | 80 +++---------- lib/cntlock.h | 146 +++++++++++++++++++++++ lib/dpif-netdev.c | 291 ++++++++++++++++++++++++++++++++++++++++++--- lib/dpif-netlink.c | 1 + lib/dpif-provider.h | 8 ++ lib/dpif.c | 8 ++ lib/u64-stats-sync.h | 140 ++++++++++++++++++++++ vswitchd/ovs-vswitchd.8.in | 18 +++ 10 files changed, 623 insertions(+), 79 deletions(-) create mode 100644 lib/cntlock.h create mode 100644 lib/u64-stats-sync.h -- 2.1.4 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev