aboutsummaryrefslogtreecommitdiffstats
path: root/docs/report
diff options
context:
space:
mode:
authorTibor Frank <tifrank@cisco.com>2020-02-14 12:45:53 +0100
committerTibor Frank <tifrank@cisco.com>2020-02-14 12:47:53 +0100
commite3546697c0d5c9068caa738eff026e0437f0ea8d (patch)
tree6485b18263023ddfd148ad55679860c0c7f8a196 /docs/report
parentf51658bf4d987f95cd2230fea5263f9a6badeb19 (diff)
Report: Detailed results tables
Change-Id: Ib89fb3135a5a170e666923148e74541f042a2bbd Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'docs/report')
0 files changed, 0 insertions, 0 deletions
ENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #ifndef included_vlib_trace_h #define included_vlib_trace_h #include <vppinfra/pool.h> typedef struct { /* CPU time stamp trace was made. */ u64 time; /* Node which generated this trace. */ u32 node_index; /* Number of data words in this trace. */ u32 n_data; /* Trace data follows. */ u8 data[0]; } vlib_trace_header_t; typedef struct { /* Current number of traces in buffer. */ u32 count; /* Max. number of traces to be added to buffer. */ u32 limit; } vlib_trace_node_t; /* Callback type for post-processing the vlib trace buffer */ struct vlib_main_t; struct vlib_trace_main_t; typedef void (vlib_trace_buffer_callback_t) (struct vlib_main_t *, struct vlib_trace_main_t *); /* Callback type for alternate handling of vlib_add_trace internals */ struct vlib_node_runtime_t; struct vlib_buffer_t; typedef void *(vlib_add_trace_callback_t) (struct vlib_main_t *, struct vlib_node_runtime_t * r, struct vlib_buffer_t * b, u32 n_data_bytes); typedef struct { /* Pool of trace buffers. */ vlib_trace_header_t **trace_buffer_pool; u32 last_main_loop_count; u32 filter_node_index; u32 filter_flag; #define FILTER_FLAG_NONE 0 #define FILTER_FLAG_INCLUDE 1 #define FILTER_FLAG_EXCLUDE 2 #define FILTER_FLAG_POST_MORTEM 3 u32 filter_count; /* set on trace add, cleared on clear trace */ u32 trace_enable; /* Per node trace counts. */ vlib_trace_node_t *nodes; /* verbosity */ int verbose; /* a callback to enable customized consumption of the trace buffer content */ vlib_trace_buffer_callback_t *trace_buffer_callback; /* a callback to enable customized addition of a new trace */ vlib_add_trace_callback_t *add_trace_callback; } vlib_trace_main_t; format_function_t format_vlib_trace; void trace_apply_filter (struct vlib_main_t *vm); int trace_time_cmp (void *a1, void *a2); void vlib_trace_stop_and_clear (void); int vlib_enable_disable_pkt_trace_filter (int enable) __attribute__ ((weak)); void trace_update_capture_options (u32 add, u32 node_index, u32 filter, u8 verbose); void trace_filter_set (u32 node_index, u32 flag, u32 count); void clear_trace_buffer (void); #endif /* included_vlib_trace_h */ /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */