perf db-export: Export comm before exporting thread
authorAdrian Hunter <adrian.hunter@intel.com>
Wed, 10 Jul 2019 08:57:54 +0000 (11:57 +0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 10 Jul 2019 15:12:25 +0000 (12:12 -0300)
Export comm before exporting the non-main thread because
db_export__thread() also exports the comm_thread.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/20190710085810.1650-6-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/db-export.c

index 63f9edf..99ad759 100644 (file)
@@ -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);