X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;ds=sidebyside;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Fgui%2Fcontrolflow%2Feventhooks.c;h=d458fe04ae5d94d757722aa7e3d0e8c591b5253e;hb=e025a729300a06b0de77a8c63d7256fed2658ccb;hp=662090105665f681173f946d79e576da3a5b106b;hpb=3234f094e8b6c0bb98f4f8b6e611b3d4f7b4a649;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c b/ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c index 66209010..d458fe04 100644 --- a/ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c +++ b/ltt/branches/poly/lttv/modules/gui/controlflow/eventhooks.c @@ -397,6 +397,12 @@ int draw_before_hook(void *hook_data, void *call_data) &height, &hashed_process_data) == 1) { + g_assert(!(process->pid == 432 && + ltt_time_compare(process->creation_time, + ltt_time_zero)==0)); + + g_assert(!(process->pid == 432 && + process->creation_time.tv_nsec == 47797905)); /* Process not present */ processlist_add(process_list, pid_out, @@ -1270,6 +1276,13 @@ int draw_after_hook(void *hook_data, void *call_data) &height, &hashed_process_data_in) == 1) { + g_assert(!(process_in->pid == 432 && + ltt_time_compare(process_in->creation_time, + ltt_time_zero)==0)); + + g_assert(!(process_in->pid == 432 && + process_in->creation_time.tv_nsec == 47797905)); + /* Process not present */ processlist_add(process_list, pid_in, @@ -2158,35 +2171,6 @@ typedef struct _ClosureData { } ClosureData; -/* find_process - * Input : A trace and a PID. - * - * - For each CPU of the trace - * - Search in trace states by PID and CPU key - * - If no ProcessState found, return NULL. - */ -static LttvProcessState *find_process(LttvTraceState *tstate, guint pid) -{ - guint cpu_num = ltt_trace_per_cpu_tracefile_number(tstate->parent.t); - GQuark cpu_name; - guint i; - - LttvProcessState *real_state = NULL; - - for(i=0;iparent.tracefiles[i])->cpu_name; - LttvProcessState *state = lttv_state_find_process_from_trace(tstate, - cpu_name, - pid); - if(state != NULL) { - real_state = state; - break; - } - } - return real_state; -} - - void draw_closure(gpointer key, gpointer value, gpointer user_data) { ProcessInfo *process_info = (ProcessInfo*)key; @@ -2222,11 +2206,14 @@ void draw_closure(gpointer key, gpointer value, gpointer user_data) * be added after the state update. */ g_assert(lttv_traceset_number(tsc->ts) > 0); - LttvTraceState *trace_state = - (LttvTraceState*)tsc->traces[process_info->trace_num]; + /* tracefiles[0] is ok here, because we draw for every PID, and + * assume CPU 0 for PID 0 //FIXME */ + LttvTracefileState *tfs = + (LttvTracefileState*)tsc->traces[process_info->trace_num]->tracefiles[0]; LttvProcessState *process; - process = find_process(trace_state, process_info->pid); + process = lttv_state_find_process(tfs, + process_info->pid); if(process != NULL) {