diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c index 20fac5083771..8a83bd835327 100644 --- a/tools/perf/builtin-trace.c +++ b/tools/perf/builtin-trace.c @@ -2241,13 +2241,13 @@ static int trace__replay(struct trace *trace) /* add tid to output */ trace->multiple_threads = true; - if (symbol__init() < 0) - return -1; - session = perf_session__new(&file, false, &trace->tool); if (session == NULL) return -ENOMEM; + if (symbol__init() < 0) + goto out; + trace->host = &session->machines.host; err = perf_session__set_tracepoints_handlers(session, handlers);