|
From: J. B. <jb...@gm...> - 2008-11-25 05:15:08
|
Hi everyone <disclaimer> This is not ready for submission just yet, I just wanted to give a heads up that it's still in progress</disclaimer> Attaching version #2 of the ARM patch (First version previously submitted by Evan Geller.) Since the last patch, a condensed changelist follows: (Not being very detailed here, as the previous patch is probably not in use by anyone) * (no)Redirect calls are fixed * New syscalls supported * Bunch of IR generation issues * New instructions * Fixed clone wrapper so threads are working correctly * fixed (RT and normal) signals * restarting syscalls * Client requests work * Lots of cleanup * Pretty much all cpu dependent parts of VG is implemented. Good things: * Most small applications work as expected (ie, testcases) * Commonly used ARMv4 - ARMv7 instructions are in VEX. All code I'm testing on is compiled with gcc with armv7 target. Bad things: * VEX: Instruction translation bugs... Expect to see --tool=none mess up certain programs. ARMv4 instructions seems somewhat stable. * Helgrind, DRD and exp-ptrcheck are failing most tests, not really debugged this part. * Still using an ugly script "prebuild-native..." to build genoffsets. Anyone know enough autoconf foo how to do this correctly? * Stacktrace issues, some varinfo tests fail. There are also a few changes in platform independent code. Will try and create seperate patches for these when I'm ready to submit patches for mainline merge. The patch is based of VG rev: 8801, VEX rev: 1873 -----Test results if anyone is interested------ == 85 tests, 6 stderr failures, 1 stdout failure, 0 post failures == none/tests/blockfault (stderr) none/tests/faultstatus (stderr) none/tests/fdleak_cmsg (stderr) none/tests/fdleak_ipv4 (stderr) none/tests/fucomip (stderr) none/tests/shell (stderr) none/tests/tls (stdout) Command exited with non-zero status 1 real 6m 43.56s user 3m 19.03s sys 1m 4.65s == 125 tests, 29 stderr failures, 6 stdout failures, 0 post failures == memcheck/tests/badjump (stderr) memcheck/tests/badjump2 (stderr) memcheck/tests/errs1 (stderr) memcheck/tests/fprw (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/linux-capget (stderr) memcheck/tests/malloc_free_fill (stderr) memcheck/tests/manuel3 (stderr) memcheck/tests/mempool (stderr) memcheck/tests/mismatches (stderr) memcheck/tests/origin2-not-quite (stderr) memcheck/tests/origin4-many (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/origin6-fp (stderr) memcheck/tests/oset_test (stdout) memcheck/tests/oset_test (stderr) memcheck/tests/partiallydefinedeq (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/sh-mem-random (stdout) memcheck/tests/sh-mem-random (stderr) memcheck/tests/signal2 (stdout) memcheck/tests/signal2 (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/supp_unknown (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stdout) memcheck/tests/varinfo6 (stderr) memcheck/tests/vcpu_bz2 (stderr) memcheck/tests/vcpu_fbench (stdout) memcheck/tests/vcpu_fbench (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/vcpu_fnfns (stderr) memcheck/tests/xml1 (stderr) memcheck/tests/zeropage (stderr) Command exited with non-zero status 1 real 22m 54.07s user 13m 41.70s sys 2m 59.58s Running the other tools (drd, etc) are much slower, and well, I fail too many of them anyway ;) Cheers -Johan *Due to attachment restrictions on the mailinglist, patch is available at http://bugs.kde.org/show_bug.cgi?id=126449 |
|
From: Bart V. A. <bar...@gm...> - 2008-11-25 07:42:27
|
On Tue, Nov 25, 2008 at 6:15 AM, Johan Björk <jb...@gm...> wrote: > * Still using an ugly script "prebuild-native..." to build genoffsets. > Anyone know enough autoconf foo how to do this correctly? Please have a look at the patch attached to https://bugs.kde.org/show_bug.cgi?id=162295. If you can't use it directly, it's probably a good starting point for building genoffsets. Bart. |
|
From: J. B. <jb...@gm...> - 2008-11-26 18:44:51
|
Bart, Thank you, that looks like it'd work, I'll give it a try next time I can spare some cycles for VG. Nice hack :) /Johan On Mon, Nov 24, 2008 at 11:42 PM, Bart Van Assche <bar...@gm...> wrote: > On Tue, Nov 25, 2008 at 6:15 AM, Johan Björk <jb...@gm...> wrote: >> * Still using an ugly script "prebuild-native..." to build genoffsets. >> Anyone know enough autoconf foo how to do this correctly? > > Please have a look at the patch attached to > https://bugs.kde.org/show_bug.cgi?id=162295. If you can't use it > directly, it's probably a good starting point for building genoffsets. > > Bart. > |
|
From: Bart V. A. <bar...@gm...> - 2008-11-26 18:44:48
|
> On Mon, Nov 24, 2008 at 11:42 PM, Bart Van Assche > <bar...@gm...> wrote: >> On Tue, Nov 25, 2008 at 6:15 AM, Johan Björk <jb...@gm...> wrote: >>> * Still using an ugly script "prebuild-native..." to build genoffsets. >>> Anyone know enough autoconf foo how to do this correctly? >> >> Please have a look at the patch attached to >> https://bugs.kde.org/show_bug.cgi?id=162295. If you can't use it >> directly, it's probably a good starting point for building genoffsets. On Wed, Nov 26, 2008 at 7:40 PM, Johan Björk <jb...@gm...> wrote: > Thank you, that looks like it'd work, I'll give it a try next time I > can spare some cycles for VG. > > Nice hack :) The patch itself is based on an idea of Paul Mackerras (http://article.gmane.org/gmane.comp.debugging.valgrind.devel/3528), and the patch is being considered for inclusion in the next Valgrind + VEX release. Suggestions on how to modify the patch such that it also supports the ARM platform are welcome, Bart. |
|
From: J. B. <jb...@gm...> - 2008-12-01 18:51:17
|
Just tried this, works fine (as expected) on ARM. What's holding up to get this integrated in trunk? Thanks so much /Johan On Wed, Nov 26, 2008 at 10:44 AM, Bart Van Assche <bar...@gm...> wrote: >> On Mon, Nov 24, 2008 at 11:42 PM, Bart Van Assche >> <bar...@gm...> wrote: >>> On Tue, Nov 25, 2008 at 6:15 AM, Johan Björk <jb...@gm...> wrote: >>>> * Still using an ugly script "prebuild-native..." to build genoffsets. >>>> Anyone know enough autoconf foo how to do this correctly? >>> >>> Please have a look at the patch attached to >>> https://bugs.kde.org/show_bug.cgi?id=162295. If you can't use it >>> directly, it's probably a good starting point for building genoffsets. > > On Wed, Nov 26, 2008 at 7:40 PM, Johan Björk <jb...@gm...> wrote: >> Thank you, that looks like it'd work, I'll give it a try next time I >> can spare some cycles for VG. >> >> Nice hack :) > > The patch itself is based on an idea of Paul Mackerras > (http://article.gmane.org/gmane.comp.debugging.valgrind.devel/3528), > and the patch is being considered for inclusion in the next Valgrind + > VEX release. Suggestions on how to modify the patch such that it also > supports the ARM platform are welcome, > > Bart. > |
|
From: Bart V. A. <bar...@gm...> - 2008-12-02 07:39:17
|
On Mon, Dec 1, 2008 at 7:51 PM, Johan Björk <jb...@gm...> wrote: > Just tried this, works fine (as expected) on ARM. > What's holding up to get this integrated in trunk? Integration in the trunk is on Julian's schedule, but I don't know the date. Bart. |
|
From: Robert W. <rj...@du...> - 2008-12-03 00:58:27
|
Minor feedback on the patch: * In cg-arm.c, you might want to update the copyright, since you created this file. * In cg-arm.c, the warning message says "PPC32" instead of "ARM". * d3basics.c has what looks like a debugging VG_(printf) left in there. Also in m_machine.c, sigframe-arm-linux.c, etc. * readdwarf.c comments out a debug message. Why? * m_main.c forward-declares raise and __aeabi_unwind_cpp_pr0, and then immediately implements them. Any reason why? I haven't looked beyond sigframe-arm-linux.c yet, so I may have more when I get a moment to take a look. General comment: * Indenting is 3 spaces, no tabs. Note: I haven't tried this patch myself, as I don't have a linux-arm box to try with. These comments are just from code inspection. Regards, Robert. |
|
From: J. B. <jb...@gm...> - 2008-12-03 01:11:35
|
Thanks! As I wrote, this is not meant for inclusion (yet -- among others, I need to clean it up), just a heads up where the current status is. I'll make sure to fix the issues you pointed out. -Johan On Tue, Dec 2, 2008 at 4:58 PM, Robert Walsh <rj...@du...> wrote: > Minor feedback on the patch: > > * In cg-arm.c, you might want to update the copyright, since you > created this file. > * In cg-arm.c, the warning message says "PPC32" instead of "ARM". > * d3basics.c has what looks like a debugging VG_(printf) left in > there. Also in m_machine.c, sigframe-arm-linux.c, etc. > * readdwarf.c comments out a debug message. Why? > * m_main.c forward-declares raise and __aeabi_unwind_cpp_pr0, and > then immediately implements them. Any reason why? > > I haven't looked beyond sigframe-arm-linux.c yet, so I may have more > when I get a moment to take a look. > > General comment: > > * Indenting is 3 spaces, no tabs. > > Note: I haven't tried this patch myself, as I don't have a linux-arm > box to try with. These comments are just from code inspection. > > Regards, > Robert. > |
|
From: Dan K. <da...@ke...> - 2009-03-18 00:32:20
|
What's the status of the arm port? (It's been three whole months, not too soon to ask, is it? :-) - Dan On Tue, Dec 2, 2008 at 6:11 PM, Johan Björk <jb...@gm...> wrote: > Thanks! > > As I wrote, this is not meant for inclusion (yet -- among others, I > need to clean it up), just a heads up where the current status is. > I'll make sure to fix the issues you pointed out. > > -Johan > > On Tue, Dec 2, 2008 at 4:58 PM, Robert Walsh <rj...@du...> wrote: >> Minor feedback on the patch: >> >> * In cg-arm.c, you might want to update the copyright, since you >> created this file. >> * In cg-arm.c, the warning message says "PPC32" instead of "ARM". >> * d3basics.c has what looks like a debugging VG_(printf) left in >> there. Also in m_machine.c, sigframe-arm-linux.c, etc. >> * readdwarf.c comments out a debug message. Why? >> * m_main.c forward-declares raise and __aeabi_unwind_cpp_pr0, and >> then immediately implements them. Any reason why? >> >> I haven't looked beyond sigframe-arm-linux.c yet, so I may have more >> when I get a moment to take a look. >> >> General comment: >> >> * Indenting is 3 spaces, no tabs. >> >> Note: I haven't tried this patch myself, as I don't have a linux-arm >> box to try with. These comments are just from code inspection. >> >> Regards, >> Robert. >> > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > |
|
From: Johan B. <jb...@gm...> - 2009-03-18 22:33:16
|
Hi Dan, No, it is not to soon to ask (asking never hurts, does it?) I've been meaning to send an updated patch for some time, just haven't got the opportunity to actually look through all the diff's and make sure they are sane. I'll try to send a new patch by the weekend at the latest. If the unit tests are a good measure of what the state is, then I'd say it's pretty good. The tests that are failing are mostly due to floating point not being implemented, and using soft floating point will give completely different errors from valgrind so the .exp files don't match. (4 vs 8 byte reads, etc) We're also using it internally at Palm for quite a few projects, with no major blocking issues. /Johan On Tue, Mar 17, 2009 at 4:32 PM, Dan Kegel <da...@ke...> wrote: > What's the status of the arm port? (It's been three whole months, > not too soon to ask, is it? :-) > - Dan > > On Tue, Dec 2, 2008 at 6:11 PM, Johan Björk <jb...@gm...> wrote: >> Thanks! >> >> As I wrote, this is not meant for inclusion (yet -- among others, I >> need to clean it up), just a heads up where the current status is. >> I'll make sure to fix the issues you pointed out. >> >> -Johan >> >> On Tue, Dec 2, 2008 at 4:58 PM, Robert Walsh <rj...@du...> wrote: >>> Minor feedback on the patch: >>> >>> * In cg-arm.c, you might want to update the copyright, since you >>> created this file. >>> * In cg-arm.c, the warning message says "PPC32" instead of "ARM". >>> * d3basics.c has what looks like a debugging VG_(printf) left in >>> there. Also in m_machine.c, sigframe-arm-linux.c, etc. >>> * readdwarf.c comments out a debug message. Why? >>> * m_main.c forward-declares raise and __aeabi_unwind_cpp_pr0, and >>> then immediately implements them. Any reason why? >>> >>> I haven't looked beyond sigframe-arm-linux.c yet, so I may have more >>> when I get a moment to take a look. >>> >>> General comment: >>> >>> * Indenting is 3 spaces, no tabs. >>> >>> Note: I haven't tried this patch myself, as I don't have a linux-arm >>> box to try with. These comments are just from code inspection. >>> >>> Regards, >>> Robert. >>> >> >> ------------------------------------------------------------------------- >> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge >> Build the coolest Linux based applications with Moblin SDK & win great prizes >> Grand prize is a trip for two to an Open Source event anywhere in the world >> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >> _______________________________________________ >> Valgrind-developers mailing list >> Val...@li... >> https://lists.sourceforge.net/lists/listinfo/valgrind-developers >> > |
|
From: Johan B. <jb...@gm...> - 2009-03-23 04:05:03
|
All, Updated the patch attached to https://bugs.kde.org/show_bug.cgi?id=126449 . It may not be pretty in all parts, but it works pretty well. Didn't have time to walk through the entire patch & cleanup, it's getting pretty huge :( There are tons and tons of changes since the last drop, I don't even know where to start. End result is that this drop pass most testcases and is pretty usable for real debugging. Guess some high level notes are appropriate * No VFP/Neon support (VEX will panic if it hits a VFP DPI instruction. * Stacktraces are not always complete, there is probably more improvement possible in this area * There are probably a few more lingering issues in instruction decoding, vcp_fnfns fail on the last decimal at a few of the tests (with soft-floating point, so it should not happen), as well as I've seen some apps that fail even when used with --tool=none. Pretty rare though. Please report any issues you find /Johan On Wed, Mar 18, 2009 at 2:33 PM, Johan Björk <jb...@gm...> wrote: > Hi Dan, > > No, it is not to soon to ask (asking never hurts, does it?) > I've been meaning to send an updated patch for some time, just haven't > got the opportunity to actually look through all the diff's and make > sure they are sane. I'll try to send a new patch by the weekend at the > latest. > > If the unit tests are a good measure of what the state is, then I'd > say it's pretty good. The tests that are failing are mostly due to > floating point not being implemented, and using soft floating point > will give completely different errors from valgrind so the .exp files > don't match. (4 vs 8 byte reads, etc) > We're also using it internally at Palm for quite a few projects, with > no major blocking issues. > > /Johan > > > On Tue, Mar 17, 2009 at 4:32 PM, Dan Kegel <da...@ke...> wrote: >> What's the status of the arm port? (It's been three whole months, >> not too soon to ask, is it? :-) >> - Dan >> >> On Tue, Dec 2, 2008 at 6:11 PM, Johan Björk <jb...@gm...> wrote: >>> Thanks! >>> >>> As I wrote, this is not meant for inclusion (yet -- among others, I >>> need to clean it up), just a heads up where the current status is. >>> I'll make sure to fix the issues you pointed out. >>> >>> -Johan >>> >>> On Tue, Dec 2, 2008 at 4:58 PM, Robert Walsh <rj...@du...> wrote: >>>> Minor feedback on the patch: >>>> >>>> * In cg-arm.c, you might want to update the copyright, since you >>>> created this file. >>>> * In cg-arm.c, the warning message says "PPC32" instead of "ARM". >>>> * d3basics.c has what looks like a debugging VG_(printf) left in >>>> there. Also in m_machine.c, sigframe-arm-linux.c, etc. >>>> * readdwarf.c comments out a debug message. Why? >>>> * m_main.c forward-declares raise and __aeabi_unwind_cpp_pr0, and >>>> then immediately implements them. Any reason why? >>>> >>>> I haven't looked beyond sigframe-arm-linux.c yet, so I may have more >>>> when I get a moment to take a look. >>>> >>>> General comment: >>>> >>>> * Indenting is 3 spaces, no tabs. >>>> >>>> Note: I haven't tried this patch myself, as I don't have a linux-arm >>>> box to try with. These comments are just from code inspection. >>>> >>>> Regards, >>>> Robert. >>>> >>> >>> ------------------------------------------------------------------------- >>> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge >>> Build the coolest Linux based applications with Moblin SDK & win great prizes >>> Grand prize is a trip for two to an Open Source event anywhere in the world >>> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >>> _______________________________________________ >>> Valgrind-developers mailing list >>> Val...@li... >>> https://lists.sourceforge.net/lists/listinfo/valgrind-developers >>> >> > |
Johan, Thanks for posting the patch. I was able to compile but I'm having problems running valgrind. We're running uClibc 0.9.29 on ARMv9. I've read through some of the posts on valgrind with uclibc, but it's not clear to me if that is the problem. Here's the output of running ls under valgrind with memcheck. # valgrind -v ls ==164== Memcheck, a memory error detector. ==164== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al. ==164== Using LibVEX rev 71311, a library for dynamic binary translation. ==164== Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP. ==164== Using valgrind-3.5.0.SVN, a dynamic binary instrumentation framework. ==164== Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al. ==164== --164-- Command line --164-- ls --164-- Startup, with flags: --164-- -v --164-- Contents of /proc/version: --164-- Linux version 2.6.28-leapfrog (rdowling@rdowling-laptop) (gcc version 4.1.1) #126 Tue Feb 24 08:55:41 PST 2009 --164-- Arch and hwcaps: ARM, arm-baseline --164-- Page sizes: currently 4096, max supported 4096 --164-- Valgrind library directory: /usr//lib/valgrind --164-- Reading syms from /bin/busybox (0x8000) --164-- object doesn't have a symbol table --164-- Reading syms from /lib/ld-uClibc-0.9.29.so (0x4000000) --164-- WARNING: Serious error when reading debug info --164-- When reading debug info from arm_commpage: --164-- failed to stat64/stat this file --164-- Reading suppressions file: /usr//lib/valgrind/default.supp ==164== Conditional jump or move depends on uninitialised value(s) ==164== at 0x4004C3C: _dl_get_ready_to_run (in /lib/ld-uClibc-0.9.29.so) ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so) --164-- Reading syms from /usr/lib/valgrind/vgpreload_core-arm-linux.so (0x48100 00) --164-- WARNING: Serious error when reading debug info --164-- When reading debug info from /usr/lib/valgrind/vgpreload_core-arm-linux. so: --164-- Ignoring non-dwarf2 block in .debug_info --164-- WARNING: Serious error when reading debug info --164-- When reading debug info from /usr/lib/valgrind/vgpreload_core-arm-linux. so: --164-- Last block truncated in .debug_info; ignoring --164-- Reading syms from /usr/lib/valgrind/vgpreload_memcheck-arm-linux.so (0x4 819000) --164-- WARNING: Serious error when reading debug info --164-- When reading debug info from /usr/lib/valgrind/vgpreload_memcheck-arm-li nux.so: --164-- Ignoring non-dwarf2 block in .debug_info --164-- WARNING: Serious error when reading debug info --164-- When reading debug info from /usr/lib/valgrind/vgpreload_memcheck-arm-li nux.so: --164-- Last block truncated in .debug_info; ignoring ==164== ==164== Conditional jump or move depends on uninitialised value(s) ==164== at 0x40046F0: _dl_load_shared_library (in /lib/ld-uClibc-0.9.29.so) ==164== by 0x40051AB: _dl_get_ready_to_run (in /lib/ld-uClibc-0.9.29.so) ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so) ==164== ==164== Conditional jump or move depends on uninitialised value(s) ==164== at 0x4004750: _dl_load_shared_library (in /lib/ld-uClibc-0.9.29.so) ==164== by 0x40051AB: _dl_get_ready_to_run (in /lib/ld-uClibc-0.9.29.so) ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so) --164-- Reading syms from /lib/libcrypt-0.9.29.so (0x4828000) --164-- VALGRIND INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) - exiti ng --164-- si_code=1; Faulting address: 0x48682C4; sp: 0x61d2c480 valgrind: the 'impossible' happened: Killed by fatal signal ==164== at 0x38072110: ??? (in /usr/lib/valgrind/memcheck-arm-linux) sched status: running_tid=1 Thread 1: status = VgTs_Runnable ==164== at 0x4001B84: ??? (in /lib/ld-uClibc-0.9.29.so) ==164== by 0x4003EC7: _dl_load_elf_shared_library (in /lib/ld-uClibc-0.9.29.s o) ==164== by 0x4007FFF: ??? Note: see also the FAQ.txt in the source distribution. It contains workarounds to several common problems. If that doesn't help, please report this bug to: www.valgrind.org In the bug report, send all the above text, the valgrind version, and what Linux distro you are using. Thanks. # The fact that it can't read the symbols from busybox is worrisome. I get the same sort of error when running a program I compile myself, so busybox (v1.5.0) is probably not to blame. And always "object doesn't have a symbol table". I think I'm missing something very basic here. Let me know if there's info I can provide to be more helpful. thanks, Dennis |
|
From: Johan B. <jb...@gm...> - 2009-03-24 20:16:27
|
Hi Dennis, Thanks for trying it out, not seen that before. What toolchain are you using to compile? CodeSourcery? Can you send me a simple binary + libc to look at? Thanks /Johan On Mon, Mar 23, 2009 at 9:17 PM, Dennis O'Brien <DO...@le...> wrote: > Johan, > > Thanks for posting the patch. I was able to compile but I'm having > problems running valgrind. We're running uClibc 0.9.29 on ARMv9. I've > read through some of the posts on valgrind with uclibc, but it's not > clear to me if that is the problem. > > Here's the output of running ls under valgrind with memcheck. > > # valgrind -v ls > > ==164== Memcheck, a memory error detector. > > ==164== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al. > > ==164== Using LibVEX rev 71311, a library for dynamic binary > translation. > ==164== Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP. > > ==164== Using valgrind-3.5.0.SVN, a dynamic binary instrumentation > framework. > ==164== Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al. > > ==164== > > --164-- Command line > > --164-- ls > > --164-- Startup, with flags: > > --164-- -v > > --164-- Contents of /proc/version: > > --164-- Linux version 2.6.28-leapfrog (rdowling@rdowling-laptop) (gcc > version > 4.1.1) #126 Tue Feb 24 08:55:41 PST 2009 > > --164-- Arch and hwcaps: ARM, arm-baseline > > --164-- Page sizes: currently 4096, max supported 4096 > > --164-- Valgrind library directory: /usr//lib/valgrind > > --164-- Reading syms from /bin/busybox (0x8000) > > --164-- object doesn't have a symbol table > > --164-- Reading syms from /lib/ld-uClibc-0.9.29.so (0x4000000) > > --164-- WARNING: Serious error when reading debug info > > --164-- When reading debug info from arm_commpage: > > --164-- failed to stat64/stat this file > > --164-- Reading suppressions file: /usr//lib/valgrind/default.supp > > ==164== Conditional jump or move depends on uninitialised value(s) > > ==164== at 0x4004C3C: _dl_get_ready_to_run (in > /lib/ld-uClibc-0.9.29.so) > ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so) > > --164-- Reading syms from /usr/lib/valgrind/vgpreload_core-arm-linux.so > (0x48100 > 00) > > --164-- WARNING: Serious error when reading debug info > > --164-- When reading debug info from > /usr/lib/valgrind/vgpreload_core-arm-linux. > so: > > --164-- Ignoring non-dwarf2 block in .debug_info > > --164-- WARNING: Serious error when reading debug info > > --164-- When reading debug info from > /usr/lib/valgrind/vgpreload_core-arm-linux. > so: > > --164-- Last block truncated in .debug_info; ignoring > > --164-- Reading syms from > /usr/lib/valgrind/vgpreload_memcheck-arm-linux.so (0x4 > 819000) > > --164-- WARNING: Serious error when reading debug info > > --164-- When reading debug info from > /usr/lib/valgrind/vgpreload_memcheck-arm-li > nux.so: > > --164-- Ignoring non-dwarf2 block in .debug_info > > --164-- WARNING: Serious error when reading debug info > > --164-- When reading debug info from > /usr/lib/valgrind/vgpreload_memcheck-arm-li > nux.so: > > --164-- Last block truncated in .debug_info; ignoring > > ==164== > > ==164== Conditional jump or move depends on uninitialised value(s) > > ==164== at 0x40046F0: _dl_load_shared_library (in > /lib/ld-uClibc-0.9.29.so) > ==164== by 0x40051AB: _dl_get_ready_to_run (in > /lib/ld-uClibc-0.9.29.so) > ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so) > > ==164== > > ==164== Conditional jump or move depends on uninitialised value(s) > > ==164== at 0x4004750: _dl_load_shared_library (in > /lib/ld-uClibc-0.9.29.so) > ==164== by 0x40051AB: _dl_get_ready_to_run (in > /lib/ld-uClibc-0.9.29.so) > ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so) > > --164-- Reading syms from /lib/libcrypt-0.9.29.so (0x4828000) > > --164-- VALGRIND INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) > - exiti > ng > > --164-- si_code=1; Faulting address: 0x48682C4; sp: 0x61d2c480 > > > > valgrind: the 'impossible' happened: > > Killed by fatal signal > > ==164== at 0x38072110: ??? (in /usr/lib/valgrind/memcheck-arm-linux) > > > > sched status: > > running_tid=1 > > > > Thread 1: status = VgTs_Runnable > > ==164== at 0x4001B84: ??? (in /lib/ld-uClibc-0.9.29.so) > > ==164== by 0x4003EC7: _dl_load_elf_shared_library (in > /lib/ld-uClibc-0.9.29.s > o) > > ==164== by 0x4007FFF: ??? > > > > > > Note: see also the FAQ.txt in the source distribution. > > It contains workarounds to several common problems. > > > > If that doesn't help, please report this bug to: www.valgrind.org > > > > In the bug report, send all the above text, the valgrind > > version, and what Linux distro you are using. Thanks. > > > > # > > > > The fact that it can't read the symbols from busybox is worrisome. I > get the same sort of error when running a program I compile myself, so > busybox (v1.5.0) is probably not to blame. And always "object doesn't > have a symbol table". I think I'm missing something very basic here. > > Let me know if there's info I can provide to be more helpful. > > thanks, > Dennis > > > ------------------------------------------------------------------------------ > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > software that enables intelligent coding and step-through debugging. > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > |
Hi Johan,
We are using a gcc toolchain from RidgeRun. This compiler was selected for soft-float support (no fpu on our platform).
ARM9
Linux 2.6.28
Busybox 1.5.0
RidgeRun toolchain (version?)
uClibc 0.9.29 (included as part of RidgeRun toolchain)
I'll send the libc and small binary off list. But this is the output:
# ./helloworld
hello world
# valgrind -v ./helloworld
==212== Memcheck, a memory error detector.
==212== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al.
==212== Using LibVEX rev 71311, a library for dynamic binary translation.
==212== Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP.
==212== Using valgrind-3.5.0.SVN, a dynamic binary instrumentation framework.
==212== Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al.
==212==
--212-- Command line
--212-- ./helloworld
--212-- Startup, with flags:
--212-- -v
--212-- Contents of /proc/version:
--212-- Linux version 2.6.28-leapfrog (rdowling@rdowling-laptop) (gcc version
4.1.1) #126 Tue Feb 24 08:55:41 PST 2009
--212-- Arch and hwcaps: ARM, arm-baseline
--212-- Page sizes: currently 4096, max supported 4096
--212-- Valgrind library directory: /usr//lib/valgrind
--212-- Reading syms from /tmp/helloworld (0x8000)
--212-- WARNING: Serious error when reading debug info
--212-- When reading debug info from /tmp/helloworld:
--212-- Ignoring non-dwarf2 block in .debug_info
Segmentation fault
#
In the mean time, here are more details on our system ($ run on the build machine)
dobrien@dobrien-ubuntu:~$ ls -l /opt/RidgeRun/arm-eabi-uclibc/lib/libc.so*
-rw-r--r-- 1 dobrien dobrien 234 2007-09-12 08:20 /opt/RidgeRun/arm-eabi-uclibc/lib/libc.so
lrwxrwxrwx 1 dobrien dobrien 19 2009-03-06 19:38 /opt/RidgeRun/arm-eabi-uclibc/lib/libc.so.0 -> libuClibc-0.9.29.so
dobrien@dobrien-ubuntu:~$ ls -l /opt/RidgeRun/arm-eabi-uclibc/lib/libuClibc-0.9.29.so
-rw-r--r-- 1 dobrien dobrien 485371 2007-09-12 08:20 /opt/RidgeRun/arm-eabi-uclibc/lib/libuClibc-0.9.29.so
dobrien@dobrien-ubuntu:~$ arm-linux-g++ --version
arm-linux-g++ (GCC) 4.1.1
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
And to err on the side of too much info:
dobrien@dobrien-ubuntu:~$ echo "" | arm-linux-g++ -E -dM -
#define __DBL_MIN_EXP__ (-1021)
#define __FLT_MIN__ 1.17549435e-38F
#define __CHAR_BIT__ 8
#define __WCHAR_MAX__ 4294967295U
#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
#define __FLT_EVAL_METHOD__ 0
#define __DBL_MIN_10_EXP__ (-307)
#define __FINITE_MATH_ONLY__ 0
#define __ARMEL__ 1
#define __GNUC_PATCHLEVEL__ 1
#define __SHRT_MAX__ 32767
#define __LDBL_MAX__ 1.7976931348623157e+308L
#define __UINTMAX_TYPE__ long long unsigned int
#define __linux 1
#define __CHAR_UNSIGNED__ 1
#define __LDBL_MAX_EXP__ 1024
#define __linux__ 1
#define __SCHAR_MAX__ 127
#define __USER_LABEL_PREFIX__
#define __STDC_HOSTED__ 1
#define __LDBL_HAS_INFINITY__ 1
#define __DBL_DIG__ 15
#define __FLT_EPSILON__ 1.19209290e-7F
#define __APCS_32__ 1
#define __LDBL_MIN__ 2.2250738585072014e-308L
#define __unix__ 1
#define __DECIMAL_DIG__ 17
#define __gnu_linux__ 1
#define __LDBL_HAS_QUIET_NAN__ 1
#define __GNUC__ 4
#define __ARM_ARCH_5T__ 1
#define __DBL_MAX__ 1.7976931348623157e+308
#define __DBL_HAS_INFINITY__ 1
#define __THUMB_INTERWORK__ 1
#define __DBL_MAX_EXP__ 1024
#define __LONG_LONG_MAX__ 9223372036854775807LL
#define __GXX_ABI_VERSION 1002
#define __FLT_MIN_EXP__ (-125)
#define __DBL_MIN__ 2.2250738585072014e-308
#define __DBL_HAS_QUIET_NAN__ 1
#define __REGISTER_PREFIX__
#define __NO_INLINE__ 1
#define __FLT_MANT_DIG__ 24
#define __VERSION__ "4.1.1"
#define __SOFTFP__ 1
#define unix 1
#define __SIZE_TYPE__ unsigned int
#define __ELF__ 1
#define __FLT_RADIX__ 2
#define __LDBL_EPSILON__ 2.2204460492503131e-16L
#define __VFP_FP__ 1
#define __LDBL_DIG__ 15
#define __FLT_HAS_QUIET_NAN__ 1
#define __FLT_MAX_10_EXP__ 38
#define __LONG_MAX__ 2147483647L
#define __FLT_HAS_INFINITY__ 1
#define __unix 1
#define linux 1
#define __GXX_MERGED_TYPEINFO_NAMES 0
#define __LDBL_MANT_DIG__ 53
#define __WCHAR_TYPE__ unsigned int
#define __FLT_DIG__ 6
#define __INT_MAX__ 2147483647
#define __FLT_MAX_EXP__ 128
#define __DBL_MANT_DIG__ 53
#define __WINT_TYPE__ unsigned int
#define __LDBL_MIN_EXP__ (-1021)
#define __arm__ 1
#define __LDBL_MAX_10_EXP__ 308
#define __DBL_EPSILON__ 2.2204460492503131e-16
#define __INTMAX_MAX__ 9223372036854775807LL
#define __FLT_DENORM_MIN__ 1.40129846e-45F
#define __FLT_MAX__ 3.40282347e+38F
#define __FLT_MIN_10_EXP__ (-37)
#define __INTMAX_TYPE__ long long int
#define __GNUC_MINOR__ 1
#define __DBL_MAX_10_EXP__ 308
#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
#define __STDC__ 1
#define __PTRDIFF_TYPE__ int
#define __ARM_EABI__ 1
#define __LDBL_MIN_10_EXP__ (-307)
dobrien@dobrien-ubuntu:~$ arm-linux-g++ -dumpspecs
*asm:
%{mbig-endian:-EB} %{mlittle-endian:-EL} %{mcpu=*:-mcpu=%*} %{march=*:-march=%*} %{mapcs-*:-mapcs-%*} %(subtarget_asm_float_spec) %{mthumb-interwork:-mthumb-interwork} %{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} %{mfloat-abi=*} %{mfpu=*} %(subtarget_extra_asm_spec)
*asm_debug:
%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}
*asm_final:
*asm_options:
%a %Y %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}
*invoke_as:
%{!S:-o %|.s |
as %(asm_options) %m.s %A }
*cpp:
%(subtarget_cpp_spec) %{msoft-float:%{mhard-float: %e-msoft-float and -mhard_float may not be used together}} %{mbig-endian:%{mlittle-endian: %e-mbig-endian and -mlittle-endian may not be used together}}
*cpp_options:
%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w} %{f*} %{g*:%{!g0:%{!fno-working-directory:-fworking-directory}}} %{O*} %{undef} %{save-temps:-fpch-preprocess}
*cpp_debug_options:
%{d*}
*cpp_unique_options:
%{C|CC:%{!E:%eGCC does not support -C or -CC without -E}} %{!Q:-quiet} %{nostdinc*} %{C} %{CC} %{v} %{I*&F*} %{P} %I %{MD:-MD %{!o:%b.d}%{o*:%.d%*}} %{MMD:-MMD %{!o:%b.d}%{o*:%.d%*}} %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*} %{!E:%{!M:%{!MM:%{MD|MMD:%{o*:-MQ %*}}}}} %{remap} %{g3:-dD} %{H} %C %{D*&U*&A*} %{i*} %Z %i %{fmudflap:-D_MUDFLAP -include mf-runtime.h} %{fmudflapth:-D_MUDFLAP -D_MUDFLAPTH -include mf-runtime.h} %{E|M|MM:%W{o*}}
*trad_capable_cpp:
cc1 -E %{traditional|ftraditional|traditional-cpp:-traditional-cpp}
*cc1:
%{profile:-p}
*cc1_options:
%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}} %1 %{!Q:-quiet} -dumpbase %B %{d*} %{m*} %{a*} %{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}%{!c:%{!S:-auxbase %b}} %{g*} %{O*} %{W*&pedantic*} %{w} %{std*&ansi&trigraphs} %{v:-version} %{pg:-p} %{p} %{f*} %{undef} %{Qn:-fno-ident} %{--help:--help} %{--target-help:--target-help} %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}} %{fsyntax-only:-o %j} %{-param*} %{fmudflap|fmudflapth:-fno-builtin -fno-merge-constants} %{coverage:-fprofile-arcs -ftest-coverage}
*cc1plus:
*link_gcc_c_sequence:
%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}
*link_ssp:
%{fstack-protector|fstack-protector-all:-lssp_nonshared -lssp}
*endfile:
%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s
*link:
%{!static:--eh-frame-hdr} %{h*} %{version:-v} %{b} %{static:-Bstatic} %{shared:-shared} %{symbolic:-Bsymbolic} %{rdynamic:-export-dynamic} %{!dynamic-linker:-dynamic-linker /lib/ld-uClibc.so.0} -X %{mbig-endian:-EB} %{mlittle-endian:-EL} -m armelf_linux_eabi
*lib:
%{pthread:-lpthread} %{shared:-lc} %{!shared:%{profile:-lc_p}%{!profile:-lc}}
*mfwrap:
%{static: %{fmudflap|fmudflapth: --wrap=malloc --wrap=free --wrap=calloc --wrap=realloc --wrap=mmap --wrap=munmap --wrap=alloca} %{fmudflapth: --wrap=pthread_create}} %{fmudflap|fmudflapth: --wrap=main}
*mflib:
%{fmudflap|fmudflapth: -export-dynamic}
*libgcc:
%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --as-needed -lgcc_s --no-as-needed}%{shared-libgcc:-lgcc_s%{!shared: -lgcc}}}}
*startfile:
%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}
*switches_need_spaces:
*cross_compile:
1
*version:
4.1.1
*multilib:
. ;
*multilib_defaults:
marm mlittle-endian mhard-float mno-thumb-interwork
*multilib_extra:
*multilib_matches:
*multilib_exclusions:
*multilib_options:
*linker:
collect2
*link_libgcc:
%D
*md_exec_prefix:
*md_startfile_prefix:
*md_startfile_prefix_1:
*startfile_prefix_spec:
*sysroot_spec:
--sysroot=%R
*sysroot_suffix_spec:
*sysroot_hdrs_suffix_spec:
*subtarget_cpp_spec:
%{posix:-D_POSIX_SOURCE}
*subtarget_extra_asm_spec:
%{mabi=apcs-gnu|mabi=atpcs:-meabi=gnu;:-meabi=4}
*subtarget_asm_float_spec:
%{mapcs-float:-mfloat}
*link_command:
%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S: %(linker) %l %{pie:-pie} %X %{o*} %{A} %{d} %{e*} %{m} %{N} %{n} %{r} %{s} %{t} %{u*} %{x} %{z} %{Z} %{!A:%{!nostdlib:%{!nostartfiles:%S}}} %{static:} %{L*} %(mfwrap) %(link_libgcc) %o %(mflib) %{fprofile-arcs|fprofile-generate|coverage:-lgcov} %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}} %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} }}}}}}
-----Original Message-----
From: Johan Björk [mailto:jb...@gm...]
Sent: Tuesday, March 24, 2009 1:16 PM
To: Dennis O'Brien
Cc: val...@li...
Subject: Re: [Valgrind-developers] Status update on ARM patch
Hi Dennis,
Thanks for trying it out, not seen that before. What toolchain are you using to compile? CodeSourcery?
Can you send me a simple binary + libc to look at?
Thanks
/Johan
On Mon, Mar 23, 2009 at 9:17 PM, Dennis O'Brien <DO...@le...> wrote:
> Johan,
>
> Thanks for posting the patch. I was able to compile but I'm having
> problems running valgrind. We're running uClibc 0.9.29 on ARMv9.
> I've read through some of the posts on valgrind with uclibc, but it's
> not clear to me if that is the problem.
>
> Here's the output of running ls under valgrind with memcheck.
>
> # valgrind -v ls
>
> ==164== Memcheck, a memory error detector.
>
> ==164== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al.
>
> ==164== Using LibVEX rev 71311, a library for dynamic binary
> translation.
> ==164== Copyright (C) 2004-2009, and GNU GPL'd, by OpenWorks LLP.
>
> ==164== Using valgrind-3.5.0.SVN, a dynamic binary instrumentation
> framework.
> ==164== Copyright (C) 2000-2009, and GNU GPL'd, by Julian Seward et al.
>
> ==164==
>
> --164-- Command line
>
> --164-- ls
>
> --164-- Startup, with flags:
>
> --164-- -v
>
> --164-- Contents of /proc/version:
>
> --164-- Linux version 2.6.28-leapfrog (rdowling@rdowling-laptop)
> (gcc version
> 4.1.1) #126 Tue Feb 24 08:55:41 PST 2009
>
> --164-- Arch and hwcaps: ARM, arm-baseline
>
> --164-- Page sizes: currently 4096, max supported 4096
>
> --164-- Valgrind library directory: /usr//lib/valgrind
>
> --164-- Reading syms from /bin/busybox (0x8000)
>
> --164-- object doesn't have a symbol table
>
> --164-- Reading syms from /lib/ld-uClibc-0.9.29.so (0x4000000)
>
> --164-- WARNING: Serious error when reading debug info
>
> --164-- When reading debug info from arm_commpage:
>
> --164-- failed to stat64/stat this file
>
> --164-- Reading suppressions file: /usr//lib/valgrind/default.supp
>
> ==164== Conditional jump or move depends on uninitialised value(s)
>
> ==164== at 0x4004C3C: _dl_get_ready_to_run (in
> /lib/ld-uClibc-0.9.29.so)
> ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so)
>
> --164-- Reading syms from
> /usr/lib/valgrind/vgpreload_core-arm-linux.so
> (0x48100
> 00)
>
> --164-- WARNING: Serious error when reading debug info
>
> --164-- When reading debug info from
> /usr/lib/valgrind/vgpreload_core-arm-linux.
> so:
>
> --164-- Ignoring non-dwarf2 block in .debug_info
>
> --164-- WARNING: Serious error when reading debug info
>
> --164-- When reading debug info from
> /usr/lib/valgrind/vgpreload_core-arm-linux.
> so:
>
> --164-- Last block truncated in .debug_info; ignoring
>
> --164-- Reading syms from
> /usr/lib/valgrind/vgpreload_memcheck-arm-linux.so (0x4
> 819000)
>
> --164-- WARNING: Serious error when reading debug info
>
> --164-- When reading debug info from
> /usr/lib/valgrind/vgpreload_memcheck-arm-li
> nux.so:
>
> --164-- Ignoring non-dwarf2 block in .debug_info
>
> --164-- WARNING: Serious error when reading debug info
>
> --164-- When reading debug info from
> /usr/lib/valgrind/vgpreload_memcheck-arm-li
> nux.so:
>
> --164-- Last block truncated in .debug_info; ignoring
>
> ==164==
>
> ==164== Conditional jump or move depends on uninitialised value(s)
>
> ==164== at 0x40046F0: _dl_load_shared_library (in
> /lib/ld-uClibc-0.9.29.so)
> ==164== by 0x40051AB: _dl_get_ready_to_run (in
> /lib/ld-uClibc-0.9.29.so)
> ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so)
>
> ==164==
>
> ==164== Conditional jump or move depends on uninitialised value(s)
>
> ==164== at 0x4004750: _dl_load_shared_library (in
> /lib/ld-uClibc-0.9.29.so)
> ==164== by 0x40051AB: _dl_get_ready_to_run (in
> /lib/ld-uClibc-0.9.29.so)
> ==164== by 0x4005BF7: ??? (in /lib/ld-uClibc-0.9.29.so)
>
> --164-- Reading syms from /lib/libcrypt-0.9.29.so (0x4828000)
>
> --164-- VALGRIND INTERNAL ERROR: Valgrind received a signal 11
> (SIGSEGV)
> - exiti
> ng
>
> --164-- si_code=1; Faulting address: 0x48682C4; sp: 0x61d2c480
>
>
>
> valgrind: the 'impossible' happened:
>
> Killed by fatal signal
>
> ==164== at 0x38072110: ??? (in
> /usr/lib/valgrind/memcheck-arm-linux)
>
>
>
> sched status:
>
> running_tid=1
>
>
>
> Thread 1: status = VgTs_Runnable
>
> ==164== at 0x4001B84: ??? (in /lib/ld-uClibc-0.9.29.so)
>
> ==164== by 0x4003EC7: _dl_load_elf_shared_library (in
> /lib/ld-uClibc-0.9.29.s
> o)
>
> ==164== by 0x4007FFF: ???
>
>
>
>
>
> Note: see also the FAQ.txt in the source distribution.
>
> It contains workarounds to several common problems.
>
>
>
> If that doesn't help, please report this bug to: www.valgrind.org
>
>
>
> In the bug report, send all the above text, the valgrind
>
> version, and what Linux distro you are using. Thanks.
>
>
>
> #
>
>
>
> The fact that it can't read the symbols from busybox is worrisome. I
> get the same sort of error when running a program I compile myself, so
> busybox (v1.5.0) is probably not to blame. And always "object doesn't
> have a symbol table". I think I'm missing something very basic here.
>
> Let me know if there's info I can provide to be more helpful.
>
> thanks,
> Dennis
>
>
> ----------------------------------------------------------------------
> -------- Apps built with the Adobe(R) Flex(R) framework and Flex
> Builder(TM) are powering Web 2.0 with engaging, cross-platform
> capabilities. Quickly and easily build your RIAs with Flex Builder,
> the Eclipse(TM)based development software that enables intelligent
> coding and step-through debugging.
> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
> _______________________________________________
> Valgrind-developers mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-developers
>
|
|
From: Johan B. <jb...@gm...> - 2009-04-01 17:31:53
|
Just an update in case anyone searches the mailinglist. The issue is that an unaligned word load on ARM is translated into an aligned word load with the data rotated. (sigh) I haven't checked any recent kernel if they've changed the default, but you can 'cat /proc/cpu/alignment' to find out if the kernel is configured to fix unaligned accesses, and you can enable it by executing echo 2 > /proc/cpu/alignment I don't think it's worth to fix the unaligned accesses in valgrind right now, so if you are going to use the arm port, be aware that you have to enable kernel fixups of the unaligned word accesses. /Johan |
|
From: szihs <har...@gm...> - 2010-02-16 07:51:20
|
I try running valgrind compiled for "arm" on an application based on http://trac.enlightenment.org/e/wiki/Elementary EFL The sample application runs fine. But when I run it with valgrind, valgrind crashes. Here is the backtrace with gdb for valgrind. (gdb) bt #0 0x3803ce68 in do_syscall_WRK () #1 0x3803d12c in vgPlain_do_syscall (sysno=<value optimized out>, a1=0, a2=11, a3=0, a4=0, a5=0, a6=0, a7=0, a8=0) at m_syscall.c:761 #2 0x3802c8f4 in vgPlain_kill (pid=0, signo=0) at m_libcsignal.c:304 #3 0x3803b438 in vgPlain_kill_self (sigNo=11) at m_signals.c:1396 #4 0x380321b4 in shutdown_actions_NORETURN (tid=1, tids_schedretcode=VgSrc_FatalSig) at m_main.c:2504 #5 0x3808bdfc in run_a_thread_NORETURN (tidW=<value optimized out>) at m_syswrap/syswrap-linux.c:146 #6 0x00000000 in ?? () The valgrind verbose logs: # valgrind -v --tool=memcheck /usr/bin/myapp-1 ==2170== Memcheck, a memory error detector ==2170== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al. ==2170== Using Valgrind-3.6.0.SVN and LibVEX; rerun with -h for copyright info ==2170== Command: /usr/bin/myapp-1 ==2170== --2170-- Valgrind options: --2170-- -v --2170-- --tool=memcheck --2170-- Contents of /proc/version: --2170-- Linux version 2.6.29.4 136690 43dc57590b601f9371d75258786e839c4849add6 (kmpark@july) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #154 Fri Feb 12 16:48:39 KST 2010 --2170-- Arch and hwcaps: ARM, arm-baseline --2170-- Page sizes: currently 4096, max supported 4096 --2170-- Valgrind library directory: /usr/local/valgrind/lib/valgrind --2170-- Reading syms from /usr/bin/myapp-1 (0x8000) --2170-- Reading syms from /usr/local/valgrind/lib/valgrind/memcheck-arm-linux (0x38000000) --2170-- object doesn't have a dynamic symbol table --2170-- Reading syms from /lib/ld-2.9.so (0x41000000) --2170-- Reading suppressions file: /usr/local/valgrind/lib/valgrind/default.supp --2170-- REDIR: 0x41017050 (memcpy) redirected to 0x3803f238 (???) --2170-- REDIR: 0x410164a0 (strlen) redirected to 0x3803f20c (???) --2170-- Reading syms from /usr/local/valgrind/lib/valgrind/vgpreload_core-arm-linux.so (0x4801000) --2170-- Reading syms from /usr/local/valgrind/lib/valgrind/vgpreload_memcheck-arm-linux.so (0x480a000) --2170-- Reading syms from /usr/lib/libappfwk.so (0x4819000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libelementary-ver-pre-svn-05.so.0.6.0 (0x42970000) --2170-- Reading debug info from /usr/lib/libelementary-ver-pre-svn-05.so.0.6.0 .. --2170-- .. CRC mismatch (computed d6b43804 wanted 4572207f) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libedje-ver-pre-svn-05.so.0.9.93 (0x428b8000) --2170-- Reading debug info from /usr/lib/libedje-ver-pre-svn-05.so.0.9.93 .. --2170-- .. CRC mismatch (computed ab509fb5 wanted 873b9fbf) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libevas-ver-pre-svn-05.so.0.9.9 (0x42770000) --2170-- Reading debug info from /usr/lib/libevas-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed b66f7866 wanted 7d2abaf3) --2170-- object doesn't have a symbol table --2170-- Reading syms from /lib/libc-2.9.so (0x41d98000) --2170-- Reading syms from /usr/lib/libecore_x-ver-pre-svn-05.so.0.9.9 (0x42700000) --2170-- Reading debug info from /usr/lib/libecore_x-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 77be5211 wanted 2571f2f9) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore-ver-pre-svn-05.so.0.9.9 (0x42320000) --2170-- Reading debug info from /usr/lib/libecore-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 669282a4 wanted d90b15a9) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libpmapi.so.1.1 (0x429f0000) --2170-- Reading debug info from /usr/lib/libpmapi.so.1.1 .. --2170-- .. CRC mismatch (computed 46670f7a wanted 3e0c6ebb) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libvconf.so.0.2.3 (0x423c8000) --2170-- Reading debug info from /usr/lib/libvconf.so.0.2.3 .. --2170-- .. CRC mismatch (computed 0189140a wanted c701107b) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libutilcore.so.1.0.0 (0x423b0000) --2170-- Reading debug info from /usr/lib/libutilcore.so.1.0.0 .. --2170-- .. CRC mismatch (computed 5dad17ad wanted 27a3c9e6) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libsensor.so (0x42a98000) --2170-- Reading debug info from /usr/lib/libsensor.so .. --2170-- .. CRC mismatch (computed 0e6383af wanted 3ceac3f3) --2170-- object doesn't have a symbol table --2170-- Reading syms from /lib/libdl-2.9.so (0x41ed0000) --2170-- Reading syms from /usr/lib/libecore_evas-ver-pre-svn-05.so.0.9.9 (0x42858000) --2170-- Reading debug info from /usr/lib/libecore_evas-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 705d3606 wanted 77e6adbe) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_file-ver-pre-svn-05.so.0.9.9 (0x42848000) --2170-- Reading debug info from /usr/lib/libecore_file-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 6d8f1c91 wanted 97058009) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_con-ver-pre-svn-05.so.0.9.9 (0x42738000) --2170-- Reading debug info from /usr/lib/libecore_con-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 270268d6 wanted 8da9a4de) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_imf_evas-ver-pre-svn-05.so.0.9.9 (0x42960000) --2170-- Reading debug info from /usr/lib/libecore_imf_evas-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed c7ee1183 wanted dbd7bb63) --2170-- object doesn't have a symbol table --2170-- Reading syms from /lib/libm-2.9.so (0x41ee0000) --2170-- Reading syms from /usr/lib/libembryo-ver-pre-svn-05.so.0.9.9 (0x42890000) --2170-- Reading debug info from /usr/lib/libembryo-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 3bc8730a wanted 44a5d75b) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_imf-ver-pre-svn-05.so.0.9.9 (0x42950000) --2170-- Reading debug info from /usr/lib/libecore_imf-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed f6ca265b wanted d343e47e) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libeet.so.1.2.3 (0x426c8000) --2170-- Reading debug info from /usr/lib/libeet.so.1.2.3 .. --2170-- .. CRC mismatch (computed d59826db wanted c0e2a167) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libfontconfig.so.1.3.0 (0x42498000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libfreetype.so.6.3.16 (0x42420000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_input-ver-pre-svn-05.so.0.9.9 (0x42750000) --2170-- Reading debug info from /usr/lib/libecore_input-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed cb8efd64 wanted fcaf2702) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_txt-ver-pre-svn-05.so.0.9.9 (0x42760000) --2170-- Reading debug info from /usr/lib/libecore_txt-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed a003e96b wanted 8e2d8010) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_fb-ver-pre-svn-05.so.0.9.9 (0x42878000) --2170-- Reading debug info from /usr/lib/libecore_fb-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 10d63377 wanted 7869caf5) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libglib-2.0.so.0.2200.3 (0x42148000) --2170-- Reading debug info from /usr/lib/libglib-2.0.so.0.2200.3 .. --2170-- .. CRC mismatch (computed 6b2e9eb2 wanted 8206bac7) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libeina-ver-pre-svn-05.so.0.9.9 (0x422d8000) --2170-- Reading debug info from /usr/lib/libeina-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 9b770510 wanted 04ad2875) --2170-- object doesn't have a symbol table --2170-- Reading syms from /lib/libgcc_s.so.1 (0x41f90000) --2170-- Reading syms from /lib/librt-2.9.so (0x41fd0000) --2170-- Reading syms from /lib/libpthread-2.9.so (0x41fa8000) --2170-- Reading syms from /usr/lib/libXcursor.so.1.0.2 (0x425d8000) --2170-- Reading debug info from /usr/lib/libXcursor.so.1.0.2 .. --2170-- .. CRC mismatch (computed 1c8c6e8a wanted ee73928f) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXdamage.so.1.1.0 (0x42638000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXcomposite.so.1.0.0 (0x42628000) --2170-- Reading debug info from /usr/lib/libXcomposite.so.1.0.0 .. --2170-- .. CRC mismatch (computed 8d240b9a wanted d59889b5) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXfixes.so.3.1.0 (0x425f0000) --2170-- Reading debug info from /usr/lib/libXfixes.so.3.1.0 .. --2170-- .. CRC mismatch (computed 584669a7 wanted cd2264f3) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXi.so.6.1.0 (0x425b0000) --2170-- Reading debug info from /usr/lib/libXi.so.6.1.0 .. --2170-- .. CRC mismatch (computed dedebeaa wanted 4830990e) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXinerama.so.1.0.0 (0x42600000) --2170-- Reading debug info from /usr/lib/libXinerama.so.1.0.0 .. --2170-- .. CRC mismatch (computed 87d0e1e4 wanted 2477710d) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXrandr.so.2.2.0 (0x425c8000) --2170-- Reading debug info from /usr/lib/libXrandr.so.2.2.0 .. --2170-- .. CRC mismatch (computed 344e6412 wanted 606d1d99) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXrender.so.1.3.0 (0x423e8000) --2170-- Reading debug info from /usr/lib/libXrender.so.1.3.0 .. --2170-- .. CRC mismatch (computed 99408f2f wanted 36b78e0b) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXtst.so.6.1.0 (0x42668000) --2170-- Reading debug info from /usr/lib/libXtst.so.6.1.0 .. --2170-- .. CRC mismatch (computed d2839ea0 wanted 4892fa3f) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXext.so.6.4.0 (0x42228000) --2170-- Reading debug info from /usr/lib/libXext.so.6.4.0 .. --2170-- .. CRC mismatch (computed 657f91b9 wanted 2b36491f) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libX11.so.6.3.0 (0x42008000) --2170-- Reading debug info from /usr/lib/libX11.so.6.3.0 .. --2170-- .. CRC mismatch (computed 37342494 wanted b30de5ff) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libxcb.so.1.1.0 (0x42128000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXau.so.6.0.0 (0x41fe8000) --2170-- Reading debug info from /usr/lib/libXau.so.6.0.0 .. --2170-- .. CRC mismatch (computed 4d70c1b5 wanted b0e104a3) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libXdmcp.so.6.0.0 (0x41ff8000) --2170-- Reading debug info from /usr/lib/libXdmcp.so.6.0.0 .. --2170-- .. CRC mismatch (computed 8e6bdd9f wanted 34f714ca) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libgconf-2.so.4.1.0 (0x42378000) --2170-- Reading debug info from /usr/lib/libgconf-2.so.4.1.0 .. --2170-- .. CRC mismatch (computed 3aa6c2ff wanted a13a5035) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libsf_common.so (0x42a80000) --2170-- Reading debug info from /usr/lib/libsf_common.so .. --2170-- .. CRC mismatch (computed 06d4bf77 wanted 51cb0f10) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libstdc++.so.6.0.10 (0x424d0000) --2170-- warning: DiCfSI 0x3ed5c .. 0x3ed77 outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3ed78 .. 0x3ed93 outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3ed94 .. 0x3eda7 outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3eda8 .. 0x3edbb outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3edbc .. 0x3edcf outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3edd0 .. 0x3eddb outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3eddc .. 0x3edeb outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3edec .. 0x3edf3 outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3edf4 .. 0x3edfb outside segment 0x425112e8 .. 0x42583bdb --2170-- warning: DiCfSI 0x3edfc .. 0x3ee03 outside segment 0x425112e8 .. 0x42583bdb --2170-- Reading syms from /usr/lib/libecore_input_evas-ver-pre-svn-05.so.0.9.9 (0x428a8000) --2170-- Reading debug info from /usr/lib/libecore_input_evas-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed 0ad68fcd wanted eca66df8) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libecore_data-ver-pre-svn-05.so.0.9.9 (0x42938000) --2170-- Reading debug info from /usr/lib/libecore_data-ver-pre-svn-05.so.0.9.9 .. --2170-- .. CRC mismatch (computed efedf996 wanted 0b38f6ad) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libz.so.1.2.3 (0x42ac0000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libjpeg.so.7.0.0 (0x42678000) --2170-- Reading debug info from /usr/lib/libjpeg.so.7.0.0 .. --2170-- .. CRC mismatch (computed f3bd6a93 wanted e24f0033) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libexpat.so.1.5.2 (0x423f8000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libgmodule-2.0.so.0.2200.3 (0x42310000) --2170-- Reading debug info from /usr/lib/libgmodule-2.0.so.0.2200.3 .. --2170-- .. CRC mismatch (computed 9cf5ee0b wanted 23d84557) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libdbus-glib-1.so.2.1.0 (0x42350000) --2170-- Reading debug info from /usr/lib/libdbus-glib-1.so.2.1.0 .. --2170-- .. CRC mismatch (computed 0fd69634 wanted 880b2ab2) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libdbus-1.so.3.4.0 (0x42298000) --2170-- object doesn't have a symbol table --2170-- Reading syms from /usr/lib/libgobject-2.0.so.0.2200.3 (0x42248000) --2170-- Reading debug info from /usr/lib/libgobject-2.0.so.0.2200.3 .. --2170-- .. CRC mismatch (computed 26fcec60 wanted 58a0f0f0) --2170-- object doesn't have a symbol table ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100AFD4: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100B0DC: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100BAD4: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== --2170-- REDIR: 0x41e0e780 (memset) redirected to 0x480ea00 (memset) --2170-- REDIR: 0x41e0ee70 (memcpy) redirected to 0x480fdbc (memcpy) --2170-- REDIR: 0x41e0d0dc (rindex) redirected to 0x480e0cc (rindex) --2170-- REDIR: 0x41e0ccd0 (strlen) redirected to 0x480e50c (strlen) --2170-- REDIR: 0x41e11c98 (strchrnul) redirected to 0x480eac8 (strchrnul) PROF: link & load time: myapp-1: 1115618865 sec 468947 usec --2170-- REDIR: 0x41e09b70 (malloc) redirected to 0x480d0ec (malloc) --2170-- REDIR: 0x41e0c8b4 (strcpy) redirected to 0x481033c (strcpy) --2170-- REDIR: 0x41e11bd0 (rawmemchr) redirected to 0x480eb0c (rawmemchr) --2170-- REDIR: 0x41e0905c (calloc) redirected to 0x480bf90 (calloc) --2170-- REDIR: 0x41e0c854 (strcmp) redirected to 0x480e71c (strcmp) --2170-- REDIR: 0x41e0cee8 (strncmp) redirected to 0x480e5ec (strncmp) --2170-- REDIR: 0x41e0c738 (index) redirected to 0x480e1b4 (index) --2170-- REDIR: 0x41e0e810 (mempcpy) redirected to 0x480f304 (mempcpy) --2170-- REDIR: 0x41e066f0 (free) redirected to 0x480cbbc (free) --2170-- REDIR: 0x41e0cd30 (strnlen) redirected to 0x480e464 (strnlen) --2170-- REDIR: 0x41e0eb84 (stpcpy) redirected to 0x480f778 (stpcpy) --2170-- REDIR: 0x41e0dea8 (memchr) redirected to 0x480e8ac (memchr) --2170-- REDIR: 0x41e0dfd4 (bcmp) redirected to 0x480e958 (bcmp) --2170-- REDIR: 0x41dc60d0 (setenv) redirected to 0x480ec80 (setenv) --2170-- REDIR: 0x41e0a0b4 (realloc) redirected to 0x480d1d4 (realloc) ==2170== Invalid write of size 4 ==2170== at 0x4291F500: ??? (in /usr/lib/libedje-ver-pre-svn-05.so.0.9.93) ==2170== Address 0xbde2d9fc is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== --2170-- REDIR: 0x41e0d00c (strncpy) redirected to 0x48100cc (strncpy) ==2170== Invalid write of size 4 ==2170== at 0x429CEAEC: ??? (in /usr/lib/libelementary-ver-pre-svn-05.so.0.6.0) ==2170== Address 0xbde2dad4 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== Invalid write of size 4 ==2170== at 0x4232F6E4: ??? (in /usr/lib/libecore-ver-pre-svn-05.so.0.9.9) ==2170== Address 0xbde2dab4 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== --2170-- REDIR: 0x41e0c6fc (strcat) redirected to 0x480ef7c (strcat) --2170-- REDIR: 0x41e0e4d0 (memmove) redirected to 0x480ea64 (memmove) ==2170== Invalid read of size 4 ==2170== at 0x410163BC: index (in /lib/ld-2.9.so) ==2170== Address 0x491abec is 92 bytes inside a block of size 94 alloc'd ==2170== at 0x480D18C: malloc (vg_replace_malloc.c:236) ==2170== by 0x422EB1D3: eina_module_new (in /usr/lib/libeina-ver-pre-svn-05.so.0.9.9) ==2170== --2170-- Reading syms from /usr/lib/evas/modules/engines/software_x11/linux-gnueabi-arm-ver-pre-svn-05/module.so (0x4d6e000) --2170-- Reading debug info from /usr/lib/evas/modules/engines/software_x11/linux-gnueabi-arm-ver-pre-svn-05/module.so .. --2170-- .. CRC mismatch (computed 37864733 wanted 3973621a) --2170-- object doesn't have a symbol table ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100B08C: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100BA70: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100BA74: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== --2170-- Reading syms from /usr/lib/evas/modules/engines/software_generic/linux-gnueabi-arm-ver-pre-svn-05/module.so (0x4d7d000) --2170-- Reading debug info from /usr/lib/evas/modules/engines/software_generic/linux-gnueabi-arm-ver-pre-svn-05/module.so .. --2170-- .. CRC mismatch (computed 3351d286 wanted fee84826) --2170-- object doesn't have a symbol table ==2170== Warning: client syscall shmdt tried to modify addresses 0xffffffff-0xffffffff ==2170== at 0x41E64D9C: shmdt (in /lib/libc-2.9.so) ==2170== Warning: client syscall shmdt tried to modify addresses 0xffffffff-0xffffffff ==2170== at 0x41E64D9C: shmdt (in /lib/libc-2.9.so) ==2170== Invalid write of size 4 ==2170== at 0x42724C28: ??? (in /usr/lib/libecore_x-ver-pre-svn-05.so.0.9.9) ==2170== Address 0xbde2fa04 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== PROF: measure start: app_init ==2170== Invalid write of size 4 ==2170== at 0x41E9C604: __eqdf2 (ieee754-df.S:1120) ==2170== Address 0xbde2b8b4 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== Invalid write of size 4 ==2170== at 0x4281EA08: ??? (in /usr/lib/libevas-ver-pre-svn-05.so.0.9.9) ==2170== Address 0xbde2fb14 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== PROF: measure: app_init: 2319 msec --2170-- memcheck GC: 1024 nodes, 1024 survivors (100.0%) --2170-- memcheck GC: increase table size to 2048 ==2170== Invalid write of size 4 ==2170== at 0x424B47B0: ??? (in /usr/lib/libfontconfig.so.1.3.0) ==2170== Address 0xbde2f224 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== Invalid write of size 4 ==2170== at 0x427CC4D4: ??? (in /usr/lib/libevas-ver-pre-svn-05.so.0.9.9) ==2170== Address 0x77f is not stack'd, malloc'd or (recently) free'd ==2170== ==2170== ==2170== Process terminating with default action of signal 11 (SIGSEGV) ==2170== Access not within mapped region at address 0x77F ==2170== at 0x427CC4D4: ??? (in /usr/lib/libevas-ver-pre-svn-05.so.0.9.9) ==2170== If you believe this happened as a result of a stack ==2170== overflow in your program's main thread (unlikely but ==2170== possible), you can try to increase the size of the ==2170== main thread stack using the --main-stacksize= flag. ==2170== The main thread stack size used in this run was 8388608. ==2170== ==2170== HEAP SUMMARY: ==2170== in use at exit: 561,260 bytes in 4,918 blocks ==2170== total heap usage: 16,429 allocs, 11,511 frees, 2,036,240 bytes allocated ==2170== ==2170== Searching for pointers to 4,918 not-freed blocks ==2170== Checked 1,001,608 bytes ==2170== ==2170== LEAK SUMMARY: ==2170== definitely lost: 256 bytes in 1 blocks ==2170== indirectly lost: 2,976 bytes in 93 blocks ==2170== possibly lost: 6,209 bytes in 94 blocks ==2170== still reachable: 551,819 bytes in 4,730 blocks ==2170== suppressed: 0 bytes in 0 blocks ==2170== Rerun with --leak-check=full to see details of leaked memory ==2170== ==2170== Use --track-origins=yes to see where uninitialised values come from ==2170== ERROR SUMMARY: 6485 errors from 15 contexts (suppressed: 0 from 0) ==2170== ==2170== 1 errors in context 1 of 15: ==2170== Invalid write of size 4 ==2170== at 0x427CC4D4: ??? (in /usr/lib/libevas-ver-pre-svn-05.so.0.9.9) ==2170== Address 0x77f is not stack'd, malloc'd or (recently) free'd ==2170== ==2170== ==2170== 1 errors in context 2 of 15: ==2170== Invalid write of size 4 ==2170== at 0x4281EA08: ??? (in /usr/lib/libevas-ver-pre-svn-05.so.0.9.9) ==2170== Address 0xbde2fb14 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== ==2170== 2 errors in context 3 of 15: ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100BA74: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== ==2170== 2 errors in context 4 of 15: ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100BA70: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== ==2170== 2 errors in context 5 of 15: ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100B08C: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== ==2170== 3 errors in context 6 of 15: ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100BAD4: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== ==2170== 3 errors in context 7 of 15: ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100B0DC: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== ==2170== 3 errors in context 8 of 15: ==2170== Conditional jump or move depends on uninitialised value(s) ==2170== at 0x4100AFD4: _dl_relocate_object (in /lib/ld-2.9.so) ==2170== ==2170== ==2170== 4 errors in context 9 of 15: ==2170== Invalid read of size 4 ==2170== at 0x410163BC: index (in /lib/ld-2.9.so) ==2170== Address 0x491abec is 92 bytes inside a block of size 94 alloc'd ==2170== at 0x480D18C: malloc (vg_replace_malloc.c:236) ==2170== by 0x422EB1D3: eina_module_new (in /usr/lib/libeina-ver-pre-svn-05.so.0.9.9) ==2170== ==2170== ==2170== 5 errors in context 10 of 15: ==2170== Invalid write of size 4 ==2170== at 0x41E9C604: __eqdf2 (ieee754-df.S:1120) ==2170== Address 0xbde2b8b4 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== ==2170== 6 errors in context 11 of 15: ==2170== Invalid write of size 4 ==2170== at 0x42724C28: ??? (in /usr/lib/libecore_x-ver-pre-svn-05.so.0.9.9) ==2170== Address 0xbde2fa04 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== ==2170== 10 errors in context 12 of 15: ==2170== Invalid write of size 4 ==2170== at 0x4232F6E4: ??? (in /usr/lib/libecore-ver-pre-svn-05.so.0.9.9) ==2170== Address 0xbde2dab4 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== ==2170== 12 errors in context 13 of 15: ==2170== Invalid write of size 4 ==2170== at 0x429CEAEC: ??? (in /usr/lib/libelementary-ver-pre-svn-05.so.0.6.0) ==2170== Address 0xbde2dad4 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== ==2170== 351 errors in context 14 of 15: ==2170== Invalid write of size 4 ==2170== at 0x4291F500: ??? (in /usr/lib/libedje-ver-pre-svn-05.so.0.9.93) ==2170== Address 0xbde2d9fc is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== ==2170== 6080 errors in context 15 of 15: ==2170== Invalid write of size 4 ==2170== at 0x424B47B0: ??? (in /usr/lib/libfontconfig.so.1.3.0) ==2170== Address 0xbde2f224 is just below the stack ptr. To suppress, use: --workaround-gcc296-bugs=yes ==2170== ==2170== ERROR SUMMARY: 6485 errors from 15 contexts (suppressed: 0 from 0) Segmentation fault I hope you can help me on this issue. Please let me know if you require more information. Thanks szihs Bugzilla from jb...@gm... wrote: > > Just an update in case anyone searches the mailinglist. > > The issue is that an unaligned word load on ARM is translated into an > aligned word load with the data rotated. (sigh) > I haven't checked any recent kernel if they've changed the default, but > you can > 'cat /proc/cpu/alignment' to find out if the kernel is configured to > fix unaligned accesses, and you can enable it by executing > echo 2 > /proc/cpu/alignment > > I don't think it's worth to fix the unaligned accesses in valgrind > right now, so if you are going to use the arm port, be aware that you > have to enable kernel fixups of the unaligned word accesses. > > /Johan > > ------------------------------------------------------------------------------ > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > > -- View this message in context: http://old.nabble.com/Status-update-on-ARM-patch-tp20675375p27603809.html Sent from the Valgrind - Dev mailing list archive at Nabble.com. |
|
From: Kirill B. <bat...@is...> - 2010-02-16 10:35:49
|
szihs wrote: > I try running valgrind compiled for "arm" on an application based on > http://trac.enlightenment.org/e/wiki/Elementary EFL > > The sample application runs fine. But when I run it with valgrind, valgrind > crashes. Here is the backtrace with gdb for valgrind. > <...> > ==2170== Warning: client syscall shmdt tried to modify addresses > 0xffffffff-0xffffffff > ==2170== at 0x41E64D9C: shmdt (in /lib/libc-2.9.so) > ==2170== Warning: client syscall shmdt tried to modify addresses > 0xffffffff-0xffffffff > ==2170== at 0x41E64D9C: shmdt (in /lib/libc-2.9.so) This looks like bug #222545 (https://bugs.kde.org/show_bug.cgi?id=222545). I've tried 'elementary_test' application with and without patch from this bug. It runs fine with the patch but fails with same errors without it. Regards, Kirill. |
|
From: szihs <har...@gm...> - 2010-02-16 14:49:13
|
Thank you. I am able to proceed further. I took the patch as you mentioned ( https://bugs.kde.org/attachment.cgi?id=40853 v2 ) Bugzilla from bat...@is... wrote: > > szihs wrote: >> I try running valgrind compiled for "arm" on an application based on >> http://trac.enlightenment.org/e/wiki/Elementary EFL >> >> The sample application runs fine. But when I run it with valgrind, >> valgrind >> crashes. Here is the backtrace with gdb for valgrind. >> > <...> >> ==2170== Warning: client syscall shmdt tried to modify addresses >> 0xffffffff-0xffffffff >> ==2170== at 0x41E64D9C: shmdt (in /lib/libc-2.9.so) >> ==2170== Warning: client syscall shmdt tried to modify addresses >> 0xffffffff-0xffffffff >> ==2170== at 0x41E64D9C: shmdt (in /lib/libc-2.9.so) > This looks like bug #222545 > (https://bugs.kde.org/show_bug.cgi?id=222545). I've tried > 'elementary_test' application with and without patch from this bug. It > runs fine with the patch but fails with same errors without it. > > Regards, > Kirill. > > ------------------------------------------------------------------------------ > SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, > Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW > http://p.sf.net/sfu/solaris-dev2dev > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > > -- View this message in context: http://old.nabble.com/Status-update-on-ARM-patch-tp20675375p27609432.html Sent from the Valgrind - Dev mailing list archive at Nabble.com. |