X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fltt%2Ftracefile.c;h=7f76f014c9ce615e8a6af864a0f9e2e6f1dd69da;hb=860c0a038d73012cc4e3bcad5f14561737c184ff;hp=b2ef31319ed6ab1420294b1b8dcfd4ea538e4dd0;hpb=bf33dd5091178cd0ad175b1914d74056db60e7af;p=lttv.git diff --git a/ltt/branches/poly/ltt/tracefile.c b/ltt/branches/poly/ltt/tracefile.c index b2ef3131..7f76f014 100644 --- a/ltt/branches/poly/ltt/tracefile.c +++ b/ltt/branches/poly/ltt/tracefile.c @@ -259,6 +259,8 @@ int parse_trace_header(void *header, LttTracefile *tf, LttTrace *t) &vheader->start_monotonic); t->start_time = ltt_get_time(LTT_GET_BO(tf), &vheader->start_time); + t->start_time.tv_nsec *= 1000; /* microsec to nanosec */ + t->start_time_from_tsc = ltt_time_from_uint64( (double)t->start_tsc * 1000000.0 / (double)t->start_freq); } @@ -952,7 +954,8 @@ static int ltt_process_facility_tracefile(LttTracefile *tf) (tf->event.data + strlen(fac_name) + 1); fac = &g_array_index (tf->trace->facilities_by_num, LttFacility, ltt_get_uint32(LTT_GET_BO(tf), &fac_load_data->id)); - g_assert(fac->exists == 0); + /* facility may already exist if trace is paused/unpaused */ + if(fac->exists) continue; fac->name = g_quark_from_string(fac_name); fac->checksum = ltt_get_uint32(LTT_GET_BO(tf), &fac_load_data->checksum); @@ -1004,11 +1007,13 @@ static int ltt_process_facility_tracefile(LttTracefile *tf) (tf->event.data + strlen(fac_name) + 1); fac = &g_array_index (tf->trace->facilities_by_num, LttFacility, ltt_get_uint32(LTT_GET_BO(tf), &fac_state_dump_load_data->id)); - g_assert(fac->exists == 0); + /* facility may already exist if trace is paused/unpaused */ + if(fac->exists) continue; fac->name = g_quark_from_string(fac_name); fac->checksum = ltt_get_uint32(LTT_GET_BO(tf), &fac_state_dump_load_data->checksum); - fac->id = fac_state_dump_load_data->id; + fac->id = ltt_get_uint32(LTT_GET_BO(tf), + &fac_state_dump_load_data->id); fac->pointer_size = ltt_get_uint32(LTT_GET_BO(tf), &fac_state_dump_load_data->pointer_size); fac->long_size = ltt_get_uint32(LTT_GET_BO(tf),