Commit-ID:  46cb25b1a0ee74bf4a79cfb3081ae3567b2f7135
Gitweb:     http://git.kernel.org/tip/46cb25b1a0ee74bf4a79cfb3081ae3567b2f7135
Author:     Arnaldo Carvalho de Melo <a...@redhat.com>
AuthorDate: Wed, 26 Oct 2016 19:02:35 -0200
Committer:  Arnaldo Carvalho de Melo <a...@redhat.com>
CommitDate: Fri, 28 Oct 2016 11:29:45 -0200

perf tools: Add missing object file to the python binding linkage list

In ac12f6764c50 ("perf tools: Implement branch_type event parameter") we
started using the parse_branch_str() function from one of the files used
in the python binding, which caused this entry in 'perf test' to fail:

  # perf test -v python
  16: Try 'import perf' in python, checking link problems      :
  --- start ---
  test child forked, pid 16667
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
  ImportError: /tmp/build/perf/python/perf.so: undefined symbol:
  parse_branch_str
  test child finished with -1
  ---- end ----
  Try 'import perf' in python, checking link problems: FAILED!
  #

I must've commited some mistake when running 'perf test' to send the
pull request for the perf-core-for-mingo-20161024 tag, to have let this
regression to pass, sigh.

Just add tools/perf/util/parse-branch-options.c and switch from using
ui__warning(), that is not available in the python binding, use
pr_warning() instead, which is good enough for this case.

Now:

  # perf test python
  16: Try 'import perf' in python, checking link problems      : Ok
  #

Cc: Adrian Hunter <adrian.hun...@intel.com>
Cc: David Ahern <dsah...@gmail.com>
Cc: Jiri Olsa <jo...@kernel.org>
Cc: Namhyung Kim <namhy...@kernel.org>
Cc: Wang Nan <wangn...@huawei.com>
Cc: Andi Kleen <a...@linux.intel.com>
Fixes: ac12f6764c50 ("perf tools: Implement branch_type event parameter")
Link: http://lkml.kernel.org/n/tip-9kn1ct1cx9ppwqlmzl6z0...@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>
---
 tools/perf/util/parse-branch-options.c | 2 +-
 tools/perf/util/python-ext-sources     | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/parse-branch-options.c 
b/tools/perf/util/parse-branch-options.c
index 3634d69..38fd115 100644
--- a/tools/perf/util/parse-branch-options.c
+++ b/tools/perf/util/parse-branch-options.c
@@ -64,7 +64,7 @@ int parse_branch_str(const char *str, __u64 *mode)
                }
                if (!br->name) {
                        ret = -1;
-                       ui__warning("unknown branch filter %s,"
+                       pr_warning("unknown branch filter %s,"
                                    " check man page\n", s);
                        goto error;
                }
diff --git a/tools/perf/util/python-ext-sources 
b/tools/perf/util/python-ext-sources
index b7d4f4a..0546a43 100644
--- a/tools/perf/util/python-ext-sources
+++ b/tools/perf/util/python-ext-sources
@@ -18,6 +18,7 @@ util/thread_map.c
 util/util.c
 util/xyarray.c
 util/cgroup.c
+util/parse-branch-options.c
 util/rblist.c
 util/counts.c
 util/strlist.c

Reply via email to