From owner-freebsd-current@FreeBSD.ORG Sun Dec 16 16:21:16 2007 Return-Path: Delivered-To: current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 647D316A520 for ; Sun, 16 Dec 2007 16:21:16 +0000 (UTC) (envelope-from ntarmos@ceid.upatras.gr) Received: from poseidon.ceid.upatras.gr (poseidon.ceid.upatras.gr [150.140.141.169]) by mx1.freebsd.org (Postfix) with ESMTP id B2A2513C457 for ; Sun, 16 Dec 2007 16:21:15 +0000 (UTC) (envelope-from ntarmos@ceid.upatras.gr) Received: from mail.ceid.upatras.gr (unknown [10.1.0.143]) by poseidon.ceid.upatras.gr (Postfix) with ESMTP id 61D09EB4D13 for ; Sun, 16 Dec 2007 17:52:40 +0200 (EET) Received: from localhost (europa.ceid.upatras.gr [127.0.0.1]) by mail.ceid.upatras.gr (Postfix) with ESMTP id 521F41582FA for ; Sun, 16 Dec 2007 17:52:40 +0200 (EET) X-Virus-Scanned: amavisd-new at ceid.upatras.gr Received: from mail.ceid.upatras.gr ([127.0.0.1]) by localhost (europa.ceid.upatras.gr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Qp0jX2VBCJe5 for ; Sun, 16 Dec 2007 17:52:40 +0200 (EET) Received: from ace.netcins.ceid.upatras.gr (vfppp079167027138.dsl.hol.gr [79.167.27.138]) by mail.ceid.upatras.gr (Postfix) with ESMTP id 88233157ED7 for ; Sun, 16 Dec 2007 17:52:39 +0200 (EET) Received: by ace.netcins.ceid.upatras.gr (Postfix, from userid 1001) id 547C53F44E; Sun, 16 Dec 2007 17:52:34 +0200 (EET) Date: Sun, 16 Dec 2007 17:52:34 +0200 From: Nikos Ntarmos To: current@FreeBSD.org Message-ID: <20071216155234.GA92032@ace.netcins.ceid.upatras.gr> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; x-action=pgp-signed Content-Disposition: inline In-Reply-To: <469693EB.8050802@kuehlbox.de> Organization: NetCInS Lab., C.E.I.D., U. of Patras, Greece WWW-Homepage: http://ntarmos.dyndns.org/ X-PGP-Fingerprint: 9680 60A7 DE60 0298 B1F0 9B22 9BA2 7569 CF95 160A Office-Phone: +30-2610-996919 Office-Fax: +30-2610-969011 GPS-Info: 38.31N, 21.82E User-Agent: mutt-ng/devel-r804 (FreeBSD) Cc: Subject: Re: Valgrind GCC 4.2 patches X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Dec 2007 16:21:16 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Thu, Jul 12, 2007 at 10:49:47PM +0200, Teufel wrote: > Hi again, > > we got a bit further... I guess its a prob with symbol versioning. > > Greetings, > > Stephan > > valgrind /bin/ls > ==98005== Memcheck, a memory error detector for x86-linux. > ==98005== Copyright (C) 2002-2004, and GNU GPL'd, by Julian Seward. > ==98005== Using valgrind-2.1.0, a program supervision framework for x86-linux. > ==98005== Copyright (C) 2000-2004, and GNU GPL'd, by Julian Seward. > ==98005== Estimated CPU clock rate is 2464 MHz > ==98005== For more details, rerun with: -v > ==98005== > /libexec/ld-elf.so.1: /lib/libc.so.7: version FBSD_1.0 required by /bin/ls not defined > ==98005== > ==98005== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) > ==98005== malloc/free: in use at exit: 0 bytes in 0 blocks. > ==98005== malloc/free: 0 allocs, 0 frees, 0 bytes allocated. > ==98005== For a detailed leak analysis, rerun with: --leak-check=yes > ==98005== For counts of detected errors, rerun with: -v As another data point, valgrind 352_7 with the latest patch applied compiled just yesterday with gcc 3.4 from ports gives: valgrind -v /bin/ls ==91936== Memcheck, a memory error detector for x86-linux. ==91936== Copyright (C) 2002-2004, and GNU GPL'd, by Julian Seward. ==91936== Using valgrind-2.1.0, a program supervision framework for x86-linux. ==91936== Copyright (C) 2000-2004, and GNU GPL'd, by Julian Seward. ==91936== Valgrind library directory: /usr/local/lib/valgrind ==91936== Command line ==91936== /bin/ls ==91936== Startup, with flags: ==91936== -v ==91936== Reading syms from /bin/ls (0x8048000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /libexec/ld-elf.so.1 (0x3C000000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /libexec/ld-elf.so.1 (0xB0000000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /lib/libc.so.7 (0xB0034000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /usr/local/lib/valgrind/vgskin_memcheck.so (0xB013A000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /lib/libgcc_s.so.1 (0xB0262000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /usr/local/lib/valgrind/stage2 (0xB8000000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading suppressions file: /usr/local/lib/valgrind/default.supp ==91936== Estimated CPU clock rate is 801 MHz ==91936== REDIRECT soname:libc.so.6(__GI___errno_location) to soname:libpthread.so.0(__errno_location) ==91936== REDIRECT soname:libc.so.6(__errno_location) to soname:libpthread.so.0(__errno_location) ==91936== REDIRECT soname:libc.so.6(__GI___h_errno_location) to soname:libpthread.so.0(__h_errno_location) ==91936== REDIRECT soname:libc.so.6(__h_errno_location) to soname:libpthread.so.0(__h_errno_location) ==91936== REDIRECT soname:libc.so.6(__GI___res_state) to soname:libpthread.so.0(__res_state) ==91936== REDIRECT soname:libc.so.6(__res_state) to soname:libpthread.so.0(__res_state) ==91936== REDIRECT soname:libc.so.6(stpcpy) to *vgpreload_memcheck.so*(stpcpy) ==91936== REDIRECT soname:libc.so.6(strnlen) to *vgpreload_memcheck.so*(strnlen) ==91936== REDIRECT soname:ld-linux.so.2(stpcpy) to *vgpreload_memcheck.so*(stpcpy) ==91936== REDIRECT soname:ld-linux.so.2(strchr) to *vgpreload_memcheck.so*(strchr) ==91936== ==91936== Reading syms from /usr/local/lib/valgrind/vg_inject.so (0x3C036000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /usr/local/lib/valgrind/vgpreload_memcheck.so (0x3C039000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== Reading syms from /lib/libutil.so.7 (0x3C049000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== discard syms at 0x3C049000-0x3C056000 in /lib/libutil.so.7 due to munmap() ==91936== Reading syms from /lib/libncurses.so.7 (0x3C057000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== discard syms at 0x3C057000-0x3C09A000 in /lib/libncurses.so.7 due to munmap() ==91936== Reading syms from /lib/libc.so.7 (0x3C09B000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== discard syms at 0x3C09B000-0x3C198000 in /lib/libc.so.7 due to munmap() ==91936== Reading syms from /lib/libgcc_s.so.1 (0x3C199000) ==91936== object doesn't have a symbol table ==91936== object doesn't have any debug info ==91936== discard syms at 0x3C199000-0x3C1A4000 in /lib/libgcc_s.so.1 due to munmap() ld-elf.so.1: assert failed: /opt/src/libexec/rtld-elf/rtld.c:686 ==91936== ==91936== Process terminating with default action of signal 6 (SIGABRT): dumping core ==91936== at 0x3C01BB6F: (within /libexec/ld-elf.so.1) ==91936== by 0x3C0173A8: (within /libexec/ld-elf.so.1) ==91936== by 0x3C004168: (within /libexec/ld-elf.so.1) ==91936== by 0x3C004AE9: (within /libexec/ld-elf.so.1) ==91936== Core dumping not implemented. Please re-run valgrind after fixing the crash. ==91936== ==91936== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) ==91936== malloc/free: in use at exit: 0 bytes in 0 blocks. ==91936== malloc/free: 0 allocs, 0 frees, 0 bytes allocated. ==91936== - --91936-- TT/TC: 0 tc sectors discarded. - --91936-- 697 chainings, 0 unchainings. - --91936-- translate: new 897 (13042 -> 181980; ratio 139:10) - --91936-- discard 0 (0 -> 0; ratio 0:10). - --91936-- dispatch: 0 jumps (bb entries), of which 3346 (334600%) were unchained. - --91936-- 20/979 major/minor sched events. 898 tt_fast misses. - --91936-- reg-alloc: 158 t-req-spill, 33321+954 orig+spill uis, 4519 total-reg-r. - --91936-- sanity: 21 cheap, 1 expensive checks. - --91936-- ccalls: 2972 C calls, 56% saves+restores avoided (9942 bytes) - --91936-- 4017 args, avg 0.88 setup instrs each (918 bytes) - --91936-- 0% clear the stack (8916 bytes) - --91936-- 1164 retvals, 33% of reg-reg movs avoided (760 bytes) That's with v1.124 of rtld.c, line 686 reading: case DT_SYMENT: assert(dynp->d_un.d_val == sizeof(Elf_Sym)); break; in digest_dynamic(...). FWIW, if compiled using gcc4 from base (7-BETA4/i386), valgrind freezes in state umtx during the /usr/local/bin/valgrind --tool=memcheck --gen-suppressions=yes true step of make install. That also happens if I execute 'valgrind /bin/ls' later on (producing the same error reported in a previous post, i.e.: /libexec/ld-elf.so.1: /lib/libc.so.7: version FBSD_1.0 required by /bin/ls not defined Later. \n\n -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) Comment: Nikos Ntarmos iD8DBQFHZUnCm6J1ac+VFgoRArkBAKCAIYxiBtpsFDQg4HuygxcEALlTCQCfcBNH 3nj+ARrQKH1/i0tWjwc5OGA= =L6Ag -----END PGP SIGNATURE-----