|
From: Adrian M. <ac...@yo...> - 2013-11-01 16:24:21
|
Dear all, I would like to add thread ID to lackey memory tracing output. I can see where the calls are made in lk_instrument, but was hoping someone could give me a shortcut to going through all the headers etc by pointing me to the easiest way to capture the thread id (not the process ID) so I can add this to the calls. As an aside - I will also be changing the output to XML so I can apply library tools directly - presently I use a Groovy script to convert lackey output to XML and run analysis on that - but could probably save myself a day or two of wall clock time if I did this directly! I used lackey for my MSc - http://cartesianproduct.wordpress.com/2011/12/17/working-set-heuristics-and-the-linux-kernel-my-msc-report/- and there are some groovy scripts I used here - http://github.com/mcmenaminadrian - and a DTD I wrote for lackey output - <!DOCTYPE lackeyml [ <!ELEMENT lackeyml(application,(instruction|store|load|modify)*)> <!ATTLIST lackeyml version CDATA #FIXED 0.1> <!ATTLIST lackeyml xmlns CDATA #FIXED "http://cartesianproduct.wordpress.com"> <!ELEMENT application EMPTY> <!ATTLIST application command CDATA #REQUIRED> <!ELEMENT instruction EMPTY> <!ATTLIST instruction address CDATA #REQUIRED> <!ATTLIST instruction size CDATA #REQUIRED> <!ELEMENT modify EMPTY> <!ATTLIST modify address CDATA #REQUIRED> <!ATTLIST modify size CDATA #REQUIRED> <!ELEMENT store EMPTY> <!ATTLIST store address CDATA #REQUIRED> <!ATTLIST store size CDATA #REQUIRED> <!ELEMENT load EMPTY> <!ATTLIST load address CDATA #REQUIRED> <!ATTLIST load size CDATA #REQUIRED> ]> Many thanks Adrian |
|
From: Adrian M. <ac...@yo...> - 2013-11-03 14:39:58
|
On 1 November 2013 16:18, Adrian Mcmenamin <ac...@yo...> wrote: > Dear all, > > I would like to add thread ID to lackey memory tracing output. > > > I have built something that does this now - it turned out to be relatively simple - it's a bit of a hacked up mess at the moment, but if anybody is interested feel free to contact me on or off the list. Adrian |
|
From: John R.
|
> I have built something that does this now - it turned out to be relatively simple > - it's a bit of a hacked up mess at the moment, but if anybody is interested feel free to contact me on or off the list. It is appropriate to publish patches that compile and work. Then the debate will be "How worthwhile is this concrete change?" instead of "There is a rumor that ...". Please post your patch. |
|
From: Bhaskararao V. (bvakamul) <bva...@ci...> - 2013-11-06 18:21:00
|
Hi All,
I am trying to run valgrind on a target which is ppc32 and it has wind
river linux.
I am successful in getting the valgrind related files and when I run
valgrind, I am getting the following issue.
Could somebody help me.
root@lc1:/lc/isan/valgrind-3.8.1/bin# valgrind
/isan/bin/port_client(image on the target)
==3536== Memcheck, a memory error detector
==3536== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==3536== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
==3536== Command: /isan/bin/port_client
==3536==
valgrind: Fatal error at startup: a function redirection
valgrind: which is mandatory for this platform-tool combination
valgrind: cannot be set up. Details of the redirection are:
valgrind:
valgrind: A must-be-redirected function
valgrind: whose name matches the pattern: strlen
valgrind: in an object with soname matching: ld.so.1
valgrind: was not found whilst processing
valgrind: symbols from the object with soname: ld.so.1
valgrind:
valgrind: Possible fixes: (1, short term): install glibc's debuginfo
valgrind: package on this machine. (2, longer term): ask the packagers
valgrind: for your Linux distribution to please in future ship a non-
valgrind: stripped ld.so (or whatever the dynamic linker .so is called)
valgrind: that exports the above-named function using the standard
valgrind: calling conventions for this platform. The package you need
valgrind: to install for fix (1) is called
valgrind:
valgrind: On Debian, Ubuntu: libc6-dbg
valgrind: On SuSE, openSuSE, Fedora, RHEL: glibc-debuginfo
valgrind:
valgrind: Cannot continue -- exiting now. Sorry.
Thanks and Regards,
Bhaskararao V
Work : +1 408 525 7147
Cell : +1 510 598 5928
On 11/3/13 6:06 AM, "John Reiser" <jreiser@BitWagon.com> wrote:
>> I have built something that does this now - it turned out to be
>>relatively simple
>> - it's a bit of a hacked up mess at the moment, but if anybody is
>>interested feel free to contact me on or off the list.
>
>It is appropriate to publish patches that compile and work.
>Then the debate will be "How worthwhile is this concrete change?"
>instead of "There is a rumor that ...". Please post your patch.
>
>
>--------------------------------------------------------------------------
>----
>Android is increasing in popularity, but the open development platform
>that
>developers love is also attractive to malware creators. Download this
>white
>paper to learn more about secure code signing practices that can help keep
>Android apps secure.
>http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktr
>k
>_______________________________________________
>Valgrind-users mailing list
>Val...@li...
>https://lists.sourceforge.net/lists/listinfo/valgrind-users
|
|
From: John R.
|
> I am trying to run valgrind on a target which is ppc32 and it has wind
> river linux.
> I am successful in getting the valgrind related files and when I run
> valgrind, I am getting the following issue.
> Could somebody help me.
The message really is very clear! Do what it says after "Possible fixes".
If you don't understand what it says, then find someone else who does,
and ask them to help you. Someone who is familiar with shared libraries
and execve() on Linux probably will understand.
If you still have problems, then file a bug report against valgrind.
See the "Bug reports" link in the left column of the main web page.
Please include the name of your Linux distribution, its version number,
the version number of the Linux kernel (copy+paste the output from "uname -a"),
and the version number of the libc shared library. For example,
on x86_64 systems the file /lib*/libc.so.6 is a symlink to another file
such as "libc-2.17.so" which means that the version of libc is 2.17.
To make the bug report even more useful, then please run
readelf --headers /bin/date
and look for "INTERP", such as:
-----
INTERP 0x0000000000000238 0x0000000000400238 0x0000000000400238
0x000000000000001c 0x000000000000001c R 1
[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
-----
Then run
readelf --symbols /lib64/ld-linux-x86-64.so.2 | grep str
but use the filename that you see in *YOUR* output on the second line
after "INTERP". Then copy+paste the output of all the lines containing "str"
into the bug report.
>
>
> root@lc1:/lc/isan/valgrind-3.8.1/bin# valgrind
> /isan/bin/port_client(image on the target)
> ==3536== Memcheck, a memory error detector
> ==3536== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
> ==3536== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
> ==3536== Command: /isan/bin/port_client
> ==3536==
>
> valgrind: Fatal error at startup: a function redirection
> valgrind: which is mandatory for this platform-tool combination
> valgrind: cannot be set up. Details of the redirection are:
> valgrind:
> valgrind: A must-be-redirected function
> valgrind: whose name matches the pattern: strlen
> valgrind: in an object with soname matching: ld.so.1
> valgrind: was not found whilst processing
> valgrind: symbols from the object with soname: ld.so.1
> valgrind:
> valgrind: Possible fixes: (1, short term): install glibc's debuginfo
> valgrind: package on this machine. (2, longer term): ask the packagers
> valgrind: for your Linux distribution to please in future ship a non-
> valgrind: stripped ld.so (or whatever the dynamic linker .so is called)
> valgrind: that exports the above-named function using the standard
> valgrind: calling conventions for this platform. The package you need
> valgrind: to install for fix (1) is called
> valgrind:
> valgrind: On Debian, Ubuntu: libc6-dbg
> valgrind: On SuSE, openSuSE, Fedora, RHEL: glibc-debuginfo
> valgrind:
> valgrind: Cannot continue -- exiting now. Sorry.
|