X-Git-Url: https://git.lttng.org/?p=lttngtop.git;a=blobdiff_plain;f=src%2Flttngtop.c;h=d51302c71b78ac99d0c99c4095adce2a3b3056bd;hp=95bd383e6d8b4f4b8f8d5c11cfe114b7f16b5052;hb=3439955e838cd626b61ca36e37f80a104966a8fe;hpb=06570214a7aa236670706a1aac01c3f352e7454d diff --git a/src/lttngtop.c b/src/lttngtop.c index 95bd383..d51302c 100644 --- a/src/lttngtop.c +++ b/src/lttngtop.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -112,7 +113,7 @@ void *ncurses_display(void *p) * hook on each event to check the timestamp and refresh the display if * necessary */ -enum bt_cb_ret check_timestamp(struct bt_ctf_event *call_data, void *private_data) +enum bt_cb_ret check_timestamp(struct ctf_event_definition *call_data, void *private_data) { unsigned long timestamp; @@ -194,8 +195,8 @@ void update_perf_value(struct processtop *proc, struct cputime *cpu, } } -void extract_perf_counter_scope(struct bt_ctf_event *event, - struct definition *scope, +void extract_perf_counter_scope(const struct ctf_event_definition *event, + const struct definition *scope, struct processtop *proc, struct cputime *cpu) { @@ -224,10 +225,10 @@ end: return; } -void update_perf_counter(struct processtop *proc, struct bt_ctf_event *event) +void update_perf_counter(struct processtop *proc, const struct ctf_event_definition *event) { struct cputime *cpu; - struct definition *scope; + const struct definition *scope; cpu = get_cpu(get_cpu_id(event)); @@ -241,7 +242,7 @@ void update_perf_counter(struct processtop *proc, struct bt_ctf_event *event) extract_perf_counter_scope(event, scope, proc, cpu); } -enum bt_cb_ret fix_process_table(struct bt_ctf_event *call_data, +enum bt_cb_ret fix_process_table(struct ctf_event_definition *call_data, void *private_data) { int pid, tid, ppid; @@ -315,6 +316,11 @@ void init_lttngtop() sem_init(&pause_sem, 0, 1); sem_init(&end_trace_sem, 0, 0); + reset_global_counters(); + lttngtop.nbproc = 0; + lttngtop.nbthreads = 0; + lttngtop.nbfiles = 0; + lttngtop.process_table = g_ptr_array_new(); lttngtop.files_table = g_ptr_array_new(); lttngtop.cpu_table = g_ptr_array_new(); @@ -384,7 +390,7 @@ void iter_trace(struct bt_context *bt_ctx) { struct bt_ctf_iter *iter; struct bt_iter_pos begin_pos; - struct bt_ctf_event *event; + const struct ctf_event_definition *event; int ret = 0; begin_pos.type = BT_SEEK_BEGIN; @@ -420,10 +426,15 @@ void iter_trace(struct bt_context *bt_ctx) bt_ctf_iter_add_callback(iter, g_quark_from_static_string("sys_open"), NULL, 0, handle_sys_open, NULL, NULL, NULL); - bt_ctf_iter_add_callback(iter, g_quark_from_static_string("sys_close"), NULL, 0, handle_sys_close, NULL, NULL, NULL); + bt_ctf_iter_add_callback(iter, + g_quark_from_static_string( + "lttng_statedump_file_descriptor"), + NULL, 0, handle_statedump_file_descriptor, + NULL, NULL, NULL); + while ((event = bt_ctf_iter_read_event(iter)) != NULL) { ret = bt_iter_next(bt_ctf_get_iter(iter)); if (ret < 0)