[oe-commits] Mikhail Durnev : systemtap: Cross compilation fix

git at git.openembedded.org git at git.openembedded.org
Wed Sep 3 16:44:40 UTC 2014


Module: openembedded-core.git
Branch: master-next
Commit: 787bed708676fc04aee2850825e803273152f657
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=787bed708676fc04aee2850825e803273152f657

Author: Mikhail Durnev <Mikhail_Durnev at mentor.com>
Date:   Wed Sep  3 13:01:50 2014 +0500

systemtap: Cross compilation fix

This is a cross compilation fix. It allows systemtap to find the
kernel map file in the right place, i.e. in the kernel build tree.
Without this fix it takes a map file from the build host, if available.

Signed-off-by: Mikhail Durnev <mikhail_durnev at mentor.com>
Signed-off-by: Muzaffar Mahmood <muzaffar_mahmood at mentor.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 .../systemtap/systemtap/system_map_location.patch  | 23 ++++++++++++++++++++++
 meta/recipes-kernel/systemtap/systemtap_git.inc    |  1 +
 2 files changed, 24 insertions(+)

diff --git a/meta/recipes-kernel/systemtap/systemtap/system_map_location.patch b/meta/recipes-kernel/systemtap/systemtap/system_map_location.patch
new file mode 100644
index 0000000..013af5c
--- /dev/null
+++ b/meta/recipes-kernel/systemtap/systemtap/system_map_location.patch
@@ -0,0 +1,23 @@
+systemtap: Cross compilation fix
+
+This is a cross compilation fix. It allows systemtap to find
+the kernel map file in the right place, i.e. in the kernel build tree.
+Without this fix it takes a map file from the build host, if available.
+
+Upstream-Status: Pending
+
+Signed-off-by: Mikhail Durnev <mikhail_durnev at mentor.com>
+
+Index: git/session.cxx
+===================================================================
+--- git.orig/session.cxx
++++ git/session.cxx
+@@ -1634,7 +1634,7 @@ systemtap_session::parse_kernel_function
+ 	clog << _F("Kernel symbol table %s unavailable, (%s)",
+ 		   system_map_path.c_str(), strerror(errno)) << endl;
+ 
+-      system_map_path = "/boot/System.map-" + kernel_release;
++      system_map_path = kernel_build_tree + "/System.map-" + kernel_release;
+       system_map.clear();
+       system_map.open(system_map_path.c_str(), ifstream::in);
+       if (! system_map.is_open())
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.inc b/meta/recipes-kernel/systemtap/systemtap_git.inc
index 3e1e80a..33aa136 100644
--- a/meta/recipes-kernel/systemtap/systemtap_git.inc
+++ b/meta/recipes-kernel/systemtap/systemtap_git.inc
@@ -6,6 +6,7 @@ PV = "2.5+git${SRCPV}"
 SRC_URI = "git://sourceware.org/git/systemtap.git \
            file://docproc-build-fix.patch \
            file://obsolete_automake_macros.patch \
+           file://system_map_location.patch \
            file://tapset-linux-sendfile-syscall.patch \
           "
 



More information about the Openembedded-commits mailing list