X-Git-Url: https://git.lttng.org/?p=lttngtop.git;a=blobdiff_plain;f=src%2Flttngtop.c;h=b3368315ac0d6fb27f13c31c19176c6ddfc3b81d;hp=f659b52e182bf14f28bf3fe8a6b1b4b800ab07a7;hb=0d91c12a62aa85d1d1d8b5478e81d38e06f2cc00;hpb=a54d0d2c1368a7b20b6fff5d4680ff5f5a2caa3d diff --git a/src/lttngtop.c b/src/lttngtop.c index f659b52..b336831 100644 --- a/src/lttngtop.c +++ b/src/lttngtop.c @@ -165,14 +165,14 @@ struct perfcounter *get_perf_counter(const char *name, struct processtop *proc, 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: @@ -307,7 +307,7 @@ error: 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); @@ -476,7 +476,7 @@ int bt_context_add_traces_recursive(struct bt_context *ctx, const char *path, 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. @@ -532,23 +532,23 @@ int bt_context_add_traces_recursive(struct bt_context *ctx, const char *path, 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) { @@ -586,8 +586,6 @@ int check_field_requirements(const struct bt_ctf_field_decl *const * field_list, * * 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) {