diff --git a/tools/perf/util/db-export.c b/tools/perf/util/db-export.c index 63f9edf65eee..99ad759561de 100644 --- a/tools/perf/util/db-export.c +++ b/tools/perf/util/db-export.c @@ -312,6 +312,12 @@ int db_export__sample(struct db_export *dbe, union perf_event *event, main_thread); if (err) goto out_put; + if (comm) { + err = db_export__exec_comm(dbe, comm, main_thread); + if (err) + goto out_put; + es.comm_db_id = comm->db_id; + } } if (thread != main_thread) { @@ -321,13 +327,6 @@ int db_export__sample(struct db_export *dbe, union perf_event *event, goto out_put; } - if (comm) { - err = db_export__exec_comm(dbe, comm, main_thread); - if (err) - goto out_put; - es.comm_db_id = comm->db_id; - } - es.db_id = ++dbe->sample_last_db_id; err = db_ids_from_al(dbe, al, &es.dso_db_id, &es.sym_db_id, &es.offset);