- switch((enum ltt_core_events)tf->event.event_id) {
- case LTT_EVENT_FACILITY_LOAD:
- fac_name = (char*)(tf->event.data);
- g_debug("Doing LTT_EVENT_FACILITY_LOAD of facility %s",
- fac_name);
- pos = (tf->event.data + strlen(fac_name) + 1);
- pos += ltt_align((size_t)pos, tf->trace->arch_size, tf->has_alignment);
- fac_load_data = (struct LttFacilityLoad *)pos;
-
- fac = &g_array_index (tf->trace->facilities_by_num, LttFacility,
- ltt_get_uint32(LTT_GET_BO(tf), &fac_load_data->id));
- /* 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);
- fac->id = ltt_get_uint32(LTT_GET_BO(tf), &fac_load_data->id);
- fac->pointer_size = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_load_data->pointer_size);
- fac->int_size = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_load_data->int_size);
- fac->long_size = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_load_data->long_size);
- fac->size_t_size = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_load_data->size_t_size);
- fac->alignment = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_load_data->has_alignment);
-
- if(ltt_get_facility_description(fac, tf->trace, tf))
- continue; /* error opening description */
-
- fac->trace = tf->trace;
-
- /* Preset the field offsets */
- for(i=0; i<fac->events->len; i++){
- et = &g_array_index(fac->events, LttEventType, i);
- precompute_offsets(fac, et);
- }
-
- fac->exists = 1;
-
- fac_ids = g_datalist_id_get_data(&tf->trace->facilities_by_name,
- fac->name);
- if(fac_ids == NULL) {
- fac_ids = g_array_sized_new (FALSE, TRUE, sizeof(guint), 1);
- g_datalist_id_set_data_full(&tf->trace->facilities_by_name,
- fac->name,
- fac_ids, ltt_fac_ids_destroy);
- }
- g_array_append_val(fac_ids, fac->id);
-
- break;
- case LTT_EVENT_FACILITY_UNLOAD:
- g_debug("Doing LTT_EVENT_FACILITY_UNLOAD");
- /* We don't care about unload : facilities ID are valid for the whole
- * trace. They simply won't be used after the unload. */
- break;
- case LTT_EVENT_STATE_DUMP_FACILITY_LOAD:
- fac_name = (char*)(tf->event.data);
- g_debug("Doing LTT_EVENT_STATE_DUMP_FACILITY_LOAD of facility %s",
- fac_name);
- pos = (tf->event.data + strlen(fac_name) + 1);
- pos += ltt_align((size_t)pos, tf->trace->arch_size, tf->has_alignment);
- fac_state_dump_load_data = (struct LttStateDumpFacilityLoad *)pos;
-
- fac = &g_array_index (tf->trace->facilities_by_num, LttFacility,
- ltt_get_uint32(LTT_GET_BO(tf), &fac_state_dump_load_data->id));
- /* 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 = 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->int_size = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_state_dump_load_data->int_size);
- fac->long_size = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_state_dump_load_data->long_size);
- fac->size_t_size = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_state_dump_load_data->size_t_size);
- fac->alignment = ltt_get_uint32(LTT_GET_BO(tf),
- &fac_state_dump_load_data->has_alignment);
- if(ltt_get_facility_description(fac, tf->trace, tf))
- continue; /* error opening description */
-
- fac->trace = tf->trace;
-
- /* Preset the field offsets */
- for(i=0; i<fac->events->len; i++){
- et = &g_array_index(fac->events, LttEventType, i);
- precompute_offsets(fac, et);
- }
-
- fac->exists = 1;
-
- fac_ids = g_datalist_id_get_data(&tf->trace->facilities_by_name,
- fac->name);
- if(fac_ids == NULL) {
- fac_ids = g_array_sized_new (FALSE, TRUE, sizeof(guint), 1);
- g_datalist_id_set_data_full(&tf->trace->facilities_by_name,
- fac->name,
- fac_ids, ltt_fac_ids_destroy);
- }
- g_array_append_val(fac_ids, fac->id);
- g_debug("fac id : %u", fac->id);
-
+ switch((enum marker_id)tf->event.event_id) {
+ case MARKER_ID_SET_MARKER_ID:
+ marker_name = pos = tf->event.data;
+ g_debug("Doing MARKER_ID_SET_MARKER_ID of marker %s", marker_name);
+ pos += strlen(marker_name) + 1;
+ //remove genevent compatibility
+ //pos += ltt_align((size_t)pos, tf->trace->arch_size, tf->alignment);
+ pos += ltt_align((size_t)pos, sizeof(uint16_t), tf->alignment);
+ id = ltt_get_uint16(LTT_GET_BO(tf), pos);
+ g_debug("In MARKER_ID_SET_MARKER_ID of marker %s id %hu",
+ marker_name, id);
+ pos += sizeof(guint16);
+ int_size = *(guint8*)pos;
+ pos += sizeof(guint8);
+ long_size = *(guint8*)pos;
+ pos += sizeof(guint8);
+ pointer_size = *(guint8*)pos;
+ pos += sizeof(guint8);
+ size_t_size = *(guint8*)pos;
+ pos += sizeof(guint8);
+ alignment = *(guint8*)pos;
+ pos += sizeof(guint8);
+ marker_id_event(tf->trace, g_quark_from_string(marker_name),
+ id, int_size, long_size,
+ pointer_size, size_t_size, alignment);