From: Philippe Proulx Date: Thu, 2 Nov 2017 15:30:38 +0000 (-0400) Subject: Fix: debug-info: remove `_` prefix when finding fields by name X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=commitdiff_plain;h=c4838cef2a82007682db4bca559466c9b72d7068 Fix: debug-info: remove `_` prefix when finding fields by name The CTF plugin source components now remove the `_` prefix from field names, so that other downstream components should not expect it as it's an escaping mechanism in CTF 1.8. Signed-off-by: Philippe Proulx Signed-off-by: Jérémie Galarneau --- diff --git a/plugins/lttng-utils/copy.c b/plugins/lttng-utils/copy.c index 12e3d89c..f6c5c6af 100644 --- a/plugins/lttng-utils/copy.c +++ b/plugins/lttng-utils/copy.c @@ -817,7 +817,7 @@ int add_debug_info_fields(FILE *err, int ret = 0; ip_field = bt_field_type_structure_get_field_type_by_name( - writer_event_context_type, "_ip"); + writer_event_context_type, IP_FIELD_NAME); /* No ip field, so no debug info. */ if (!ip_field) { goto end; @@ -1461,13 +1461,13 @@ struct debug_info_source *lookup_debug_info(FILE *err, int ret; ret = get_stream_event_context_int_field_value(err, event, - "_vpid", &vpid); + VPID_FIELD_NAME, &vpid); if (ret) { goto end; } ret = get_stream_event_context_unsigned_int_field_value(err, event, - "_ip", &ip); + IP_FIELD_NAME, &ip); if (ret) { goto end; } diff --git a/plugins/lttng-utils/debug-info.c b/plugins/lttng-utils/debug-info.c index 09e6c010..d34b2c4e 100644 --- a/plugins/lttng-utils/debug-info.c +++ b/plugins/lttng-utils/debug-info.c @@ -383,15 +383,16 @@ void handle_statedump_build_id_event(FILE *err, struct debug_info *debug_info, uint64_t build_id_len; ret = get_stream_event_context_int_field_value(err, - event, "_vpid", &vpid); + event, VPID_FIELD_NAME, &vpid); if (ret) { goto end; } ret = get_payload_unsigned_int_field_value(err, - event, "_baddr", &baddr); + event, BADDR_FIELD_NAME, &baddr); if (ret) { - BT_LOGE_STR("Failed to get unsigned int value for _vpid field."); + BT_LOGE_STR("Failed to get unsigned int value for " + VPID_FIELD_NAME " field."); goto end; } @@ -411,10 +412,11 @@ void handle_statedump_build_id_event(FILE *err, struct debug_info *debug_info, goto end; } - ret = get_payload_build_id_field_value(err, event, "_build_id", + ret = get_payload_build_id_field_value(err, event, BUILD_ID_FIELD_NAME, &bin->build_id, &build_id_len); if (ret) { - BT_LOGE_STR("Failed to get _build_id field value."); + BT_LOGE_STR("Failed to get " BUILD_ID_FIELD_NAME + " field value."); goto end; } if (build_id_len > SIZE_MAX) { @@ -449,31 +451,35 @@ void handle_statedump_debug_link_event(FILE *err, struct debug_info *debug_info, int ret; ret = get_stream_event_context_int_field_value(err, event, - "_vpid", &vpid); + VPID_FIELD_NAME, &vpid); if (ret) { goto end; } ret = get_payload_unsigned_int_field_value(err, - event, "_baddr", &baddr); + event, BADDR_FIELD_NAME, &baddr); if (ret) { - BT_LOGE_STR("Failed to get unsigned int value for _baddr field."); + BT_LOGE_STR("Failed to get unsigned int value for " + BADDR_FIELD_NAME " field."); ret = -1; goto end; } - ret = get_payload_unsigned_int_field_value(err, event, "_crc32", &tmp); + ret = get_payload_unsigned_int_field_value(err, event, CRC32_FIELD_NAME, + &tmp); if (ret) { - BT_LOGE_STR("Failed to get unsigned int value for _crc32 field."); + BT_LOGE_STR("Failed to get unsigned int value for " + CRC32_FIELD_NAME " field."); ret = -1; goto end; } crc32 = (uint32_t) tmp; ret = get_payload_string_field_value(err, - event, "_filename", &filename); + event, FILENAME_FIELD_NAME, &filename); if (ret) { - BT_LOGE_STR("Failed to get string value for _filename field."); + BT_LOGE_STR("Failed to get string value for " + FILENAME_FIELD_NAME " field."); ret = -1; goto end; } @@ -514,16 +520,18 @@ void handle_bin_info_event(FILE *err, struct debug_info *debug_info, int ret; ret = get_payload_unsigned_int_field_value(err, - event, "_baddr", &baddr); + event, BADDR_FIELD_NAME, &baddr); if (ret) { - BT_LOGE_STR("Failed to get unsigned int value for _baddr field."); + BT_LOGE_STR("Failed to get unsigned int value for " + BADDR_FIELD_NAME " field."); goto end; } ret = get_payload_unsigned_int_field_value(err, - event, "_memsz", &memsz); + event, MEMSZ_FIELD_NAME, &memsz); if (ret) { - BT_LOGE_STR("Failed to get unsigned int value for _memsz field."); + BT_LOGE_STR("Failed to get unsigned int value for " + MEMSZ_FIELD_NAME " field."); goto end; } @@ -532,7 +540,7 @@ void handle_bin_info_event(FILE *err, struct debug_info *debug_info, * lttng-ust 2.9. */ ret = get_payload_string_field_value(err, - event, "_path", &path); + event, PATH_FIELD_NAME, &path); if (ret || !path) { goto end; } @@ -541,9 +549,10 @@ void handle_bin_info_event(FILE *err, struct debug_info *debug_info, uint64_t tmp; ret = get_payload_unsigned_int_field_value(err, - event, "_is_pic", &tmp); + event, IS_PIC_FIELD_NAME, &tmp); if (ret) { - BT_LOGE_STR("Failed to get unsigned int value for _is_pic field."); + BT_LOGE_STR("Failed to get unsigned int value for " + IS_PIC_FIELD_NAME " field."); ret = -1; goto end; } @@ -556,8 +565,8 @@ void handle_bin_info_event(FILE *err, struct debug_info *debug_info, is_pic = true; } - ret = get_stream_event_context_int_field_value(err, event, "_vpid", - &vpid); + ret = get_stream_event_context_int_field_value(err, event, + VPID_FIELD_NAME, &vpid); if (ret) { goto end; } @@ -628,15 +637,16 @@ void handle_lib_unload_event(FILE *err, struct debug_info *debug_info, int ret; ret = get_payload_unsigned_int_field_value(err, - event, "_baddr", &baddr); + event, BADDR_FIELD_NAME, &baddr); if (ret) { - BT_LOGE_STR("Failed to get unsigned int value for _baddr field."); + BT_LOGE_STR("Failed to get unsigned int value for " + BADDR_FIELD_NAME " field."); ret = -1; goto end; } - ret = get_stream_event_context_int_field_value(err, event, "_vpid", - &vpid); + ret = get_stream_event_context_int_field_value(err, event, + VPID_FIELD_NAME, &vpid); if (ret) { goto end; } @@ -663,7 +673,7 @@ void handle_statedump_start(FILE *err, struct debug_info *debug_info, int ret; ret = get_stream_event_context_int_field_value(err, event, - "_vpid", &vpid); + VPID_FIELD_NAME, &vpid); if (ret) { goto end; } diff --git a/plugins/lttng-utils/debug-info.h b/plugins/lttng-utils/debug-info.h index 754a239b..3f067280 100644 --- a/plugins/lttng-utils/debug-info.h +++ b/plugins/lttng-utils/debug-info.h @@ -32,6 +32,16 @@ #include #include +#define VPID_FIELD_NAME "vpid" +#define IP_FIELD_NAME "ip" +#define BADDR_FIELD_NAME "baddr" +#define CRC32_FIELD_NAME "crc32" +#define BUILD_ID_FIELD_NAME "build_id" +#define FILENAME_FIELD_NAME "filename" +#define IS_PIC_FIELD_NAME "is_pic" +#define MEMSZ_FIELD_NAME "memsz" +#define PATH_FIELD_NAME "path" + enum debug_info_stream_state { /* * We know the stream exists but we have never received a