From 6e20da741b77f3e5c9b8a96e3101fcc4ab9cfee2 Mon Sep 17 00:00:00 2001 From: Ulf Samuelsson Date: Wed, 21 Jan 2009 07:09:41 +0000 Subject: Remove reference to query_modules in oprofile, does not exist in linux-2.6. oprofile now builds for ARM --- ...ile-0.9.4-001-avr32-enable-lookup_dcookie.patch | 24 ++++++++++++++++++++++ .../oprofile-0.9.4-002-no-query-modules.patch | 21 +++++++++++++++++++ ...profile-0.9.4-avr32-enable-lookup_dcookie.patch | 24 ---------------------- package/oprofile/oprofile.mk | 10 +++++---- 4 files changed, 51 insertions(+), 28 deletions(-) create mode 100644 package/oprofile/oprofile-0.9.4-001-avr32-enable-lookup_dcookie.patch create mode 100644 package/oprofile/oprofile-0.9.4-002-no-query-modules.patch delete mode 100644 package/oprofile/oprofile-0.9.4-avr32-enable-lookup_dcookie.patch (limited to 'package/oprofile') diff --git a/package/oprofile/oprofile-0.9.4-001-avr32-enable-lookup_dcookie.patch b/package/oprofile/oprofile-0.9.4-001-avr32-enable-lookup_dcookie.patch new file mode 100644 index 000000000..7c4138946 --- /dev/null +++ b/package/oprofile/oprofile-0.9.4-001-avr32-enable-lookup_dcookie.patch @@ -0,0 +1,24 @@ +Index: oprofile-0.9.4/daemon/opd_cookie.c +=================================================================== +--- oprofile-0.9.4.orig/daemon/opd_cookie.c 2008-07-25 16:00:17.000000000 +0200 ++++ oprofile-0.9.4/daemon/opd_cookie.c 2008-07-25 16:00:20.000000000 +0200 +@@ -78,6 +78,19 @@ + (unsigned long)(cookie & 0xffffffff), + (unsigned long)(cookie >> 32), buf, size); + } ++#elif (defined(__avr32__)) ++static inline int lookup_dcookie(cookie_t cookie, char * buf, size_t size) ++{ ++ /* On avr32, the first 64bit arg (cookie) is expected to be in ++ * r11(MSW)/r10(LSW) which normally hold arg 2 and arg 3. The second arg ++ * (buf) is then expected to be in r12 which normally holds the first ++ * arg. Third arg (size) is at the right position. ++ */ ++ return syscall(__NR_lookup_dcookie, buf, ++ (unsigned long)(cookie >> 32), ++ (unsigned long)(cookie & 0xffffffff), ++ size); ++} + #else + static inline int lookup_dcookie(cookie_t cookie, char * buf, size_t size) + { diff --git a/package/oprofile/oprofile-0.9.4-002-no-query-modules.patch b/package/oprofile/oprofile-0.9.4-002-no-query-modules.patch new file mode 100644 index 000000000..9f00da641 --- /dev/null +++ b/package/oprofile/oprofile-0.9.4-002-no-query-modules.patch @@ -0,0 +1,21 @@ +diff -urN oprofile-0.9.4-0rig//daemon/liblegacy/opd_kernel.c oprofile-0.9.4/daemon/liblegacy/opd_kernel.c +--- oprofile-0.9.4-0rig//daemon/liblegacy/opd_kernel.c 2005-05-04 04:47:03.000000000 +0200 ++++ oprofile-0.9.4/daemon/liblegacy/opd_kernel.c 2009-01-21 07:40:20.000000000 +0100 +@@ -270,6 +270,9 @@ + */ + static void opd_drop_module_sample(unsigned long eip) + { ++ verbprintf(vmodule, "query_module not available on linux-2.6: %s\n", strerror(EPERM)); ++ ++#if 0 + char * module_names; + char * name; + size_t size = 1024; +@@ -307,6 +310,7 @@ + + if (module_names) + free(module_names); ++#endif + } + + diff --git a/package/oprofile/oprofile-0.9.4-avr32-enable-lookup_dcookie.patch b/package/oprofile/oprofile-0.9.4-avr32-enable-lookup_dcookie.patch deleted file mode 100644 index 7c4138946..000000000 --- a/package/oprofile/oprofile-0.9.4-avr32-enable-lookup_dcookie.patch +++ /dev/null @@ -1,24 +0,0 @@ -Index: oprofile-0.9.4/daemon/opd_cookie.c -=================================================================== ---- oprofile-0.9.4.orig/daemon/opd_cookie.c 2008-07-25 16:00:17.000000000 +0200 -+++ oprofile-0.9.4/daemon/opd_cookie.c 2008-07-25 16:00:20.000000000 +0200 -@@ -78,6 +78,19 @@ - (unsigned long)(cookie & 0xffffffff), - (unsigned long)(cookie >> 32), buf, size); - } -+#elif (defined(__avr32__)) -+static inline int lookup_dcookie(cookie_t cookie, char * buf, size_t size) -+{ -+ /* On avr32, the first 64bit arg (cookie) is expected to be in -+ * r11(MSW)/r10(LSW) which normally hold arg 2 and arg 3. The second arg -+ * (buf) is then expected to be in r12 which normally holds the first -+ * arg. Third arg (size) is at the right position. -+ */ -+ return syscall(__NR_lookup_dcookie, buf, -+ (unsigned long)(cookie >> 32), -+ (unsigned long)(cookie & 0xffffffff), -+ size); -+} - #else - static inline int lookup_dcookie(cookie_t cookie, char * buf, size_t size) - { diff --git a/package/oprofile/oprofile.mk b/package/oprofile/oprofile.mk index 066dbd2e7..ee6be3dc1 100644 --- a/package/oprofile/oprofile.mk +++ b/package/oprofile/oprofile.mk @@ -4,10 +4,11 @@ # ############################################################# OPROFILE_VERSION := 0.9.4 -OPROFILE_CONF_OPT := --localstatedir=/var \ - --with-extra-includes="$(BUILD_DIR)/binutils-$(BR2_BINUTILS_VERSION)-target/bfd -I$(TOOL_BUILD_DIR)/binutils-$(BR2_BINUTILS_VERSION)/include" \ - --with-extra-libs=$(BUILD_DIR)/binutils-$(BR2_BINUTILS_VERSION)-target/bfd \ - --with-kernel-support +OPROFILE_CONF_OPT := --localstatedir=/var \ + --with-extra-includes="$(BUILD_DIR)/binutils-$(BR2_BINUTILS_VERSION)-target/bfd \ + -I$(TOOL_BUILD_DIR)/binutils-$(BR2_BINUTILS_VERSION)/include" \ + --with-extra-libs=$(BUILD_DIR)/binutils-$(BR2_BINUTILS_VERSION)-target/bfd \ + --with-kernel-support OPROFILE_BINARIES := utils/ophelp OPROFILE_BINARIES += pp/opannotate pp/oparchive pp/opgprof pp/opreport opjitconv/opjitconv @@ -43,3 +44,4 @@ $(OPROFILE_TARGET_CLEAN): rm -rf $(TARGET_DIR)/usr/share/oprofile -$(MAKE) -C $(OPROFILE_DIR) clean touch $@ + -- cgit v1.2.3