X-Git-Url: https://git.lttng.org/?p=lttngtop.git;a=blobdiff_plain;f=src%2Fcommon.h;h=4cdb0d35b484b3d71d8ea30662280f93d9adac61;hp=6370b77f30afe1bcd14fa71815ebbba2dc77ba47;hb=c8d75a13bc5c025053b0c2c14fa1a7dfdaa1b448;hpb=3ba84bed69e8eb8e6794a7250da97406dbbe02c2 diff --git a/src/common.h b/src/common.h index 6370b77..4cdb0d3 100644 --- a/src/common.h +++ b/src/common.h @@ -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 @@ -29,7 +29,14 @@ sem_t goodtodisplay, goodtoupdate, timer, pause_sem, end_trace_sem, bootstrap; GPtrArray *copies; /* struct lttngtop */ -pthread_mutex_t perf_list_mutex; +GHashTable *global_perf_liszt; + +char *opt_tid; +char *opt_hostname; +GHashTable *tid_list; +GHashTable *hostname_list; + +extern int quit; struct lttngtop *data; @@ -37,10 +44,15 @@ struct processtop *find_process_tid(struct lttngtop *ctx, int pid, char *comm); struct processtop* add_proc(struct lttngtop *ctx, int pid, char *comm, unsigned long timestamp); struct processtop* update_proc(struct processtop* proc, int pid, int tid, - int ppid, char *comm); + int ppid, int vpid, int vtid, int vppid, char *comm, + char *hostname); void add_thread(struct processtop *parent, struct processtop *thread); struct processtop* get_proc(struct lttngtop *ctx, int tid, char *comm, unsigned long timestamp); + +struct processtop *get_proc_pid(struct lttngtop *ctx, int tid, int pid, + unsigned long timestamp); + void death_proc(struct lttngtop *ctx, int tid, char *comm, unsigned long timestamp); struct cputime* add_cpu(int cpu); @@ -50,6 +62,7 @@ struct perfcounter *add_perf_counter(GPtrArray *perf, GQuark quark, unsigned long count); struct perfcounter *get_perf_counter(const char *name, struct processtop *proc, struct cputime *cpu); +void reset_global_counters(void); /* common field access functions */ uint64_t get_cpu_id(const struct bt_ctf_event *event); @@ -57,5 +70,17 @@ uint64_t get_context_tid(const struct bt_ctf_event *event); uint64_t get_context_pid(const struct bt_ctf_event *event); uint64_t get_context_ppid(const struct bt_ctf_event *event); char *get_context_comm(const struct bt_ctf_event *event); +uint64_t get_context_vtid(const struct bt_ctf_event *event); +uint64_t get_context_vpid(const struct bt_ctf_event *event); +uint64_t get_context_vppid(const struct bt_ctf_event *event); +char *get_context_hostname(const struct bt_ctf_event *event); + +enum bt_cb_ret handle_statedump_process_state(struct bt_ctf_event *call_data, + void *private_data); + +struct tm format_timestamp(uint64_t timestamp); + +int *lookup_tid_list(int tid); +char *lookup_hostname_list(const char *hostname); #endif /* _COMMON_H */