public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
* [PATCH 0/2] oprofile: enable 'operf' perf_events mode
@ 2013-01-28 20:50 tom.zanussi
  2013-01-28 20:50 ` [PATCH 1/2] oprofile: add kernel dependency tom.zanussi
  2013-01-28 20:50 ` [PATCH 2/2] oprofile: remove AX_KERNEL_VERSION from acinclude.m4 tom.zanussi
  0 siblings, 2 replies; 3+ messages in thread
From: tom.zanussi @ 2013-01-28 20:50 UTC (permalink / raw)
  To: openembedded-core; +Cc: Tom Zanussi

From: Tom Zanussi <tom.zanussi@linux.intel.com>

This patchset fixes oprofile-0.9.8 so that it finds perf_events and
configures accordingly to enable 'operf' and not just 'legacy oprofile'

I've added a new section on operf to the Yocto Tracing and Profiling Guide'
(just the wiki version for now, until I can submit a patch for the official
Guide):

https://wiki.yoctoproject.org/wiki/Tracing_and_Profiling#operf

I've tested this on real hardware (x86 crownbay), and build-tested on the
other arches (powerpc didn't build due to YOCTO bug #3717, but that's not
a regression).

The following changes since commit cfb082961a6c9ac3d65738031c4071210529cd07:

  bitbake: build.py: Dump out performance data of individual tasks (2013-01-28 14:49:05 +0000)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib.git tzanussi/oprofile-operf-enable-v1
  http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=tzanussi/oprofile-operf-enable-v1

Tom Zanussi (2):
  oprofile: add kernel dependency
  oprofile: remove AX_KERNEL_VERSION from acinclude.m4

 meta/recipes-kernel/oprofile/oprofile.inc          |  2 +-
 meta/recipes-kernel/oprofile/oprofile/acinclude.m4 | 19 -------------------
 meta/recipes-kernel/oprofile/oprofile_0.9.8.bb     |  2 ++
 3 files changed, 3 insertions(+), 20 deletions(-)

-- 
1.7.11.4




^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 1/2] oprofile: add kernel dependency
  2013-01-28 20:50 [PATCH 0/2] oprofile: enable 'operf' perf_events mode tom.zanussi
@ 2013-01-28 20:50 ` tom.zanussi
  2013-01-28 20:50 ` [PATCH 2/2] oprofile: remove AX_KERNEL_VERSION from acinclude.m4 tom.zanussi
  1 sibling, 0 replies; 3+ messages in thread
From: tom.zanussi @ 2013-01-28 20:50 UTC (permalink / raw)
  To: openembedded-core; +Cc: Tom Zanussi

From: Tom Zanussi <tom.zanussi@linux.intel.com>

oprofile-0.9.8 adds 'operf' which depends on the kernel's perf_events
subsystem to be present when building, which adds the kernel
dependency that we specify in a new DEPENDS for oprofile-0.9.8.

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
---
 meta/recipes-kernel/oprofile/oprofile_0.9.8.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb b/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
index 4491e7d..6075163 100644
--- a/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
+++ b/meta/recipes-kernel/oprofile/oprofile_0.9.8.bb
@@ -2,6 +2,8 @@ require oprofile.inc
 
 PR = "${INC_PR}.1"
 
+DEPENDS += "virtual/kernel"
+
 SRC_URI += "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
             file://0001-Add-rmb-definition-for-AArch64-architecture.patch \
             file://0001-OProfile-doesn-t-build-for-32-bit-ppc-the-operf_util.patch \
-- 
1.7.11.4




^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] oprofile: remove AX_KERNEL_VERSION from acinclude.m4
  2013-01-28 20:50 [PATCH 0/2] oprofile: enable 'operf' perf_events mode tom.zanussi
  2013-01-28 20:50 ` [PATCH 1/2] oprofile: add kernel dependency tom.zanussi
@ 2013-01-28 20:50 ` tom.zanussi
  1 sibling, 0 replies; 3+ messages in thread
From: tom.zanussi @ 2013-01-28 20:50 UTC (permalink / raw)
  To: openembedded-core; +Cc: Tom Zanussi

From: Tom Zanussi <tom.zanussi@linux.intel.com>

The version of this macro in acinclude.m4 is preventing the correct
version in the package's kernelversion.m4 from being used.

Since the version in acinclude.m4 includes the obsolete config.h, any
test that uses it with newer (> 2.6.19) kernels fails.  In the case of
oprofile it means that perf_events support is never detected and thus
'legacy oprofile' is always built.

Fixing this allows the new perf_events 'operf' support to be built.

Fixes [YOCTO #3447]

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
---
 meta/recipes-kernel/oprofile/oprofile.inc          |  2 +-
 meta/recipes-kernel/oprofile/oprofile/acinclude.m4 | 19 -------------------
 2 files changed, 1 insertion(+), 20 deletions(-)

diff --git a/meta/recipes-kernel/oprofile/oprofile.inc b/meta/recipes-kernel/oprofile/oprofile.inc
index d6d20ae..c275110 100644
--- a/meta/recipes-kernel/oprofile/oprofile.inc
+++ b/meta/recipes-kernel/oprofile/oprofile.inc
@@ -19,7 +19,7 @@ FILES_${PN} = "${bindir} ${libdir}/${BPN}/lib*${SOLIBS} ${datadir}/${BPN}"
 FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/lib*.la"
 FILES_${PN}-staticdev += "${libdir}/${BPN}/lib*.a"
 
-INC_PR = "r1"
+INC_PR = "r2"
 
 SRC_URI = "file://opstart.patch \
            file://oprofile-no-query-modules.patch \
diff --git a/meta/recipes-kernel/oprofile/oprofile/acinclude.m4 b/meta/recipes-kernel/oprofile/oprofile/acinclude.m4
index ffaa828..95ecd91 100644
--- a/meta/recipes-kernel/oprofile/oprofile/acinclude.m4
+++ b/meta/recipes-kernel/oprofile/oprofile/acinclude.m4
@@ -104,25 +104,6 @@ AC_SUBST(OPROFILE_MODULE_ARCH)
 ]
 )
 
-dnl AX_KERNEL_VERSION(major, minor, level, comparison, action-if-true, action-if-false)
-AC_DEFUN([AX_KERNEL_VERSION], [
-SAVE_CFLAGS=$CFLAGS
-CFLAGS="-I$KINC -D__KERNEL__ -Werror"
-AC_TRY_COMPILE( 
-  [
-  #include <linux/version.h>
-  #include <linux/config.h>
-  ],
-  [
-  #if LINUX_VERSION_CODE $4 KERNEL_VERSION($1, $2, $3)
-  break_me_hard(\\\);
-  #endif
-  ],
-[$5],[$6],)
-CFLAGS=$SAVE_CFLAGS
-])
-
-
 dnl AX_MSG_RESULT_YN(a)
 dnl results "yes" iff a==1, "no" else
 AC_DEFUN([AX_MSG_RESULT_YN], [x=no
-- 
1.7.11.4




^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-01-28 21:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-28 20:50 [PATCH 0/2] oprofile: enable 'operf' perf_events mode tom.zanussi
2013-01-28 20:50 ` [PATCH 1/2] oprofile: add kernel dependency tom.zanussi
2013-01-28 20:50 ` [PATCH 2/2] oprofile: remove AX_KERNEL_VERSION from acinclude.m4 tom.zanussi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox