[PATCH 17/28] perf tools: Move srcline definitions to separate header

From: Arnaldo Carvalho de Melo
Date: Wed Apr 19 2017 - 12:21:44 EST


From: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

Out of util.h into a new file, srcline.h

Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
Cc: David Ahern <dsahern@xxxxxxxxx>
Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
Cc: Wang Nan <wangnan0@xxxxxxxxxx>
Link: http://lkml.kernel.org/n/tip-ludnlm4djqcdjziekzr4s3u9@xxxxxxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/perf/ui/browsers/hists.c | 1 +
tools/perf/ui/stdio/hist.c | 1 +
tools/perf/util/hist.c | 1 +
tools/perf/util/map.c | 1 +
tools/perf/util/sort.h | 1 +
tools/perf/util/srcline.c | 1 +
tools/perf/util/srcline.h | 34 ++++++++++++++++++++++++++++++++++
tools/perf/util/util.h | 27 ---------------------------
8 files changed, 40 insertions(+), 27 deletions(-)
create mode 100644 tools/perf/util/srcline.h

diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c
index 56f5c038689e..ac7f6a3e4a86 100644
--- a/tools/perf/ui/browsers/hists.c
+++ b/tools/perf/ui/browsers/hists.c
@@ -19,6 +19,7 @@
#include "../ui.h"
#include "map.h"
#include "annotate.h"
+#include "srcline.h"

#include "sane_ctype.h"

diff --git a/tools/perf/ui/stdio/hist.c b/tools/perf/ui/stdio/hist.c
index 297a79c69b71..66aa4eb369f1 100644
--- a/tools/perf/ui/stdio/hist.c
+++ b/tools/perf/ui/stdio/hist.c
@@ -4,6 +4,7 @@
#include "../../util/hist.h"
#include "../../util/sort.h"
#include "../../util/evsel.h"
+#include "../../util/srcline.h"
#include "../../util/sane_ctype.h"

static size_t callchain__fprintf_left_margin(FILE *fp, int left_margin)
diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c
index 61bf304206fd..af3bd5d31d99 100644
--- a/tools/perf/util/hist.c
+++ b/tools/perf/util/hist.c
@@ -8,6 +8,7 @@
#include "evlist.h"
#include "evsel.h"
#include "annotate.h"
+#include "srcline.h"
#include "ui/progress.h"
#include <math.h>

diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c
index c1870ac365a3..9059d20c3b8a 100644
--- a/tools/perf/util/map.c
+++ b/tools/perf/util/map.c
@@ -16,6 +16,7 @@
#include "debug.h"
#include "machine.h"
#include <linux/string.h>
+#include "srcline.h"
#include "unwind.h"

static void __maps__insert(struct maps *maps, struct map *map);
diff --git a/tools/perf/util/sort.h b/tools/perf/util/sort.h
index e35fb186d048..535903297cee 100644
--- a/tools/perf/util/sort.h
+++ b/tools/perf/util/sort.h
@@ -21,6 +21,7 @@
#include <subcmd/parse-options.h>
#include "parse-events.h"
#include "hist.h"
+#include "srcline.h"
#include "thread.h"

extern regex_t parent_regex;
diff --git a/tools/perf/util/srcline.c b/tools/perf/util/srcline.c
index ef192802edc9..df051a52393c 100644
--- a/tools/perf/util/srcline.c
+++ b/tools/perf/util/srcline.c
@@ -9,6 +9,7 @@
#include "util/util.h"
#include "util/debug.h"
#include "util/callchain.h"
+#include "srcline.h"

#include "symbol.h"

diff --git a/tools/perf/util/srcline.h b/tools/perf/util/srcline.h
new file mode 100644
index 000000000000..7b52ba88676e
--- /dev/null
+++ b/tools/perf/util/srcline.h
@@ -0,0 +1,34 @@
+#ifndef PERF_SRCLINE_H
+#define PERF_SRCLINE_H
+
+#include <linux/list.h>
+#include <linux/types.h>
+
+struct dso;
+struct symbol;
+
+extern bool srcline_full_filename;
+char *get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
+ bool show_sym, bool show_addr);
+char *__get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
+ bool show_sym, bool show_addr, bool unwind_inlines);
+void free_srcline(char *srcline);
+
+#define SRCLINE_UNKNOWN ((char *) "??:0")
+
+struct inline_list {
+ char *filename;
+ char *funcname;
+ unsigned int line_nr;
+ struct list_head list;
+};
+
+struct inline_node {
+ u64 addr;
+ struct list_head val;
+};
+
+struct inline_node *dso__parse_addr_inlines(struct dso *dso, u64 addr);
+void inline_node__delete(struct inline_node *node);
+
+#endif /* PERF_SRCLINE_H */
diff --git a/tools/perf/util/util.h b/tools/perf/util/util.h
index 4d9069ab569a..46cfdccc32bc 100644
--- a/tools/perf/util/util.h
+++ b/tools/perf/util/util.h
@@ -144,8 +144,6 @@ struct parse_tag {

unsigned long parse_tag_value(const char *str, struct parse_tag *tags);

-#define SRCLINE_UNKNOWN ((char *) "??:0")
-
static inline int path__join(char *bf, size_t size,
const char *path1, const char *path2)
{
@@ -161,16 +159,6 @@ static inline int path__join3(char *bf, size_t size,
path2, path2[0] ? "/" : "", path3);
}

-struct dso;
-struct symbol;
-
-extern bool srcline_full_filename;
-char *get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
- bool show_sym, bool show_addr);
-char *__get_srcline(struct dso *dso, u64 addr, struct symbol *sym,
- bool show_sym, bool show_addr, bool unwind_inlines);
-void free_srcline(char *srcline);
-
int perf_event_paranoid(void);

void mem_bswap_64(void *src, int byte_size);
@@ -221,19 +209,4 @@ int timestamp__scnprintf_usec(u64 timestamp, char *buf, size_t sz);

int unit_number__scnprintf(char *buf, size_t size, u64 n);

-struct inline_list {
- char *filename;
- char *funcname;
- unsigned int line_nr;
- struct list_head list;
-};
-
-struct inline_node {
- u64 addr;
- struct list_head val;
-};
-
-struct inline_node *dso__parse_addr_inlines(struct dso *dso, u64 addr);
-void inline_node__delete(struct inline_node *node);
-
#endif /* GIT_COMPAT_UTIL_H */
--
2.9.3