lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140515080537.GA4009@krava.brq.redhat.com>
Date:	Thu, 15 May 2014 10:05:37 +0200
From:	Jiri Olsa <jolsa@...hat.com>
To:	Alexis Berlemont <alexis.berlemont@...il.com>
Cc:	linux-kernel@...r.kernel.org, acme@...stprotocols.net,
	dsahern@...il.com, mingo@...nel.org
Subject: Re: [PATCH 00/34] perf and kconfig / kbuild

On Wed, May 14, 2014 at 12:02:55AM +0200, Alexis Berlemont wrote:
> Hello, 
> 
> A few months ago, I tried to make a proposal to introduce Kconfig in
> perf's generation procedure.
> (cf. https://lkml.org/lkml/2013/12/20/511)
> 
> I started from David Ahern's work; I was not aware that Jiri Olsa
> pushed further the idea and proposed an alternative which integrated
> kbuild too.

hi,
I'll try to review this till end of the week

thanks,
jirka

> 
> So, here is another proposal based on Jiri Olsa work (from April 2013). 
> * Most of the NO_* and HAVE_* makefile variables were removed on
>   behalf of Kconfig's ones (CONFIG_*); perf source code was modified
>   accordingly;
> * These changes make the glue files tools/perf/config/Makefile.fix-* useless
> * The build test cases now relies on generated configuration files (in
>   tools/perf/tests/configs); 
> 
> Hope this helps,
> 
> Alexis.
> 
> Alexis Berlemont (29):
>   perf kbuild: fix recursive invocation of config/features-checks
>   perf kbuild: store in config-detected missing variables (libdir, ...)
>   perf kbuild: remove useless #ifdef directives
>   perf kbuild: fix a link issue if BUILTIN_TRACE is disabled
>   perf kbuild: add missing files and missing flags in Kbuild files
>   perf kbuild: update kbuild files according to last changes
>   perf kbuild: remove legacy slang-related build variables
>   perf kbuild: remove legacy libaudit-related build variables
>   perf kbuild: remove legacy libgtk2-related build variables
>   perf kbuild: remove legacy libperl-related build variables
>   perf kbuild: remove legacy timerfd-related build variable
>   perf kbuild: remove legacy demangle-related build variables
>   perf kbuild: remove legacy on_exit-related build variable
>   perf kbuild: remove legacy backtrace-related build variable
>   perf kbuild: remove legacy numa-related build variable
>   perf kbuild: remove legacy bionic-related build variable
>   perf kbuild: remove legacy libelf-related build variables (1st part)
>   perf kbuild: remove legacy libelf-related build variables (2nd part)
>   perf kbuild: remove legacy libdwarf-related build variables
>   perf kbuild: remove legacy libunwind-related build variables
>   perf kbuild: remove legacy libpython-related build variable
>   perf kbuild: add generated Kconfig build-test cases
>   perf kbuild: fix installation of traceevent plugins
>   perf kbuild: fix tarpkg target in tests/make
>   perf kbuild: update Kbuild files with new and removed sources
>   perf kbuild: update build test configurations
>   perf kbuild: relocate the configs generating script
>   perf kbuild: minor changes
>   perf kbuild: remove Makefile.perf
> 
> Jiri Olsa (5):
>   kbuild: Introduce KBUILD_AUTOCONF variable for auto.conf include
>   kbuild: Introduce KCONFIG_AUTOCONFIGDEP variable for conf tool
>   perf tools: Kbuild builtin source related fixies
>   perf tools: Kbuild source related fixies
>   perf tools: Add kbuild support into Makefile.kbuild
> 
>  scripts/Makefile.build                             |   3 +-
>  scripts/kconfig/confdata.c                         |  11 +-
>  scripts/kconfig/lkc.h                              |   1 +
>  tools/perf/Kbuild                                  |  47 ++
>  tools/perf/Kconfig                                 | 370 ++++++++
>  tools/perf/MANIFEST                                |   1 +
>  tools/perf/Makefile                                |   2 +-
>  tools/perf/Makefile.kbuild                         | 414 +++++++++
>  tools/perf/Makefile.perf                           | 930 ---------------------
>  tools/perf/arch/Kbuild                             |   3 +
>  tools/perf/arch/arm/Makefile                       |   4 +-
>  tools/perf/arch/powerpc/Makefile                   |   2 +-
>  tools/perf/arch/s390/Makefile                      |   2 +-
>  tools/perf/arch/sh/Makefile                        |   2 +-
>  tools/perf/arch/sparc/Makefile                     |   2 +-
>  tools/perf/arch/x86/Kbuild                         |   2 +
>  tools/perf/arch/x86/Makefile                       |   8 +-
>  tools/perf/arch/x86/tests/Kbuild                   |   2 +
>  tools/perf/arch/x86/util/Kbuild                    |   5 +
>  tools/perf/bench/Kbuild                            |  12 +
>  tools/perf/builtin-annotate.c                      |   8 +-
>  tools/perf/builtin-bench.c                         |   5 +-
>  tools/perf/builtin-cmds.h                          |  31 +
>  tools/perf/builtin-help.c                          |   1 +
>  tools/perf/builtin-inject.c                        |   2 +-
>  tools/perf/builtin-kvm.c                           |  32 +-
>  tools/perf/builtin-lock.c                          |   4 +-
>  tools/perf/builtin-mem.c                           |   3 +-
>  tools/perf/builtin-probe.c                         |  15 +-
>  tools/perf/builtin-record.c                        |  14 +-
>  tools/perf/builtin-report.c                        |   3 +
>  tools/perf/builtin-sched.c                         |   2 +
>  tools/perf/builtin-script.c                        |   6 +-
>  tools/perf/builtin-top.c                           |  15 +-
>  tools/perf/config/Makefile                         | 397 +++++----
>  tools/perf/config/defconfig                        |  54 ++
>  tools/perf/perf.c                                  |  53 +-
>  tools/perf/perf.h                                  |   2 +
>  tools/perf/scripts/perl/Perf-Trace-Util/Kbuild     |   3 +
>  tools/perf/scripts/python/Perf-Trace-Util/Kbuild   |   5 +
>  tools/perf/tests/Kbuild                            |  34 +
>  tools/perf/tests/builtin-test.c                    |   3 +-
>  tools/perf/tests/configs/MINIMAL_config            |  60 ++
>  tools/perf/tests/configs/NO_BACKTRACE_config       |  69 ++
>  .../perf/tests/configs/NO_BUILTIN_ANNOTATE_config  |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_BENCH_config   |  69 ++
>  .../tests/configs/NO_BUILTIN_BUILDID_CACHE_config  |  69 ++
>  .../tests/configs/NO_BUILTIN_BUILDID_LIST_config   |  68 ++
>  tools/perf/tests/configs/NO_BUILTIN_DIFF_config    |  68 ++
>  tools/perf/tests/configs/NO_BUILTIN_EVLIST_config  |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_HELP_config    |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_INJECT_config  |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_KMEM_config    |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_KVM_config     |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_LIST_config    |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_LOCK_config    |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_MEM_config     |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_PROBE_config   |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_RECORD_config  |  60 ++
>  tools/perf/tests/configs/NO_BUILTIN_REPORT_config  |  65 ++
>  tools/perf/tests/configs/NO_BUILTIN_SCHED_config   |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_SCRIPT_config  |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_STAT_config    |  68 ++
>  tools/perf/tests/configs/NO_BUILTIN_TEST_config    |  69 ++
>  .../perf/tests/configs/NO_BUILTIN_TIMECHART_config |  69 ++
>  tools/perf/tests/configs/NO_BUILTIN_TOP_config     |  68 ++
>  tools/perf/tests/configs/NO_BUILTIN_TRACE_config   |  69 ++
>  tools/perf/tests/configs/NO_DEMANGLE_config        |  67 ++
>  tools/perf/tests/configs/NO_GTK2_config            |  69 ++
>  tools/perf/tests/configs/NO_LIBAUDIT_config        |  68 ++
>  tools/perf/tests/configs/NO_LIBDWARF_config        |  67 ++
>  tools/perf/tests/configs/NO_LIBELF_MMAP_config     |  69 ++
>  tools/perf/tests/configs/NO_LIBGTK2_INFOBAR_config |  69 ++
>  tools/perf/tests/configs/NO_LIBGTK2_config         |  67 ++
>  tools/perf/tests/configs/NO_LIBNUMA_config         |  69 ++
>  tools/perf/tests/configs/NO_LIBPERL_config         |  69 ++
>  tools/perf/tests/configs/NO_LIBPYTHON_config       |  69 ++
>  tools/perf/tests/configs/NO_LIBSLANG_config        |  68 ++
>  .../tests/configs/NO_LIBUNWIND_DEBUG_FRAME_config  |  69 ++
>  tools/perf/tests/configs/NO_STDIO_config           |  69 ++
>  tools/perf/tests/configs/NO_TIMERFD_config         |  69 ++
>  tools/perf/tests/configs/NO_TUI_config             |  69 ++
>  tools/perf/tests/configs/NO_UNWIND_config          |  65 ++
>  tools/perf/tests/configs/REF_config                |  69 ++
>  tools/perf/tests/generate_configs.py               |  33 +
>  tools/perf/tests/make                              |  73 +-
>  tools/perf/tests/tests.h                           |   4 +-
>  tools/perf/ui/Kbuild                               |  15 +
>  tools/perf/ui/browsers/Kbuild                      |   9 +
>  tools/perf/ui/browsers/scripts.c                   |   4 +
>  tools/perf/ui/gtk/Kbuild                           |   9 +
>  tools/perf/ui/gtk/browser.c                        |   4 +-
>  tools/perf/ui/gtk/gtk.h                            |   5 +-
>  tools/perf/ui/gtk/util.c                           |   6 +-
>  tools/perf/ui/setup.c                              |  14 +-
>  tools/perf/ui/stdio/Kbuild                         |   1 +
>  tools/perf/ui/tui/Kbuild                           |   4 +
>  tools/perf/ui/ui.h                                 |   4 +-
>  tools/perf/util/Kbuild                             | 125 +++
>  tools/perf/util/PERF-VERSION-GEN                   |   4 +
>  tools/perf/util/annotate.h                         |   4 +-
>  tools/perf/util/generate-cmdlist.sh                |  22 +-
>  tools/perf/util/hist.h                             |   4 +-
>  tools/perf/util/include/dwarf-regs.h               |   4 +-
>  tools/perf/util/map.c                              |   3 +-
>  tools/perf/util/probe-event.c                      |   6 +-
>  tools/perf/util/probe-finder.h                     |   5 +-
>  tools/perf/util/scripting-engines/Kbuild           |  11 +
>  tools/perf/util/setup.py                           |   8 +-
>  tools/perf/util/srcline.c                          |   8 +-
>  tools/perf/util/symbol-elf.c                       |   3 +-
>  tools/perf/util/symbol.h                           |  33 +-
>  tools/perf/util/trace-event-scripting.c            |  13 +-
>  tools/perf/util/unwind-libunwind.c                 |   5 +-
>  tools/perf/util/unwind.h                           |   7 +-
>  tools/perf/util/util.c                             |   5 +-
>  116 files changed, 4556 insertions(+), 1274 deletions(-)
>  create mode 100644 tools/perf/Kbuild
>  create mode 100644 tools/perf/Kconfig
>  create mode 100644 tools/perf/Makefile.kbuild
>  delete mode 100644 tools/perf/Makefile.perf
>  create mode 100644 tools/perf/arch/Kbuild
>  create mode 100644 tools/perf/arch/x86/Kbuild
>  create mode 100644 tools/perf/arch/x86/tests/Kbuild
>  create mode 100644 tools/perf/arch/x86/util/Kbuild
>  create mode 100644 tools/perf/bench/Kbuild
>  create mode 100644 tools/perf/builtin-cmds.h
>  create mode 100644 tools/perf/config/defconfig
>  create mode 100644 tools/perf/scripts/perl/Perf-Trace-Util/Kbuild
>  create mode 100644 tools/perf/scripts/python/Perf-Trace-Util/Kbuild
>  create mode 100644 tools/perf/tests/Kbuild
>  create mode 100644 tools/perf/tests/configs/MINIMAL_config
>  create mode 100644 tools/perf/tests/configs/NO_BACKTRACE_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_ANNOTATE_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_BENCH_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_BUILDID_CACHE_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_BUILDID_LIST_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_DIFF_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_EVLIST_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_HELP_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_INJECT_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_KMEM_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_KVM_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_LIST_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_LOCK_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_MEM_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_PROBE_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_RECORD_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_REPORT_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_SCHED_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_SCRIPT_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_STAT_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_TEST_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_TIMECHART_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_TOP_config
>  create mode 100644 tools/perf/tests/configs/NO_BUILTIN_TRACE_config
>  create mode 100644 tools/perf/tests/configs/NO_DEMANGLE_config
>  create mode 100644 tools/perf/tests/configs/NO_GTK2_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBAUDIT_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBDWARF_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBELF_MMAP_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBGTK2_INFOBAR_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBGTK2_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBNUMA_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBPERL_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBPYTHON_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBSLANG_config
>  create mode 100644 tools/perf/tests/configs/NO_LIBUNWIND_DEBUG_FRAME_config
>  create mode 100644 tools/perf/tests/configs/NO_STDIO_config
>  create mode 100644 tools/perf/tests/configs/NO_TIMERFD_config
>  create mode 100644 tools/perf/tests/configs/NO_TUI_config
>  create mode 100644 tools/perf/tests/configs/NO_UNWIND_config
>  create mode 100644 tools/perf/tests/configs/REF_config
>  create mode 100644 tools/perf/tests/generate_configs.py
>  create mode 100644 tools/perf/ui/Kbuild
>  create mode 100644 tools/perf/ui/browsers/Kbuild
>  create mode 100644 tools/perf/ui/gtk/Kbuild
>  create mode 100644 tools/perf/ui/stdio/Kbuild
>  create mode 100644 tools/perf/ui/tui/Kbuild
>  create mode 100644 tools/perf/util/Kbuild
>  create mode 100644 tools/perf/util/scripting-engines/Kbuild
> 
> -- 
> 1.9.2
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ