We unconditionally call trace_init_profile in read_data_info, even if we don't have profile set. This causes trace-cmd report to fail out if you recorded using instances because the profile stuff doesn't find the handle for the instance when it does the record. So do 2 things
1) Only call trace_init_profile if we actually specified --profile. 2) Make sure to call trace_init_profile for all of the instance handles so that we get all the info we want and don't bail out. With this patch I can now do trace-cmd report on a trace.dat file that only had events in instances. Thanks, Signed-off-by: Josef Bacik <[email protected]> --- trace-read.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/trace-read.c b/trace-read.c index 103bc0c..50e7a5d 100644 --- a/trace-read.c +++ b/trace-read.c @@ -1066,7 +1066,6 @@ static void read_data_info(struct list_head *handle_list, enum output_type otype last_hook->next = tracecmd_hooks(handles->handle); else hooks = tracecmd_hooks(handles->handle); - trace_init_profile(handles->handle, hooks, global); process_filters(handles); @@ -1087,7 +1086,11 @@ static void read_data_info(struct list_head *handle_list, enum output_type otype continue; } add_handle(new_handle, name); + if (profile) + trace_init_profile(new_handle, hooks, global); } + } else if (profile) { + trace_init_profile(handles->handle, hooks, global); } } -- 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

