35 for (i = 0; i <
vec_len (s); i++)
38 if (c >=
'A' && c <=
'Z')
62 json_filename =
format (0,
"%s/%s%c", path, table_name, 0);
72 "Failed to read CPU-specific counter table %s",
75 "Please install the vpp-dev package and then:");
77 (pm->
log_class,
"cd %s; sudo tar Jxf PerfmonTables.tar.xz", path);
93 while (*cp && *cp !=
'{' && *cp !=
'}' && *cp !=
',')
115 for (i = 0; i <
vec_len (nvps); i++)
118 if (!strncmp ((
char *) nvp->
name,
"EventName", 9))
120 event_name = nvp->
value;
125 for (i = 0; i <
vec_len (nvps); i++)
154 while (*cp && *cp !=
'"')
164 while (*cp && *cp !=
'"')
181 while (*cp && *cp !=
':')
188 while (*cp && *cp !=
'"')
198 while (*cp && *cp !=
'"')
212 while (*cp && *cp !=
',' && *cp !=
'}')
#define vec_validate(V, I)
Make sure vector is long enough for given index (no header, unspecified alignment) ...
#define vec_add1(V, E)
Add 1 element to end of vector (unspecified alignment).
#define hash_set_mem(h, key, value)
vhost_vring_state_t state
#define vlib_log_debug(...)
#define hash_create_string(elts, value_bytes)
static u8 * downcase(u8 *s)
vlib_log_class_t log_class
#define vec_free(V)
Free vector's memory (no header).
#define clib_warning(format, args...)
uword * perfmon_parse_table(perfmon_main_t *pm, char *path, char *table_name)
#define clib_error_report(e)
#define vec_len(v)
Number of elements in vector (rvalue-only, NULL tolerant)
clib_error_t * unix_proc_file_contents(char *file, u8 **result)
#define vlib_log_err(...)