diff options
22 files changed, 293 insertions, 0 deletions
diff --git a/recipes-kernel/linux/files/features/ftrace/ftrace.cfg b/recipes-kernel/linux/files/features/ftrace/ftrace.cfg new file mode 100644 index 0000000..c22328d --- /dev/null +++ b/recipes-kernel/linux/files/features/ftrace/ftrace.cfg @@ -0,0 +1,4 @@ +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +CONFIG_FTRACE_SYSCALLS=y diff --git a/recipes-kernel/linux/files/features/ftrace/ftrace.scc b/recipes-kernel/linux/files/features/ftrace/ftrace.scc new file mode 100644 index 0000000..decfbc4 --- /dev/null +++ b/recipes-kernel/linux/files/features/ftrace/ftrace.scc @@ -0,0 +1,4 @@ +define KFEATURE_DESCRIPTION "Enable Function Tracer" +define KFEATURE_COMPATIBILITY all + +kconf non-hardware ftrace.cfg diff --git a/recipes-kernel/linux/files/features/latencytop/latencytop.cfg b/recipes-kernel/linux/files/features/latencytop/latencytop.cfg new file mode 100644 index 0000000..0a42694 --- /dev/null +++ b/recipes-kernel/linux/files/features/latencytop/latencytop.cfg @@ -0,0 +1 @@ +CONFIG_LATENCYTOP=y diff --git a/recipes-kernel/linux/files/features/latencytop/latencytop.scc b/recipes-kernel/linux/files/features/latencytop/latencytop.scc new file mode 100644 index 0000000..923b5d9 --- /dev/null +++ b/recipes-kernel/linux/files/features/latencytop/latencytop.scc @@ -0,0 +1,4 @@ +define KFEATURE_DESCRIPTION "Enable latencytop" +define KFEATURE_COMPATIBILITY arch + +kconf non-hardware latencytop.cfg diff --git a/recipes-kernel/linux/files/features/lttng/lttng.cfg b/recipes-kernel/linux/files/features/lttng/lttng.cfg new file mode 100644 index 0000000..510725c --- /dev/null +++ b/recipes-kernel/linux/files/features/lttng/lttng.cfg @@ -0,0 +1 @@ +CONFIG_TRACEPOINTS=y diff --git a/recipes-kernel/linux/files/features/lttng/lttng.scc b/recipes-kernel/linux/files/features/lttng/lttng.scc new file mode 100644 index 0000000..cf0bae9 --- /dev/null +++ b/recipes-kernel/linux/files/features/lttng/lttng.scc @@ -0,0 +1,7 @@ +define KFEATURE_DESCRIPTION "Enable lttng + ftrace" +define KFEATURE_COMPATIBILITY arch + +include features/ftrace/ftrace.scc + +kconf non-hardware lttng.cfg + diff --git a/recipes-kernel/linux/files/features/oprofile/oprofile.cfg b/recipes-kernel/linux/files/features/oprofile/oprofile.cfg new file mode 100644 index 0000000..4efd0d5 --- /dev/null +++ b/recipes-kernel/linux/files/features/oprofile/oprofile.cfg @@ -0,0 +1 @@ +CONFIG_OPROFILE=y diff --git a/recipes-kernel/linux/files/features/oprofile/oprofile.scc b/recipes-kernel/linux/files/features/oprofile/oprofile.scc new file mode 100644 index 0000000..fa622eb --- /dev/null +++ b/recipes-kernel/linux/files/features/oprofile/oprofile.scc @@ -0,0 +1,6 @@ +define KFEATURE_DESCRIPTION "Enable latencytop" +define KFEATURE_COMPATIBILITY arch + +include features/profiling/profiling.scc + +kconf non-hardware oprofile.cfg diff --git a/recipes-kernel/linux/files/features/perf/perf-add-SLANG_INC-for-slang.h.patch b/recipes-kernel/linux/files/features/perf/perf-add-SLANG_INC-for-slang.h.patch new file mode 100644 index 0000000..4ae1300 --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf-add-SLANG_INC-for-slang.h.patch @@ -0,0 +1,44 @@ +From a4c7a048fe3407e8eea0020db4a9c41d3feb8247 Mon Sep 17 00:00:00 2001 +From: Liang Li <liang.li@windriver.com> +Date: Wed, 22 Aug 2012 16:04:50 +0800 +Subject: [PATCH] perf: add SLANG_INC for slang.h + +CFLAGS was previously hard coded to contain "-I/usr/include/slang" to +work with hosts that have "/usr/include/slang/slang.h" as well as hosts +that have "/usr/include/slang.h". This path can cause compile warnings +like: + +cc1: warning: '/usr/include/slang' doesn't exists. + +or + +cc1: warning: include location "/usr/include/slang" is unsafe for +cross-compilation [-Wpoison-system-directories] + +Then in some cases warnings become errors if WERROR is enabled hence +build errors. + +To fix this issue, we can use -idirafter to downgrade the priority of the +default hard coded path. We can also make the slang include directory +a variable, to allow the user to specify SLANG_INC and set their own +include location. And add a '=' prefix to indicate better +compatibility with sysroot/cross compile cases. + +Signed-off-by: Liang Li <liang.li@windriver.com> +diff --git a/tools/perf/Makefile b/tools/perf/Makefile +index ffb31df..485c0f4 100644 +--- a/tools/perf/Makefile ++++ b/tools/perf/Makefile +@@ -562,9 +562,10 @@ ifndef NO_NEWT + ifneq ($(call try-cc,$(SOURCE_NEWT),$(FLAGS_NEWT)),y) + msg := $(warning newt not found, disables TUI support. Please install newt-devel or libnewt-dev); + else +- # Fedora has /usr/include/slang/slang.h, but ubuntu /usr/include/slang.h +- BASIC_CFLAGS += -I/usr/include/slang ++ # Some releases like Fedora has /usr/include/slang/slang.h other than /usr/include/slang.h ++ SLANG_INC ?= -idirafter =/usr/include/slang + BASIC_CFLAGS += -DNEWT_SUPPORT ++ BASIC_CFLAGS += $(SLANG_INC) + EXTLIBS += -lnewt -lslang + LIB_OBJS += $(OUTPUT)ui/setup.o + LIB_OBJS += $(OUTPUT)ui/browser.o diff --git a/recipes-kernel/linux/files/features/perf/perf-add-libperl-not-found-warning.patch b/recipes-kernel/linux/files/features/perf/perf-add-libperl-not-found-warning.patch new file mode 100644 index 0000000..799bc6c --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf-add-libperl-not-found-warning.patch @@ -0,0 +1,21 @@ +From 8ff1ab68ba2cb073c328fe540161080d146e0daf Mon Sep 17 00:00:00 2001 +From: Tom Zanussi <tom.zanussi@intel.com> +Date: Tue, 3 Jul 2012 13:07:22 -0500 +Subject: [PATCH 2/3] perf: add 'libperl not found' warning + +If libperl isn't found, display a message to that effect along with +some hints on how to fix it. + +Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> +diff --git a/tools/perf/Makefile b/tools/perf/Makefile +index cc3b54d..a22cee9 100644 +--- a/tools/perf/Makefile ++++ b/tools/perf/Makefile +@@ -694,6 +694,7 @@ else + FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS) + + ifneq ($(call try-cc,$(SOURCE_PERL_EMBED),$(FLAGS_PERL_EMBED),perl),y) ++ msg := $(warning libperl not found, disables Perl scripting support. Please install libperl-dev or perl-devel); + BASIC_CFLAGS += -DNO_LIBPERL + else + ALL_LDFLAGS += $(PERL_EMBED_LDFLAGS) diff --git a/recipes-kernel/linux/files/features/perf/perf-add-sgidefs.h-to-for-mips-builds.patch b/recipes-kernel/linux/files/features/perf/perf-add-sgidefs.h-to-for-mips-builds.patch new file mode 100644 index 0000000..700146f --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf-add-sgidefs.h-to-for-mips-builds.patch @@ -0,0 +1,47 @@ +From 6297e4c1d57e1063bfce297c2e12392348598559 Mon Sep 17 00:00:00 2001 +From: Tom Zanussi <tom.zanussi@intel.com> +Date: Tue, 10 Jul 2012 09:37:56 -0500 +Subject: [PATCH] perf: add sgidefs.h to for mips builds + +Allow Python.h to find the definitions it needs on mips i.e. get rid +of the error: "_ABIN32" is not defined. + +Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> +--- + .../perf/scripts/python/Perf-Trace-Util/Context.c | 4 ++++ + .../util/scripting-engines/trace-event-python.c | 4 ++++ + 2 files changed, 8 insertions(+), 0 deletions(-) + +diff --git a/tools/perf/scripts/python/Perf-Trace-Util/Context.c b/tools/perf/scripts/python/Perf-Trace-Util/Context.c +index 315067b..57d3aa3 100644 +--- a/tools/perf/scripts/python/Perf-Trace-Util/Context.c ++++ b/tools/perf/scripts/python/Perf-Trace-Util/Context.c +@@ -19,6 +19,10 @@ + * + */ + ++#ifdef __mips__ ++#include <sgidefs.h> ++#endif ++ + #include <Python.h> + #include "../../../perf.h" + #include "../../../util/trace-event.h" +diff --git a/tools/perf/util/scripting-engines/trace-event-python.c b/tools/perf/util/scripting-engines/trace-event-python.c +index c2623c6..1d52d7e 100644 +--- a/tools/perf/util/scripting-engines/trace-event-python.c ++++ b/tools/perf/util/scripting-engines/trace-event-python.c +@@ -19,6 +19,10 @@ + * + */ + ++#ifdef __mips__ ++#include <sgidefs.h> ++#endif ++ + #include <Python.h> + + #include <stdio.h> +-- +1.7.5.4 + diff --git a/recipes-kernel/linux/files/features/perf/perf-annotate-replace-expand-with-equivalent-sed-exp.patch b/recipes-kernel/linux/files/features/perf/perf-annotate-replace-expand-with-equivalent-sed-exp.patch new file mode 100644 index 0000000..dd807c0 --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf-annotate-replace-expand-with-equivalent-sed-exp.patch @@ -0,0 +1,23 @@ +From 449f7f520350700858f21a5554b81cc8ad23267d Mon Sep 17 00:00:00 2001 +From: Tom Zanussi <tom.zanussi@intel.com> +Date: Fri, 5 Oct 2012 11:35:26 -0500 +Subject: [PATCH 2/2] perf annotate: replace 'expand' with equivalent sed + expression + +We don't have 'expand' in our userspace so we need to accomplish the +same thing using 'sed', which we do have. + +Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> +diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c +index f0a9103..6b7bef1 100644 +--- a/tools/perf/util/annotate.c ++++ b/tools/perf/util/annotate.c +@@ -823,7 +823,7 @@ fallback: + snprintf(command, sizeof(command), + "%s %s%s --start-address=0x%016" PRIx64 + " --stop-address=0x%016" PRIx64 +- " -d %s %s -C %s|grep -v %s|expand", ++ " -d %s %s -C %s|grep -v %s|sed 's/\t/ /g'", + objdump_path ? objdump_path : "objdump", + disassembler_style ? "-M " : "", + disassembler_style ? disassembler_style : "", diff --git a/recipes-kernel/linux/files/features/perf/perf-change-root-to-prefix-for-python-install.patch b/recipes-kernel/linux/files/features/perf/perf-change-root-to-prefix-for-python-install.patch new file mode 100644 index 0000000..4fdbd67 --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf-change-root-to-prefix-for-python-install.patch @@ -0,0 +1,29 @@ +From 49f1599b2ce0288599805b5364b895f5a9febb3e Mon Sep 17 00:00:00 2001 +From: Tom Zanussi <tom.zanussi@intel.com> +Date: Tue, 3 Jul 2012 13:07:23 -0500 +Subject: [PATCH 3/3] perf: change --root to --prefix for python install + +Otherwise we get the sysroot path appended to the build path, not what +we want. + +Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> +--- + tools/perf/Makefile | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/tools/perf/Makefile b/tools/perf/Makefile +index f966313..15ec207 100644 +--- a/tools/perf/Makefile ++++ b/tools/perf/Makefile +@@ -954,7 +954,7 @@ install: all + $(INSTALL) scripts/python/bin/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/python/bin' + + install-python_ext: +- $(PYTHON_WORD) util/setup.py --quiet install --root='/$(DESTDIR_SQ)' ++ $(PYTHON_WORD) util/setup.py --quiet install --prefix='$(DESTDIR_SQ)/usr' + + install-doc: + $(MAKE) -C Documentation install +-- +1.7.5.4 + diff --git a/recipes-kernel/linux/files/features/perf/perf-force-include-of-stdbool.h.patch b/recipes-kernel/linux/files/features/perf/perf-force-include-of-stdbool.h.patch new file mode 100644 index 0000000..fca7166 --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf-force-include-of-stdbool.h.patch @@ -0,0 +1,30 @@ +From 34de8e4396a3bd6a4cb1415dd4baa3349c9d4990 Mon Sep 17 00:00:00 2001 +From: Bruce Ashfield <bruce.ashfield@windriver.com> +Date: Thu, 19 Aug 2010 11:24:45 -0400 +Subject: [PATCH] perf: force include of <stdbool.h> + +Large parts of perf use bool variables and assignments. +Rather than depending on transient includes, we force it +by including <stdbool.h> directly in perf.h + +Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> +--- + tools/perf/perf.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/tools/perf/perf.h b/tools/perf/perf.h +index 89e3355..164fccb 100644 +--- a/tools/perf/perf.h ++++ b/tools/perf/perf.h +@@ -5,6 +5,8 @@ struct winsize; + + void get_term_dimensions(struct winsize *ws); + ++#include <stdbool.h> ++ + #if defined(__i386__) + #include "../../arch/x86/include/asm/unistd.h" + #define rmb() asm volatile("lock; addl $0,0(%%esp)" ::: "memory") +-- +1.7.9.7 + diff --git a/recipes-kernel/linux/files/features/perf/perf-use-pkg-config-instead-of-python-config.patch b/recipes-kernel/linux/files/features/perf/perf-use-pkg-config-instead-of-python-config.patch new file mode 100644 index 0000000..26b0787 --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf-use-pkg-config-instead-of-python-config.patch @@ -0,0 +1,33 @@ +From b4bc86501882e4c62042afd7fc8072a5bb7bcb3c Mon Sep 17 00:00:00 2001 +From: Tom Zanussi <tom.zanussi@intel.com> +Date: Tue, 3 Jul 2012 13:07:21 -0500 +Subject: [PATCH 1/3] perf: use pkg-config instead of python-config + +Python has build flags available via pkg-config, use those at +build-time instead. + +Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> +--- + tools/perf/Makefile | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tools/perf/Makefile b/tools/perf/Makefile +index 92271d3..35425ab 100644 +--- a/tools/perf/Makefile ++++ b/tools/perf/Makefile +@@ -596,10 +596,10 @@ else + + PYTHON_CONFIG_SQ := $(call shell-sq,$(PYTHON_CONFIG)) + +- PYTHON_EMBED_LDOPTS := $(shell $(PYTHON_CONFIG_SQ) --ldflags 2>/dev/null) ++ PYTHON_EMBED_LDOPTS := $(shell pkg-config --libs python 2>/dev/null) + PYTHON_EMBED_LDFLAGS := $(call strip-libs,$(PYTHON_EMBED_LDOPTS)) + PYTHON_EMBED_LIBADD := $(call grep-libs,$(PYTHON_EMBED_LDOPTS)) +- PYTHON_EMBED_CCOPTS := $(shell $(PYTHON_CONFIG_SQ) --cflags 2>/dev/null) ++ PYTHON_EMBED_CCOPTS := $(shell pkg-config --cflags python 2>/dev/null) + FLAGS_PYTHON_EMBED := $(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS) + + ifneq ($(call try-cc,$(SOURCE_PYTHON_EMBED),$(FLAGS_PYTHON_EMBED)),y) +-- +1.7.5.4 + diff --git a/recipes-kernel/linux/files/features/perf/perf.cfg b/recipes-kernel/linux/files/features/perf/perf.cfg new file mode 100644 index 0000000..ba58ff2 --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf.cfg @@ -0,0 +1 @@ +CONFIG_PERF_EVENTS=y diff --git a/recipes-kernel/linux/files/features/perf/perf.scc b/recipes-kernel/linux/files/features/perf/perf.scc new file mode 100644 index 0000000..eb9fece --- /dev/null +++ b/recipes-kernel/linux/files/features/perf/perf.scc @@ -0,0 +1,10 @@ +# perf patches +patch perf-force-include-of-stdbool.h.patch +patch perf-use-pkg-config-instead-of-python-config.patch +patch perf-add-libperl-not-found-warning.patch +patch perf-change-root-to-prefix-for-python-install.patch +patch perf-add-sgidefs.h-to-for-mips-builds.patch +patch perf-add-SLANG_INC-for-slang.h.patch +patch perf-annotate-replace-expand-with-equivalent-sed-exp.patch + +kconf non-hardware perf.cfg
\ No newline at end of file diff --git a/recipes-kernel/linux/files/features/powertop/powertop.cfg b/recipes-kernel/linux/files/features/powertop/powertop.cfg new file mode 100644 index 0000000..36e6fb1 --- /dev/null +++ b/recipes-kernel/linux/files/features/powertop/powertop.cfg @@ -0,0 +1,2 @@ +# for powertop +CONFIG_TIMER_STATS=y diff --git a/recipes-kernel/linux/files/features/powertop/powertop.scc b/recipes-kernel/linux/files/features/powertop/powertop.scc new file mode 100644 index 0000000..4661a0f --- /dev/null +++ b/recipes-kernel/linux/files/features/powertop/powertop.scc @@ -0,0 +1,6 @@ +define KFEATURE_DESCRIPTION "Enable powertop + profiling" +define KFEATURE_COMPATIBILITY arch + +include features/profiling/profiling.scc + +kconf non-hardware powertop.cfg diff --git a/recipes-kernel/linux/files/features/profiling/profiling.cfg b/recipes-kernel/linux/files/features/profiling/profiling.cfg new file mode 100644 index 0000000..bb25cce --- /dev/null +++ b/recipes-kernel/linux/files/features/profiling/profiling.cfg @@ -0,0 +1,4 @@ +# for oprofile and powertop +CONFIG_PROFILING=y +CONFIG_FRAME_POINTER=y +CONFIG_X86_LOCAL_APIC=y diff --git a/recipes-kernel/linux/files/features/profiling/profiling.scc b/recipes-kernel/linux/files/features/profiling/profiling.scc new file mode 100644 index 0000000..32032fa --- /dev/null +++ b/recipes-kernel/linux/files/features/profiling/profiling.scc @@ -0,0 +1,4 @@ +define KFEATURE_DESCRIPTION "Enable profiling and timerstats" +define KFEATURE_COMPATIBILITY board + +kconf non-hardware profiling.cfg diff --git a/recipes-kernel/linux/files/quark-standard.scc b/recipes-kernel/linux/files/quark-standard.scc new file mode 100644 index 0000000..4aa21e9 --- /dev/null +++ b/recipes-kernel/linux/files/quark-standard.scc @@ -0,0 +1,11 @@ +define KMACHINE quark +define KTYPE standard +define KARCH i386 + +kconf hardware quark.cfg + +include features/latencytop.scc +include features/lttng.scc +include features/oprofile.scc +include features/perf.scc +include features/powertop.scc |