]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
perf script python: Move dsoname code to a new function
authorJin Yao <yao.jin@linux.intel.com>
Fri, 1 Jun 2018 09:01:01 +0000 (17:01 +0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 6 Jun 2018 15:52:09 +0000 (12:52 -0300)
This patch creates a new function get_dsoname() and move the code which
gets the dsoname string to this function.

That's because in next patch, when we process LBR data, we will also
need get_dsoname() to return dsoname for branch from/to.

Signed-off-by: Jin Yao <yao.jin@linux.intel.com>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1527843663-32288-2-git-send-email-yao.jin@linux.intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/scripting-engines/trace-event-python.c

index 7f8afacd08eeda5036a8cc34c22965ed8a6c5167..f863e96fb7bc611e87ca2cc85955a5c15024e5f5 100644 (file)
@@ -372,6 +372,19 @@ static PyObject *get_field_numeric_entry(struct event_format *event,
        return obj;
 }
 
+static const char *get_dsoname(struct map *map)
+{
+       const char *dsoname = "[unknown]";
+
+       if (map && map->dso) {
+               if (symbol_conf.show_kernel_path && map->dso->long_name)
+                       dsoname = map->dso->long_name;
+               else
+                       dsoname = map->dso->name;
+       }
+
+       return dsoname;
+}
 
 static PyObject *python_process_callchain(struct perf_sample *sample,
                                         struct perf_evsel *evsel,
@@ -427,14 +440,8 @@ static PyObject *python_process_callchain(struct perf_sample *sample,
                }
 
                if (node->map) {
-                       struct map *map = node->map;
-                       const char *dsoname = "[unknown]";
-                       if (map && map->dso) {
-                               if (symbol_conf.show_kernel_path && map->dso->long_name)
-                                       dsoname = map->dso->long_name;
-                               else
-                                       dsoname = map->dso->name;
-                       }
+                       const char *dsoname = get_dsoname(node->map);
+
                        pydict_set_item_string_decref(pyelem, "dso",
                                        _PyUnicode_FromString(dsoname));
                }