Update copyright years
[lttngtop.git] / src / lttngtop.c
index f659b52e182bf14f28bf3fe8a6b1b4b800ab07a7..1da87ea7fba16dfb0de5106d00d12b95bbe3ad34 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2011 Julien Desfossez
+ * Copyright (C) 2011-2012 Julien Desfossez
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License Version 2 as
@@ -88,6 +88,10 @@ void *ncurses_display(void *p)
        unsigned int current_display_index = 0;
 
        sem_wait(&bootstrap);
+       /*
+        * Prevent the 1 second delay when we hit ESC
+        */
+       ESCDELAY = 0;
        init_ncurses();
 
        while (1) {
@@ -165,14 +169,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 +311,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 +480,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.
@@ -509,11 +513,9 @@ int bt_context_add_traces_recursive(struct bt_context *ctx, const char *path,
                }
                metafd = openat(dirfd, "metadata", O_RDONLY);
                if (metafd < 0) {
-                       ret = close(dirfd);
-                       if (ret < 0) {
-                               perror("close");
-                               goto error;
-                       }
+                       close(dirfd);
+                       ret = -1;
+                       continue;
                } else {
                        int trace_id;
 
@@ -532,23 +534,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 +588,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)
 {
@@ -673,7 +673,7 @@ int main(int argc, char **argv)
 
        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;
        }
 
This page took 0.023943 seconds and 4 git commands to generate.