From 6c911f6a025e0a4caad24300ef67ad324d2155e1 Mon Sep 17 00:00:00 2001 From: Francis Deslauriers Date: Tue, 7 May 2019 17:32:29 -0400 Subject: [PATCH] Fix: flt.lttng-utils.debug-info: `ip` field is 32bit on 32bit cpus MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Issue ===== The debug-info component enforces that the `ip` field used to resolve addresses is a 64bit integer, but the LTTng UST `ip` context field is 32bit on a 32bit cpu. A debug-info component thus fail to recognize that the trace has all the necessary information to resolve the addresses. Here is the metadata representing the context on a 32bit system: event.context := struct { integer { size = 32; align = 8; signed = 1; encoding = none; base = 10; } _vpid; integer { size = 32; align = 8; signed = 0; encoding = none; base = 16; } _ip; }; Here is the metadata representing the context on a 64bit system: event.context := struct { integer { size = 32; align = 8; signed = 1; encoding = none; base = 10; } _vpid; integer { size = 64; align = 8; signed = 0; encoding = none; base = 16; } _ip; }; Solution ======== Remove the integer size check in the `is_event_common_ctx_dbg_info_compatible()` function. Drawback ======== None. Signed-off-by: Francis Deslauriers Change-Id: I3938a5f71a2406876573a5aa381f7d3dd4d632d6 Reviewed-on: https://review.lttng.org/c/babeltrace/+/1270 Reviewed-by: Jérémie Galarneau --- plugins/lttng-utils/debug-info/utils.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/plugins/lttng-utils/debug-info/utils.c b/plugins/lttng-utils/debug-info/utils.c index d9c5fa50..8f1bddea 100644 --- a/plugins/lttng-utils/debug-info/utils.c +++ b/plugins/lttng-utils/debug-info/utils.c @@ -88,10 +88,6 @@ bt_bool is_event_common_ctx_dbg_info_compatible(const bt_field_class *in_field_c goto end; } - if (bt_field_class_integer_get_field_value_range(ip_fc) != 64) { - goto end; - } - member = bt_field_class_structure_borrow_member_by_name_const( in_field_class, VPID_FIELD_NAME); if (!member) { -- 2.34.1