misc: add callback hooks and refactor pmc 61/27861/4
authorTom Seidenberg <tseidenb@cisco.com>
Fri, 10 Jul 2020 15:49:03 +0000 (15:49 +0000)
committerDave Barach <openvpp@barachs.net>
Thu, 16 Jul 2020 21:44:42 +0000 (21:44 +0000)
commit6c81f5a2493ff65b4dacfef45db8a1ee459a738f
tree24343a92e18599be4e4b4aa360ab7b2c13cdb878
parentbab02f0b184b63c4159ded030cf34044be10da40
misc: add callback hooks and refactor pmc

Callbacks for monitoring and performance measurement:
- Add new callback list type, with context
- Add callbacks for API, CLI, and barrier sync
- Modify node dispatch callback to pass plugin-specific context
- Modify perfmon plugin to keep PMC samples local to the plugin
- Include process nodes in dispatch callback
- Pass dispatch function return value to callback

Type: refactor

Signed-off-by: Tom Seidenberg <tseidenb@cisco.com>
Change-Id: I28b06c58490611e08d76ff5b01b2347ba2109b22
24 files changed:
src/plugins/mdata/mdata.c
src/plugins/perfmon/CMakeLists.txt
src/plugins/perfmon/perfmon.c
src/plugins/perfmon/perfmon.h
src/plugins/perfmon/perfmon_intel.h
src/plugins/perfmon/perfmon_intel_skl.c
src/plugins/perfmon/perfmon_intel_skx.c
src/plugins/perfmon/perfmon_periodic.c
src/plugins/perfmon/perfmon_plugin.c [new file with mode: 0644]
src/vlib/cli.c
src/vlib/cli.h
src/vlib/init.h
src/vlib/main.c
src/vlib/main.h
src/vlib/node.h
src/vlib/node_funcs.h
src/vlib/threads.c
src/vlib/threads.h
src/vlibapi/api_common.h
src/vlibapi/api_shared.c
src/vnet/interface.c
src/vppinfra/CMakeLists.txt
src/vppinfra/callback.h
src/vppinfra/callback_data.h [new file with mode: 0644]