Your message dated Sat, 19 Feb 2005 19:17:27 -0500
with message-id <[EMAIL PROTECTED]>
and subject line Bug#295236: fixed in qprof 0.5.1-4
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--------------------------------------
Received: (at submit) by bugs.debian.org; 14 Feb 2005 16:25:37 +0000
>From [EMAIL PROTECTED] Mon Feb 14 08:25:37 2005
Return-path: <[EMAIL PROTECTED]>
Received: from amber.crhc.uiuc.edu [130.126.143.254] 
        by spohr.debian.org with esmtp (Exim 3.35 1 (Debian))
        id 1D0j2X-0001Q5-00; Mon, 14 Feb 2005 08:25:37 -0800
Received: from beryllium.crhc.uiuc.edu ([EMAIL PROTECTED] [130.126.142.162])
        by amber.crhc.uiuc.edu (8.12.11/8.12.11) with ESMTP id j1EGPS92016333;
        Mon, 14 Feb 2005 10:25:28 -0600 (CST)
Received: by beryllium.crhc.uiuc.edu (Postfix, from userid 1000)
        id B0A9449F4C; Mon, 14 Feb 2005 10:25:51 -0600 (CST)
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
From: Matthieu Delahaye <[EMAIL PROTECTED]>
To: Debian Bug Tracking System <[EMAIL PROTECTED]>
Subject: qprof do not use/link correctly with libpfm{2,3} and libunwind
X-Mailer: reportbug 3.2
Date: Mon, 14 Feb 2005 10:25:51 -0600
Message-Id: <[EMAIL PROTECTED]>
X-Scanned-By: MIMEDefang 2.41
Delivered-To: [EMAIL PROTECTED]
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
        (1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Status: No, hits=-8.0 required=4.0 tests=BAYES_00,HAS_PACKAGE 
        autolearn=no version=2.60-bugs.debian.org_2005_01_02
X-Spam-Level: 

Package: qprof
Version: 0.5.1-3
Severity: important

qprof, as it is beeing packaged at this time, do not use libpfm{2,3}
when using hardware events for sampling. Actually, qprof print not
warning and fall back to the "timeout sampling".

In addition, when using the -s option, ld cannot find a symbol from
libunwind.

About perfmon:
- -DHW_EVENT_SUPPORT needs to be specified into CFLAGS when running
  configure
- qprof_utils_libpfm(2,3}.c needs to include headers from perfmon2 and
  perfmon3 and not perfmon
- these same files need to open libpfm2.so.2 and libpfm3.so.2 and not
  libpfm.so.2 and libpfm.so.3

About libunwind:
   libunwind provided by GCC do not exports all the symbols that are
   declared in libunwind.h and other files (but used by
   qprof_utils_libpfm{2,3}). You need to link agains the library provided 
   by the libunwind7 package. The correct LDFLAG at linking stage is 
   -lunwind-generic instead of -lunwind

The enclosed patch correct these errors and include the modification
from bug #294784. Thus you just have to apply this patch to correct
both bugs.

It would be interesting you follow up with the upstream authors to see
if it would be possible to modify the path to headers and library name via
configure instead of patching directly the sources.

Thanks,

Matthieu

*** patch
diff -Nru orig/debian/rules new/debian/rules
--- orig/debian/rules   2005-02-14 10:08:17.566657013 -0600
+++ new/debian/rules    2005-02-14 10:01:11.962170039 -0600
@@ -9,7 +9,7 @@
 
 
 INSTALL = install
-CFLAGS = -Wall -g
+CFLAGS = -Wall -g -DHW_EVENT_SUPPORT
 
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
        CFLAGS += -O0
@@ -24,7 +24,7 @@
 configure-stamp:
        dh_testdir
        # Add here commands to configure the package.
-       ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) 
--prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info 
--sysconfdir=/etc
+       ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) 
--prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info 
--sysconfdir=/etc CFLAGS="$(CFLAGS)"
        touch configure-stamp
 
 
diff -Nru orig/libtool new/libtool
--- orig/libtool        2005-02-14 10:07:59.707282232 -0600
+++ new/libtool 2005-02-14 10:03:45.281504099 -0600
@@ -6954,7 +6954,7 @@
 
 # Dependencies to place after the objects being linked to create a
 # shared library.
-postdeps="-lstdc++ -lunwind -lm -lgcc_s -lunwind -lc -lgcc_s -lunwind"
+postdeps="-lstdc++ -lunwind-generic -lm -lgcc_s -lunwind-generic -lc -lgcc_s 
-lunwind-generic"
 
 # The library search path used internally by the compiler when linking
 # a shared library.
diff -Nru orig/src/Makefile.am new/src/Makefile.am
--- orig/src/Makefile.am        2005-02-14 10:08:35.249273984 -0600
+++ new/src/Makefile.am 2005-02-14 10:01:57.555919481 -0600
@@ -4,7 +4,7 @@
 
 libqprof_utils_la_SOURCES=prof_utils.h q-lib.c crc32.c q-lib.h crc32.h
 if USE_LIBUNWIND
-libqprof_utils_la_LDFLAGS=-lunwind
+libqprof_utils_la_LDFLAGS=-lunwind-generic
 endif
 
 libqprof_libpfm2_la_SOURCES=prof_main.c prof_utils_libpfm2.c
diff -Nru orig/src/Makefile.in new/src/Makefile.in
--- orig/src/Makefile.in        2005-02-14 10:08:35.249273984 -0600
+++ new/src/Makefile.in 2005-02-14 10:01:57.555919481 -0600
@@ -137,7 +137,7 @@
 lib_LTLIBRARIES = libqprof_libpfm2.la libqprof_libpfm3.la libmalloc_trace.la
 
 libqprof_utils_la_SOURCES = prof_utils.h q-lib.c crc32.c q-lib.h crc32.h
[EMAIL PROTECTED]@libqprof_utils_la_LDFLAGS = -lunwind
[EMAIL PROTECTED]@libqprof_utils_la_LDFLAGS = -lunwind-generic
 
 libqprof_libpfm2_la_SOURCES = prof_main.c prof_utils_libpfm2.c
 libqprof_libpfm2_la_LIBADD = libqprof_utils.la
diff -Nru orig/src/prof_utils_libpfm2.c new/src/prof_utils_libpfm2.c
--- orig/src/prof_utils_libpfm2.c       2005-02-14 10:08:45.656500419 -0600
+++ new/src/prof_utils_libpfm2.c        2005-02-14 10:00:52.823498399 -0600
@@ -94,7 +94,7 @@
  */
 
 # include <errno.h>
-# include <perfmon/pfmlib.h>
+# include <perfmon2/pfmlib.h>
 # include <dlfcn.h>
 
 /* The following may be written repeatedly by different threads.       */
@@ -126,7 +126,7 @@
   typeof(pfm_dispatch_events) * my_pfm_dispatch_events;
 
   if (0 == event_string) return 0;
-  if ((pfm_handle = dlopen("libpfm.so.2", RTLD_LAZY)) == NULL)
+  if ((pfm_handle = dlopen("libpfm2.so.2", RTLD_LAZY)) == NULL)
     {
       QPROF_warn("Can't load libpfm: using timer instead.\n");
       return 0;
diff -Nru orig/src/prof_utils_libpfm3.c new/src/prof_utils_libpfm3.c
--- orig/src/prof_utils_libpfm3.c       2005-02-14 10:08:45.656500419 -0600
+++ new/src/prof_utils_libpfm3.c        2005-02-14 10:00:52.824474961 -0600
@@ -28,7 +28,7 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 
THE
  * SOFTWARE. 
  */
-
+#include "config.h"
 #include "prof_utils.h"
 #include "q-lib.h"
 
@@ -101,8 +101,8 @@
  */
 
 # include <errno.h>
-# include <perfmon/pfmlib.h>
-# include <perfmon/perfmon.h>
+# include <perfmon3/pfmlib.h>
+# include <perfmon3/perfmon.h>
 # include <dlfcn.h>
 # include <fcntl.h>
 # include <asm/unistd.h>
@@ -152,7 +152,7 @@
   typeof(pfm_dispatch_events) * my_pfm_dispatch_events;
 
   if (0 == event_string) return 0;
-  if ((pfm_handle = dlopen("libpfm.so.3", RTLD_LAZY)) == NULL)
+  if ((pfm_handle = dlopen("libpfm3.so.3", RTLD_LAZY)) == NULL)
     {
       QPROF_warn("Can't load libpfm: using timer instead.\n");
       return 0;


-- System Information:
Debian Release: 3.1
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: ia64
Kernel: Linux 2.6.8-1-mckinley-smp
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages qprof depends on:
ii  libc6.1                     2.3.2.ds1-20 GNU C Library: Shared libraries an
ii  libgcc1                     1:3.4.3-6    GCC support library
ii  libpfm2                     2.0-4        IA-64 Performance Monitor (PMU) --
ii  libpfm3                     3.0-3        IA-64 Performance Monitor (PMU) --
ii  libunwind7                  0.98.3-3     A library to determine the call-ch

-- no debconf information

---------------------------------------
Received: (at 295236-close) by bugs.debian.org; 20 Feb 2005 00:23:12 +0000
>From [EMAIL PROTECTED] Sat Feb 19 16:23:12 2005
Return-path: <[EMAIL PROTECTED]>
Received: from newraff.debian.org [208.185.25.31] (mail)
        by spohr.debian.org with esmtp (Exim 3.35 1 (Debian))
        id 1D2esS-0002iy-00; Sat, 19 Feb 2005 16:23:12 -0800
Received: from katie by newraff.debian.org with local (Exim 3.35 1 (Debian))
        id 1D2emt-0005xQ-00; Sat, 19 Feb 2005 19:17:27 -0500
From: Al Stone <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
X-Katie: $Revision: 1.55 $
Subject: Bug#295236: fixed in qprof 0.5.1-4
Message-Id: <[EMAIL PROTECTED]>
Sender: Archive Administrator <[EMAIL PROTECTED]>
Date: Sat, 19 Feb 2005 19:17:27 -0500
Delivered-To: [EMAIL PROTECTED]
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
        (1.212-2003-09-23-exp) on spohr.debian.org
X-Spam-Status: No, hits=-6.0 required=4.0 tests=BAYES_00,HAS_BUG_NUMBER 
        autolearn=no version=2.60-bugs.debian.org_2005_01_02
X-Spam-Level: 
X-CrossAssassin-Score: 2

Source: qprof
Source-Version: 0.5.1-4

We believe that the bug you reported is fixed in the latest version of
qprof, which is due to be installed in the Debian FTP archive:

qprof_0.5.1-4.diff.gz
  to pool/main/q/qprof/qprof_0.5.1-4.diff.gz
qprof_0.5.1-4.dsc
  to pool/main/q/qprof/qprof_0.5.1-4.dsc
qprof_0.5.1-4_i386.deb
  to pool/main/q/qprof/qprof_0.5.1-4_i386.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Al Stone <[EMAIL PROTECTED]> (supplier of updated qprof package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.7
Date: Sat, 19 Feb 2005 16:47:18 -0700
Source: qprof
Binary: qprof
Architecture: source i386
Version: 0.5.1-4
Distribution: unstable
Urgency: low
Maintainer: Al Stone <[EMAIL PROTECTED]>
Changed-By: Al Stone <[EMAIL PROTECTED]>
Description: 
 qprof      - Profiling utilities for Linux
Closes: 294784 295236
Changes: 
 qprof (0.5.1-4) unstable; urgency=low
 .
   * Closes: bug#294784: ld cannot load libqprof_libpfm3.so
   * Closes: bug#295236: qprof do not use/link correctly with
     libpfm{2,3} and libunwind
   * Both of the above closed with patches from Matthieu Delahaye
     <[EMAIL PROTECTED]>
   * Corrected a few messages so they properly referred to libpfm2 or
     libpfm3, as needed.
Files: 
 b04a0f18f9fdb4e7e6e68172184fabf7 628 devel optional qprof_0.5.1-4.dsc
 7c4e9ffc5278e77aea863fe8b435c905 6939 devel optional qprof_0.5.1-4.diff.gz
 8bf24cbfb9ae9356b06357b93fa53c3b 31570 devel optional qprof_0.5.1-4_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)

iD8DBQFCF9Rrso6+T7qY4V0RAhwCAJ4mdnKI9gEr8ihTG6IPdQS4L0FUQQCeO1lo
N1T3+yhqrfK0UV+/UHUJnRQ=
=rMdt
-----END PGP SIGNATURE-----


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to