X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=trunk%2Flttv%2Flttv%2Flttv%2Fprint.c;h=b303900a216b7328761bd7bc6e02d90e1c1c72e8;hb=9ee1ff6aafc917b69d1510dad5a7e100d47debc4;hp=c9099064d2bab23142806629342ad50cd707aa9b;hpb=d2d7b248bca9a289b83aa8122174b9cd085753ac;p=lttv.git diff --git a/trunk/lttv/lttv/lttv/print.c b/trunk/lttv/lttv/lttv/print.c index c9099064..b303900a 100644 --- a/trunk/lttv/lttv/lttv/print.c +++ b/trunk/lttv/lttv/lttv/print.c @@ -47,23 +47,34 @@ static inline void print_enum_events(LttEvent *e, struct marker_field *f, guint64 value, GString *s, LttvTracefileState *tfs) { - struct marker_info *info = marker_get_info_from_id(tfs->parent.tf->mdata, - e->event_id); + LttTracefile *tf = tfs->parent.tf; + struct marker_info *info = marker_get_info_from_id(tf->mdata, e->event_id); LttvTraceState *ts = (LttvTraceState*)(tfs->parent.t_context); - //TODO optimize with old quarks. - if (info->name == g_quark_from_static_string("kernel_syscall_entry") && - f->name == LTT_FIELD_SYSCALL_ID) { - g_string_append_printf(s, " [%s]", - g_quark_to_string(ts->syscall_names[value])); - } else if ((info->name == g_quark_from_static_string("kernel_softirq_entry") - || info->name == g_quark_from_static_string("kernel_softirq_exit") - || info->name == g_quark_from_static_string("kernel_softirq_raise")) && - f->name == g_quark_from_static_string("softirq_id")) { - g_string_append_printf(s, " [%s]", - g_quark_to_string(ts->soft_irq_names[value])); + if (tf->name == LTT_CHANNEL_KERNEL) { + if (info->name == LTT_EVENT_SYSCALL_ENTRY + && f->name == LTT_FIELD_SYSCALL_ID) { + g_string_append_printf(s, " [%s]", + g_quark_to_string(ts->syscall_names[value])); + } else if ((info->name == LTT_EVENT_SOFT_IRQ_ENTRY + || info->name == LTT_EVENT_SOFT_IRQ_EXIT + || info->name == LTT_EVENT_SOFT_IRQ_RAISE) + && f->name == LTT_FIELD_SOFT_IRQ_ID) { + g_string_append_printf(s, " [%s]", + g_quark_to_string(ts->soft_irq_names[value])); + } else if (info->name == LTT_EVENT_KPROBE + && f->name == LTT_FIELD_IP) { +#if (__SIZEOF_LONG__ == 4) + GQuark symbol = (GQuark)g_hash_table_lookup(ts->kprobe_hash, + (gconstpointer)&value); +#else + GQuark symbol = (GQuark)g_hash_table_lookup(ts->kprobe_hash, + (gconstpointer)value); +#endif + if (symbol) + g_string_append_printf(s, " [%s]", g_quark_to_string(symbol)); + } } - } void lttv_print_field(LttEvent *e, struct marker_field *f, GString *s, @@ -264,7 +275,8 @@ void lttv_event_to_string(LttEvent *e, GString *s, if(mandatory_fields) { time = ltt_event_time(e); - g_string_append_printf(s,"%s: %ld.%09ld (%s/%s_%u)", + g_string_append_printf(s,"%s.%s: %ld.%09ld (%s/%s_%u)", + g_quark_to_string(ltt_tracefile_name(tfs->parent.tf)), g_quark_to_string(info->name), (long)time.tv_sec, time.tv_nsec, g_quark_to_string(