unsigned int current_display_index = 0;
sem_wait(&bootstrap);
+ /*
+ * Prevent the 1 second delay when we hit ESC
+ */
+ ESCDELAY = 0;
init_ncurses();
while (1) {
ret->visible = 1;
g_hash_table_insert(table, (gpointer) strdup(name), ret);
- global = g_hash_table_lookup(lttngtop.perf_list, (gpointer) name);
+ global = g_hash_table_lookup(global_perf_liszt, (gpointer) name);
if (!global) {
global = g_new0(struct perfcounter, 1);
memcpy(global, ret, sizeof(struct perfcounter));
/* by default, sort on the first perf context */
- if (g_hash_table_size(lttngtop.perf_list) == 0)
+ if (g_hash_table_size(global_perf_liszt) == 0)
global->sort = 1;
- g_hash_table_insert(lttngtop.perf_list, (gpointer) strdup(name), global);
+ g_hash_table_insert(global_perf_liszt, (gpointer) strdup(name), global);
}
end:
void init_lttngtop()
{
copies = g_ptr_array_new();
- lttngtop.perf_list = g_hash_table_new(g_str_hash, g_str_equal);
+ global_perf_liszt = g_hash_table_new(g_str_hash, g_str_equal);
sem_init(&goodtodisplay, 0, 0);
sem_init(&goodtoupdate, 0, 1);
GArray *trace_ids;
char lpath[PATH_MAX];
char * const paths[2] = { lpath, NULL };
- int ret;
+ int ret = -1;
/*
* Need to copy path, because fts_open can change it.
node->fts_accpath, format_str,
packet_seek, NULL, NULL);
if (trace_id < 0) {
- fprintf(stderr, "[error] [Context] opening trace \"%s\" from %s "
+ fprintf(stderr, "[warning] [Context] opening trace \"%s\" from %s "
"for reading.\n", node->fts_accpath, path);
- ret = trace_id;
- goto error;
+ /* Allow to skip erroneous traces. */
+ continue;
}
g_array_append_val(trace_ids, trace_id);
}
}
g_array_free(trace_ids, TRUE);
- return 0;
+ return ret;
error:
return ret;
}
-int check_field_requirements(const struct bt_ctf_field_decl *const * field_list,
+static int check_field_requirements(const struct bt_ctf_field_decl *const * field_list,
int field_cnt, int *tid_check, int *pid_check,
int *procname_check, int *ppid_check)
{
*
* If each mandatory context information is available for at least in one
* event, return 0 otherwise return -1.
- * Also, we make here a list for all the perf counters available during the
- * trace.
*/
int check_requirements(struct bt_context *ctx)
{
ret = check_requirements(bt_ctx);
if (ret < 0) {
- fprintf(stderr, "[error] missing mandatory context informations\n");
+ fprintf(stderr, "[error] some mandatory contexts were missing, exiting.\n");
goto end;
}