X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=lttv%2Fmodules%2Fgui%2Fcontrolflow%2Feventhooks.c;h=e311da65affb58cc7696bf039064a421436b484b;hb=dd47d0d8af96afdc24f6a5465a42d7db3ac8c038;hp=f8e880f4ae8dd8889a5b217e3fd8fd723fec7730;hpb=31799520a31b5115bcf39b56619a08316c773f8f;p=lttv.git diff --git a/lttv/modules/gui/controlflow/eventhooks.c b/lttv/modules/gui/controlflow/eventhooks.c index f8e880f4..e311da65 100644 --- a/lttv/modules/gui/controlflow/eventhooks.c +++ b/lttv/modules/gui/controlflow/eventhooks.c @@ -130,8 +130,7 @@ static void request_background_data(ControlFlowData *control_flow_data) for(i=0;istate; - + if(lttvwindowtraces_get_ready(g_quark_from_string("state"),trace)==FALSE && !ts->has_precomputed_states) { @@ -637,7 +636,7 @@ int before_schedchange_hook(void *hook_data, void *call_data) evtime ); } else - g_warning("Cannot find pin_in in schedchange %u", pid_in); + g_warning("Cannot find pid_in in schedchange %u at %u.%u", pid_in, evtime.tv_sec, evtime.tv_nsec); #ifdef BABEL_CLEANUP tfc->target_pid = target_pid_saved; #endif //babel_cleanup @@ -800,8 +799,8 @@ int before_execmode_hook(void *hook_data, void *call_data) event = (LttvEvent *) call_data; if ((strncmp(lttv_traceset_get_name_from_event(event),"sys_", sizeof("sys_") - 1) == 0) ||(strcmp(lttv_traceset_get_name_from_event(event),"exit_syscall") == 0) - ||(strncmp(lttv_traceset_get_name_from_event(event),"irq_handler_",sizeof("irq_handler_")) == 0) - ||(strncmp(lttv_traceset_get_name_from_event(event),"softirq_", sizeof("softirq_")) == 0)) { + ||(strncmp(lttv_traceset_get_name_from_event(event),"irq_handler_",sizeof("irq_handler_") -1) == 0) + ||(strncmp(lttv_traceset_get_name_from_event(event),"softirq_", sizeof("softirq_") - 1) == 0)) { LttTime evtime = lttv_event_get_timestamp(event); ControlFlowData *control_flow_data = (ControlFlowData*)hook_data; @@ -812,7 +811,11 @@ int before_execmode_hook(void *hook_data, void *call_data) ts = event->state; guint trace_number = 0;//TODO fdeslauriers 2012-07-17: // Use trace handle to know trace number - process = lttv_state_find_process(ts ,cpu ,pid); + + //TODO ybrosseau 2013-04-09 validate that using the running process is the right choice + //process = lttv_state_find_process(ts ,cpu ,pid); + process = ts->running_process[cpu]; + g_assert(process != NULL); guint pid = process->pid;