diff options
| author | Ingo Molnar <mingo@elte.hu> | 2011-08-09 10:44:27 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2011-08-09 10:44:27 -0400 |
| commit | e710574de10b181c159a67af75af0245de33a4b9 (patch) | |
| tree | 292aeb4ab31d7e954c146b8b00829c67501fd0d6 | |
| parent | a34668f6beb4ab01e07683276d6a24bab6c175e0 (diff) | |
| parent | 9941c96ad869d10f7e34e03990ce450ab8fcb83d (diff) | |
Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent
| -rw-r--r-- | tools/perf/Makefile | 21 | ||||
| -rw-r--r-- | tools/perf/builtin-lock.c | 8 | ||||
| -rw-r--r-- | tools/perf/util/config.c | 7 | ||||
| -rw-r--r-- | tools/perf/util/probe-event.c | 12 | ||||
| -rw-r--r-- | tools/perf/util/setup.py | 21 |
5 files changed, 46 insertions, 23 deletions
diff --git a/tools/perf/Makefile b/tools/perf/Makefile index 56d62d3fb167..3b8f7b80376b 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile | |||
| @@ -181,9 +181,9 @@ strip-libs = $(filter-out -l%,$(1)) | |||
| 181 | 181 | ||
| 182 | $(OUTPUT)python/perf.so: $(PYRF_OBJS) | 182 | $(OUTPUT)python/perf.so: $(PYRF_OBJS) |
| 183 | $(QUIET_GEN)CFLAGS='$(BASIC_CFLAGS)' $(PYTHON_WORD) util/setup.py \ | 183 | $(QUIET_GEN)CFLAGS='$(BASIC_CFLAGS)' $(PYTHON_WORD) util/setup.py \ |
| 184 | --quiet build_ext \ | 184 | --quiet build_ext; \ |
| 185 | --build-lib='$(OUTPUT)python' \ | 185 | mkdir -p $(OUTPUT)python && \ |
| 186 | --build-temp='$(OUTPUT)python/temp' | 186 | cp $(PYTHON_EXTBUILD_LIB)perf.so $(OUTPUT)python/ |
| 187 | # | 187 | # |
| 188 | # No Perl scripts right now: | 188 | # No Perl scripts right now: |
| 189 | # | 189 | # |
| @@ -509,9 +509,13 @@ else | |||
| 509 | 509 | ||
| 510 | PYTHON_WORD := $(call shell-wordify,$(PYTHON)) | 510 | PYTHON_WORD := $(call shell-wordify,$(PYTHON)) |
| 511 | 511 | ||
| 512 | python-clean := $(PYTHON_WORD) util/setup.py clean \ | 512 | # python extension build directories |
| 513 | --build-lib='$(OUTPUT)python' \ | 513 | PYTHON_EXTBUILD := $(OUTPUT)python_ext_build/ |
| 514 | --build-temp='$(OUTPUT)python/temp' | 514 | PYTHON_EXTBUILD_LIB := $(PYTHON_EXTBUILD)lib/ |
| 515 | PYTHON_EXTBUILD_TMP := $(PYTHON_EXTBUILD)tmp/ | ||
| 516 | export PYTHON_EXTBUILD_LIB PYTHON_EXTBUILD_TMP | ||
| 517 | |||
| 518 | python-clean := rm -rf $(PYTHON_EXTBUILD) $(OUTPUT)python/perf.so | ||
| 515 | 519 | ||
| 516 | ifdef NO_LIBPYTHON | 520 | ifdef NO_LIBPYTHON |
| 517 | $(call disable-python) | 521 | $(call disable-python) |
| @@ -868,6 +872,9 @@ install: all | |||
| 868 | $(INSTALL) scripts/python/*.py -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/python' | 872 | $(INSTALL) scripts/python/*.py -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/python' |
| 869 | $(INSTALL) scripts/python/bin/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/python/bin' | 873 | $(INSTALL) scripts/python/bin/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/python/bin' |
| 870 | 874 | ||
| 875 | install-python_ext: | ||
| 876 | $(PYTHON_WORD) util/setup.py --quiet install --root='/$(DESTDIR_SQ)' | ||
| 877 | |||
| 871 | install-doc: | 878 | install-doc: |
| 872 | $(MAKE) -C Documentation install | 879 | $(MAKE) -C Documentation install |
| 873 | 880 | ||
| @@ -895,7 +902,7 @@ quick-install-html: | |||
| 895 | ### Cleaning rules | 902 | ### Cleaning rules |
| 896 | 903 | ||
| 897 | clean: | 904 | clean: |
| 898 | $(RM) $(OUTPUT){*.o,*/*.o,*/*/*.o,*/*/*/*.o,$(LIB_FILE),perf-archive} | 905 | $(RM) $(LIB_OBJS) $(BUILTIN_OBJS) $(LIB_FILE) $(OUTPUT)perf-archive $(OUTPUT)perf.o $(LANG_BINDINGS) |
| 899 | $(RM) $(ALL_PROGRAMS) perf | 906 | $(RM) $(ALL_PROGRAMS) perf |
| 900 | $(RM) *.spec *.pyc *.pyo */*.pyc */*.pyo $(OUTPUT)common-cmds.h TAGS tags cscope* | 907 | $(RM) *.spec *.pyc *.pyo */*.pyc */*.pyo $(OUTPUT)common-cmds.h TAGS tags cscope* |
| 901 | $(MAKE) -C Documentation/ clean | 908 | $(MAKE) -C Documentation/ clean |
diff --git a/tools/perf/builtin-lock.c b/tools/perf/builtin-lock.c index 9ac05aafd9b2..899080ace267 100644 --- a/tools/perf/builtin-lock.c +++ b/tools/perf/builtin-lock.c | |||
| @@ -942,10 +942,10 @@ static const char *record_args[] = { | |||
| 942 | "-f", | 942 | "-f", |
| 943 | "-m", "1024", | 943 | "-m", "1024", |
| 944 | "-c", "1", | 944 | "-c", "1", |
| 945 | "-e", "lock:lock_acquire:r", | 945 | "-e", "lock:lock_acquire", |
| 946 | "-e", "lock:lock_acquired:r", | 946 | "-e", "lock:lock_acquired", |
| 947 | "-e", "lock:lock_contended:r", | 947 | "-e", "lock:lock_contended", |
| 948 | "-e", "lock:lock_release:r", | 948 | "-e", "lock:lock_release", |
| 949 | }; | 949 | }; |
| 950 | 950 | ||
| 951 | static int __cmd_record(int argc, const char **argv) | 951 | static int __cmd_record(int argc, const char **argv) |
diff --git a/tools/perf/util/config.c b/tools/perf/util/config.c index e02d78cae70f..6c86eca8b1b7 100644 --- a/tools/perf/util/config.c +++ b/tools/perf/util/config.c | |||
| @@ -399,7 +399,6 @@ static int perf_config_global(void) | |||
| 399 | int perf_config(config_fn_t fn, void *data) | 399 | int perf_config(config_fn_t fn, void *data) |
| 400 | { | 400 | { |
| 401 | int ret = 0, found = 0; | 401 | int ret = 0, found = 0; |
| 402 | char *repo_config = NULL; | ||
| 403 | const char *home = NULL; | 402 | const char *home = NULL; |
| 404 | 403 | ||
| 405 | /* Setting $PERF_CONFIG makes perf read _only_ the given config file. */ | 404 | /* Setting $PERF_CONFIG makes perf read _only_ the given config file. */ |
| @@ -421,12 +420,6 @@ int perf_config(config_fn_t fn, void *data) | |||
| 421 | free(user_config); | 420 | free(user_config); |
| 422 | } | 421 | } |
| 423 | 422 | ||
| 424 | repo_config = perf_pathdup("config"); | ||
| 425 | if (!access(repo_config, R_OK)) { | ||
| 426 | ret += perf_config_from_file(fn, repo_config, data); | ||
| 427 | found += 1; | ||
| 428 | } | ||
| 429 | free(repo_config); | ||
| 430 | if (found == 0) | 423 | if (found == 0) |
| 431 | return -1; | 424 | return -1; |
| 432 | return ret; | 425 | return ret; |
diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c index b82d54fa2c56..1c7bfa5fe0a8 100644 --- a/tools/perf/util/probe-event.c +++ b/tools/perf/util/probe-event.c | |||
| @@ -1820,11 +1820,15 @@ static int convert_to_probe_trace_events(struct perf_probe_event *pev, | |||
| 1820 | ret = -ENOMEM; | 1820 | ret = -ENOMEM; |
| 1821 | goto error; | 1821 | goto error; |
| 1822 | } | 1822 | } |
| 1823 | tev->point.module = strdup(module); | 1823 | |
| 1824 | if (tev->point.module == NULL) { | 1824 | if (module) { |
| 1825 | ret = -ENOMEM; | 1825 | tev->point.module = strdup(module); |
| 1826 | goto error; | 1826 | if (tev->point.module == NULL) { |
| 1827 | ret = -ENOMEM; | ||
| 1828 | goto error; | ||
| 1829 | } | ||
| 1827 | } | 1830 | } |
| 1831 | |||
| 1828 | tev->point.offset = pev->point.offset; | 1832 | tev->point.offset = pev->point.offset; |
| 1829 | tev->point.retprobe = pev->point.retprobe; | 1833 | tev->point.retprobe = pev->point.retprobe; |
| 1830 | tev->nargs = pev->nargs; | 1834 | tev->nargs = pev->nargs; |
diff --git a/tools/perf/util/setup.py b/tools/perf/util/setup.py index bbc982f5dd8b..95d370074928 100644 --- a/tools/perf/util/setup.py +++ b/tools/perf/util/setup.py | |||
| @@ -3,9 +3,27 @@ | |||
| 3 | from distutils.core import setup, Extension | 3 | from distutils.core import setup, Extension |
| 4 | from os import getenv | 4 | from os import getenv |
| 5 | 5 | ||
| 6 | from distutils.command.build_ext import build_ext as _build_ext | ||
| 7 | from distutils.command.install_lib import install_lib as _install_lib | ||
| 8 | |||
| 9 | class build_ext(_build_ext): | ||
| 10 | def finalize_options(self): | ||
| 11 | _build_ext.finalize_options(self) | ||
| 12 | self.build_lib = build_lib | ||
| 13 | self.build_temp = build_tmp | ||
| 14 | |||
| 15 | class install_lib(_install_lib): | ||
| 16 | def finalize_options(self): | ||
| 17 | _install_lib.finalize_options(self) | ||
| 18 | self.build_dir = build_lib | ||
| 19 | |||
| 20 | |||
| 6 | cflags = ['-fno-strict-aliasing', '-Wno-write-strings'] | 21 | cflags = ['-fno-strict-aliasing', '-Wno-write-strings'] |
| 7 | cflags += getenv('CFLAGS', '').split() | 22 | cflags += getenv('CFLAGS', '').split() |
| 8 | 23 | ||
| 24 | build_lib = getenv('PYTHON_EXTBUILD_LIB') | ||
| 25 | build_tmp = getenv('PYTHON_EXTBUILD_TMP') | ||
| 26 | |||
| 9 | perf = Extension('perf', | 27 | perf = Extension('perf', |
| 10 | sources = ['util/python.c', 'util/ctype.c', 'util/evlist.c', | 28 | sources = ['util/python.c', 'util/ctype.c', 'util/evlist.c', |
| 11 | 'util/evsel.c', 'util/cpumap.c', 'util/thread_map.c', | 29 | 'util/evsel.c', 'util/cpumap.c', 'util/thread_map.c', |
| @@ -21,4 +39,5 @@ setup(name='perf', | |||
| 21 | author_email='acme@redhat.com', | 39 | author_email='acme@redhat.com', |
| 22 | license='GPLv2', | 40 | license='GPLv2', |
| 23 | url='http://perf.wiki.kernel.org', | 41 | url='http://perf.wiki.kernel.org', |
| 24 | ext_modules=[perf]) | 42 | ext_modules=[perf], |
| 43 | cmdclass={'build_ext': build_ext, 'install_lib': install_lib}) | ||
