You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
(58) |
Apr
(261) |
May
(169) |
Jun
(214) |
Jul
(201) |
Aug
(219) |
Sep
(198) |
Oct
(203) |
Nov
(241) |
Dec
(94) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(137) |
Feb
(149) |
Mar
(150) |
Apr
(193) |
May
(95) |
Jun
(173) |
Jul
(137) |
Aug
(236) |
Sep
(157) |
Oct
(150) |
Nov
(136) |
Dec
(90) |
| 2005 |
Jan
(139) |
Feb
(130) |
Mar
(274) |
Apr
(138) |
May
(184) |
Jun
(152) |
Jul
(261) |
Aug
(409) |
Sep
(239) |
Oct
(241) |
Nov
(260) |
Dec
(137) |
| 2006 |
Jan
(191) |
Feb
(142) |
Mar
(169) |
Apr
(75) |
May
(141) |
Jun
(169) |
Jul
(131) |
Aug
(141) |
Sep
(192) |
Oct
(176) |
Nov
(142) |
Dec
(95) |
| 2007 |
Jan
(98) |
Feb
(120) |
Mar
(93) |
Apr
(96) |
May
(95) |
Jun
(65) |
Jul
(62) |
Aug
(56) |
Sep
(53) |
Oct
(95) |
Nov
(106) |
Dec
(87) |
| 2008 |
Jan
(58) |
Feb
(149) |
Mar
(175) |
Apr
(110) |
May
(106) |
Jun
(72) |
Jul
(55) |
Aug
(89) |
Sep
(26) |
Oct
(96) |
Nov
(83) |
Dec
(93) |
| 2009 |
Jan
(97) |
Feb
(106) |
Mar
(74) |
Apr
(64) |
May
(115) |
Jun
(83) |
Jul
(137) |
Aug
(103) |
Sep
(56) |
Oct
(59) |
Nov
(61) |
Dec
(37) |
| 2010 |
Jan
(94) |
Feb
(71) |
Mar
(53) |
Apr
(105) |
May
(79) |
Jun
(111) |
Jul
(110) |
Aug
(81) |
Sep
(50) |
Oct
(82) |
Nov
(49) |
Dec
(21) |
| 2011 |
Jan
(87) |
Feb
(105) |
Mar
(108) |
Apr
(99) |
May
(91) |
Jun
(94) |
Jul
(114) |
Aug
(77) |
Sep
(58) |
Oct
(58) |
Nov
(131) |
Dec
(62) |
| 2012 |
Jan
(76) |
Feb
(93) |
Mar
(68) |
Apr
(95) |
May
(62) |
Jun
(109) |
Jul
(90) |
Aug
(87) |
Sep
(49) |
Oct
(54) |
Nov
(66) |
Dec
(84) |
| 2013 |
Jan
(67) |
Feb
(52) |
Mar
(93) |
Apr
(65) |
May
(33) |
Jun
(34) |
Jul
(52) |
Aug
(42) |
Sep
(52) |
Oct
(48) |
Nov
(66) |
Dec
(14) |
| 2014 |
Jan
(66) |
Feb
(51) |
Mar
(34) |
Apr
(47) |
May
(58) |
Jun
(27) |
Jul
(52) |
Aug
(41) |
Sep
(78) |
Oct
(30) |
Nov
(28) |
Dec
(26) |
| 2015 |
Jan
(41) |
Feb
(42) |
Mar
(20) |
Apr
(73) |
May
(31) |
Jun
(48) |
Jul
(23) |
Aug
(55) |
Sep
(36) |
Oct
(47) |
Nov
(48) |
Dec
(41) |
| 2016 |
Jan
(32) |
Feb
(34) |
Mar
(33) |
Apr
(22) |
May
(14) |
Jun
(31) |
Jul
(29) |
Aug
(41) |
Sep
(17) |
Oct
(27) |
Nov
(38) |
Dec
(28) |
| 2017 |
Jan
(28) |
Feb
(30) |
Mar
(16) |
Apr
(9) |
May
(27) |
Jun
(57) |
Jul
(28) |
Aug
(43) |
Sep
(31) |
Oct
(20) |
Nov
(24) |
Dec
(18) |
| 2018 |
Jan
(34) |
Feb
(50) |
Mar
(18) |
Apr
(26) |
May
(13) |
Jun
(31) |
Jul
(13) |
Aug
(11) |
Sep
(15) |
Oct
(12) |
Nov
(18) |
Dec
(13) |
| 2019 |
Jan
(12) |
Feb
(29) |
Mar
(51) |
Apr
(22) |
May
(13) |
Jun
(20) |
Jul
(13) |
Aug
(12) |
Sep
(21) |
Oct
(6) |
Nov
(9) |
Dec
(5) |
| 2020 |
Jan
(13) |
Feb
(5) |
Mar
(25) |
Apr
(4) |
May
(40) |
Jun
(27) |
Jul
(5) |
Aug
(17) |
Sep
(21) |
Oct
(1) |
Nov
(5) |
Dec
(15) |
| 2021 |
Jan
(28) |
Feb
(6) |
Mar
(11) |
Apr
(5) |
May
(7) |
Jun
(8) |
Jul
(5) |
Aug
(5) |
Sep
(11) |
Oct
(9) |
Nov
(10) |
Dec
(12) |
| 2022 |
Jan
(7) |
Feb
(13) |
Mar
(8) |
Apr
(7) |
May
(12) |
Jun
(27) |
Jul
(14) |
Aug
(27) |
Sep
(27) |
Oct
(17) |
Nov
(17) |
Dec
|
| 2023 |
Jan
(10) |
Feb
(18) |
Mar
(9) |
Apr
(26) |
May
|
Jun
(13) |
Jul
(18) |
Aug
(5) |
Sep
(12) |
Oct
(16) |
Nov
(1) |
Dec
|
| 2024 |
Jan
(4) |
Feb
(3) |
Mar
(6) |
Apr
(17) |
May
(2) |
Jun
(33) |
Jul
(13) |
Aug
(1) |
Sep
(6) |
Oct
(8) |
Nov
(6) |
Dec
(15) |
| 2025 |
Jan
(5) |
Feb
(11) |
Mar
(8) |
Apr
(20) |
May
(1) |
Jun
|
Jul
|
Aug
(9) |
Sep
(1) |
Oct
(7) |
Nov
(1) |
Dec
|
|
From: Raul G. <rau...@ma...> - 2015-02-19 21:06:19
|
Hello valgrind team, I want to run valgrind on a ARM platform (Cortex A9) that is running Linaro. I managed to cross-compile valgrind for ARM: root$valgrind --version valgrind-3.10.1 Also, I succesfully compiled a program on this platform: root$gcc -g basicmath_large.c rad2deg.c cubic.c isqrt.c -o basic -lm Problem is, that when I try to use valgrind I get an error: root$valgrind --tool=callgrind ./basic > out.txt ==2405== Callgrind, a call-graph generating cache profiler ==2405== Copyright (C) 2002-2013, and GNU GPL'd, by Josef Weidendorfer et al. ==2405== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info ==2405== Command: ./basic ==2405== ==2405== For interactive control, run 'callgrind_control -h'. --2405-- WARNING: Serious error when reading debug info --2405-- When reading debug info from /opt/valgrind/lib/valgrind/callgrind-arm-linux: --2405-- Missing or invalid ELF Section Header Table ==2405== ==2405== Events : Ir ==2405== Collected : 9239 ==2405== ==2405== I refs: 9,239 root$ According the the forums, this could be because "No symbols get loaded". Is there any way to solve this issue? is there a workaround for this? Same procedure do works for me on a x86 platform running ubuntu. Raul. |
|
From: Tom H. <to...@co...> - 2015-02-19 16:25:33
|
On 19/02/15 15:44, SHEHAB ZAINELDINE wrote: > When you say "recursively locking a non-recursive mutex" what is it > exactly that you mean. Is it even possible to recursively lock a > non-recursive mutex? When I try it the computer enters into a deadlock, > and the thread is unable to aquire the lock the second time. Well that's kind of the point, and why helgrind is telling you about it, because it's not allowed! What it means is that your program is trying to lock a mutex that is already locked and which was not declared as a recursive mutex. Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: SHEHAB Z. <100...@al...> - 2015-02-19 16:10:13
|
When you say "recursively locking a non-recursive mutex" what is it exactly that you mean. Is it even possible to recursively lock a non-recursive mutex? When I try it the computer enters into a deadlock, and the thread is unable to aquire the lock the second time. Thanks in advance |
|
From: Azat K. <a3a...@gm...> - 2015-02-18 13:13:42
|
On Wed, Feb 18, 2015 at 01:58:21PM +0100, Josef Weidendorfer wrote: > Am 18.02.2015 um 12:23 schrieb Azat Khuzhin: > > On Wed, Feb 18, 2015 at 11:56:51AM +0100, Josef Weidendorfer wrote: > >> Am 18.02.2015 um 11:02 schrieb Azat Khuzhin: > >>>> Does it work if you remove "-static"? I have no idea if Ubuntu provides > >>>> debug info for libc.a ... > >>> > >>> Debian do provides, so I guess that ubuntu too: > >>> libc6-dev: /usr/lib/x86_64-linux-gnu/libc.a > > > > My mistake I misread previous mail, there are no debug symbols in > > libc.a. > > > >>From glibc-deb-svn/trunk/debian/rules: > > NOSTRIP_$(libc)-dbg = 1 > > Ah, ok. But does the -dbg package contain debug info for static libc? > That's not the case on Ubuntu. No, libc-dbg didn't contain debug info for static libc. > Anyway, this issue seems not to be a problem with Valgrind. Yep. |
|
From: Josef W. <Jos...@gm...> - 2015-02-18 12:58:28
|
Am 18.02.2015 um 12:23 schrieb Azat Khuzhin: > On Wed, Feb 18, 2015 at 11:56:51AM +0100, Josef Weidendorfer wrote: >> Am 18.02.2015 um 11:02 schrieb Azat Khuzhin: >>>> Does it work if you remove "-static"? I have no idea if Ubuntu provides >>>> debug info for libc.a ... >>> >>> Debian do provides, so I guess that ubuntu too: >>> libc6-dev: /usr/lib/x86_64-linux-gnu/libc.a > > My mistake I misread previous mail, there are no debug symbols in > libc.a. > >>From glibc-deb-svn/trunk/debian/rules: > NOSTRIP_$(libc)-dbg = 1 Ah, ok. But does the -dbg package contain debug info for static libc? That's not the case on Ubuntu. Anyway, this issue seems not to be a problem with Valgrind. Josef |
|
From: Azat K. <a3a...@gm...> - 2015-02-18 11:23:56
|
On Wed, Feb 18, 2015 at 11:56:51AM +0100, Josef Weidendorfer wrote: > Am 18.02.2015 um 11:02 schrieb Azat Khuzhin: > >> Does it work if you remove "-static"? I have no idea if Ubuntu provides > >> debug info for libc.a ... > > > > Debian do provides, so I guess that ubuntu too: > > libc6-dev: /usr/lib/x86_64-linux-gnu/libc.a My mistake I misread previous mail, there are no debug symbols in libc.a. >From glibc-deb-svn/trunk/debian/rules: NOSTRIP_$(libc)-dbg = 1 > > That file on Ubuntu 14.10 (I am running this here) does not have debug info: > > ~> objdump -h /usr/lib/x86_64-linux-gnu/libc.a | grep debug_ > ~> > > Can you check this on Debian? > > Ubuntu splits off debug info into -dbg files. For shared libc it's > libc6-dbg. > > ~> objdump -h /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.19.so | grep > debug_ > 68 .debug_aranges 000112b0 0000000000000000 0000000000000000 > 000017e0 2**4 > 69 .debug_info 003fcbf8 0000000000000000 0000000000000000 00012a90 > 2**0 > 70 .debug_abbrev 000968a2 0000000000000000 0000000000000000 0040f688 > 2**0 > 71 .debug_line 000c147a 0000000000000000 0000000000000000 004a5f2a > 2**0 > 72 .debug_str 0002534c 0000000000000000 0000000000000000 005673a4 > 2**0 > 73 .debug_loc 00247f70 0000000000000000 0000000000000000 0058c6f0 > 2**0 > 74 .debug_ranges 0004b7d0 0000000000000000 0000000000000000 007d4660 > 2**4 > > But libc6-dbg has nothing about the static libc. > > Josef |
|
From: Josef W. <Jos...@gm...> - 2015-02-18 10:57:01
|
Am 18.02.2015 um 11:02 schrieb Azat Khuzhin: >> Does it work if you remove "-static"? I have no idea if Ubuntu provides >> debug info for libc.a ... > > Debian do provides, so I guess that ubuntu too: > libc6-dev: /usr/lib/x86_64-linux-gnu/libc.a That file on Ubuntu 14.10 (I am running this here) does not have debug info: ~> objdump -h /usr/lib/x86_64-linux-gnu/libc.a | grep debug_ ~> Can you check this on Debian? Ubuntu splits off debug info into -dbg files. For shared libc it's libc6-dbg. ~> objdump -h /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.19.so | grep debug_ 68 .debug_aranges 000112b0 0000000000000000 0000000000000000 000017e0 2**4 69 .debug_info 003fcbf8 0000000000000000 0000000000000000 00012a90 2**0 70 .debug_abbrev 000968a2 0000000000000000 0000000000000000 0040f688 2**0 71 .debug_line 000c147a 0000000000000000 0000000000000000 004a5f2a 2**0 72 .debug_str 0002534c 0000000000000000 0000000000000000 005673a4 2**0 73 .debug_loc 00247f70 0000000000000000 0000000000000000 0058c6f0 2**0 74 .debug_ranges 0004b7d0 0000000000000000 0000000000000000 007d4660 2**4 But libc6-dbg has nothing about the static libc. Josef |
|
From: Azat K. <a3a...@gm...> - 2015-02-18 10:03:07
|
On Wed, Feb 18, 2015 at 10:44:27AM +0100, Josef Weidendorfer wrote: > Am 17.02.2015 um 21:22 schrieb Raul Garcia: > > I am a new user, I am doing a "hello world" test of Valgrind but i keep > > hitting this error: > > ... > > 2,709 *???*:getenv [/home/otro/arm_emulator/hello_x86] > > The "???" are not really any errors, but a sign that for these functions, > valgrind could not locate debug information providing a source file name. > > > This is the command that I used, as you can see I used -g and -O0 > > options as suggested. > > > > $ gcc -static -g -O0 hello.c -o hello_x86 > > getenv above is from glibc, and you seem not to have debug information > installed for the statically linkable glibc. > "-O0" or "-g" does not help here, because the issue is with an already > compiled library. > Does it work if you remove "-static"? I have no idea if Ubuntu provides > debug info for libc.a ... Debian do provides, so I guess that ubuntu too: libc6-dev: /usr/lib/x86_64-linux-gnu/libc.a > > > But when I try to see the analysis with callgrind I get: > > > > Ir > > -------------------------------------------------------------------------------- > > 11,737 PROGRAM TOTALS > > > > -------------------------------------------------------------------------------- > > Ir file:function > > -------------------------------------------------------------------------------- > > 2,709 ???:getenv [/home/otro/arm_emulator/hello_x86] > > 1,133 ???:_int_malloc [/home/otro/arm_emulator/hello_x86] > > 813 ???:intel_check_word [/home/otro/arm_emulator/hello_x86] > > 792 ???:malloc_consolidate [/home/otro/arm_emulator/hello_x86] > > 783 ???:_IO_file_overflow [/home/otro/arm_emulator/hello_x86] > > 555 ???:strncmp [/home/otro/arm_emulator/hello_x86] > > 435 ???:ptmalloc_init.part.7 [/home/otro/arm_emulator/hello_x86] > > 361 ???:(below main) [/home/otro/arm_emulator/hello_x86] > > 342 ???:_IO_default_xsputn [/home/otro/arm_emulator/hello_x86] > > 311 ???:_dl_init_paths [/home/otro/arm_emulator/hello_x86] > > > > And I cant see the cost of the functions . What can be the problem? Some > > logs are attached, i hope they are helpful. > > Self cost is there. > To see inclusive costs, you need to use "callgrind_annotate > --inclusive=yes ...". > And "--tree=both" shows a butterfly output of the call graph. > > I would suggest do use kcachegrind/qcachegrind to visualize callgrind > results. > > Josef |
|
From: Josef W. <Jos...@gm...> - 2015-02-18 09:44:41
|
Am 17.02.2015 um 21:22 schrieb Raul Garcia: > I am a new user, I am doing a "hello world" test of Valgrind but i keep > hitting this error: > ... > 2,709 *???*:getenv [/home/otro/arm_emulator/hello_x86] The "???" are not really any errors, but a sign that for these functions, valgrind could not locate debug information providing a source file name. > This is the command that I used, as you can see I used -g and -O0 > options as suggested. > > $ gcc -static -g -O0 hello.c -o hello_x86 getenv above is from glibc, and you seem not to have debug information installed for the statically linkable glibc. "-O0" or "-g" does not help here, because the issue is with an already compiled library. Does it work if you remove "-static"? I have no idea if Ubuntu provides debug info for libc.a ... > But when I try to see the analysis with callgrind I get: > > Ir > -------------------------------------------------------------------------------- > 11,737 PROGRAM TOTALS > > -------------------------------------------------------------------------------- > Ir file:function > -------------------------------------------------------------------------------- > 2,709 ???:getenv [/home/otro/arm_emulator/hello_x86] > 1,133 ???:_int_malloc [/home/otro/arm_emulator/hello_x86] > 813 ???:intel_check_word [/home/otro/arm_emulator/hello_x86] > 792 ???:malloc_consolidate [/home/otro/arm_emulator/hello_x86] > 783 ???:_IO_file_overflow [/home/otro/arm_emulator/hello_x86] > 555 ???:strncmp [/home/otro/arm_emulator/hello_x86] > 435 ???:ptmalloc_init.part.7 [/home/otro/arm_emulator/hello_x86] > 361 ???:(below main) [/home/otro/arm_emulator/hello_x86] > 342 ???:_IO_default_xsputn [/home/otro/arm_emulator/hello_x86] > 311 ???:_dl_init_paths [/home/otro/arm_emulator/hello_x86] > > And I cant see the cost of the functions . What can be the problem? Some > logs are attached, i hope they are helpful. Self cost is there. To see inclusive costs, you need to use "callgrind_annotate --inclusive=yes ...". And "--tree=both" shows a butterfly output of the call graph. I would suggest do use kcachegrind/qcachegrind to visualize callgrind results. Josef |
|
From: Mark R. <ma...@cs...> - 2015-02-17 21:05:31
|
Thank you - that's quite clear. I will add it to our developer's documentation. -----Original Message----- From: Tom Hughes [mailto:to...@co...] Sent: Tuesday, February 17, 2015 12:43 PM To: Mark Roberts; 'valgrind-users' Subject: Re: version number? On 17/02/15 20:13, Mark Roberts wrote: > Ok - I see it's been modified in the tar ball to 10.1. No, it hasn't been modified in the tar ball. The tar ball was created from the 3.10 branch: svn://svn.valgrind.org/valgrind/branches/VALGRIND_3_10_BRANCH not from the trunk: svn://svn.valgrind.org/valgrind/trunk The branch was taken when 3.10.0 was released, and AC_INIT has never been changed on that branch. > Question: We (UW PLSE) have been making releases of our tools Fjalar > and Kvasir (based on Valgrind) for quite some time. We've always just > sync'd our copy of the Valgrind repository to the appropriate revision > and merged into our source tree. Can you think of any problems (other > than AC_INIT) with doing it this way instead of using the tar ball? If you want to use svn, but get a version that corresponds to a given upstream release, then use the appropriate tag, for example: svn://svn.valgrind.org/valgrind/tags/VALGRIND_3_10_1 Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Tom H. <to...@co...> - 2015-02-17 20:42:56
|
On 17/02/15 20:13, Mark Roberts wrote: > Ok - I see it's been modified in the tar ball to 10.1. No, it hasn't been modified in the tar ball. The tar ball was created from the 3.10 branch: svn://svn.valgrind.org/valgrind/branches/VALGRIND_3_10_BRANCH not from the trunk: svn://svn.valgrind.org/valgrind/trunk The branch was taken when 3.10.0 was released, and AC_INIT has never been changed on that branch. > Question: We (UW PLSE) have been making releases of our tools Fjalar and > Kvasir (based on Valgrind) for quite some time. We've always just sync'd > our copy of the Valgrind repository to the appropriate revision and merged > into our source tree. Can you think of any problems (other than AC_INIT) > with doing it this way instead of using the tar ball? If you want to use svn, but get a version that corresponds to a given upstream release, then use the appropriate tag, for example: svn://svn.valgrind.org/valgrind/tags/VALGRIND_3_10_1 Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Raul G. <rau...@ma...> - 2015-02-17 20:22:51
|
Hello world_perftest! |
|
From: Mark R. <ma...@cs...> - 2015-02-17 20:13:19
|
Ok - I see it's been modified in the tar ball to 10.1. Question: We (UW PLSE) have been making releases of our tools Fjalar and Kvasir (based on Valgrind) for quite some time. We've always just sync'd our copy of the Valgrind repository to the appropriate revision and merged into our source tree. Can you think of any problems (other than AC_INIT) with doing it this way instead of using the tar ball? Thanks, Mark -----Original Message----- From: Tom Hughes [mailto:to...@co...] Sent: Tuesday, February 17, 2015 11:56 AM To: Mark Roberts; 'valgrind-users' Subject: Re: version number? On 17/02/15 19:38, Mark Roberts wrote: > In the repository - revision change r14522 which is prior to the 10.1 > release tag r14786. Well 3.10.1 was made from a different branch, so it isn't "prior" on that branch. The trunk is (or will be) 3.11 which is why it is set to that. Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Tom H. <to...@co...> - 2015-02-17 19:56:44
|
On 17/02/15 19:38, Mark Roberts wrote: > In the repository - revision change r14522 which is prior to the 10.1 > release tag r14786. Well 3.10.1 was made from a different branch, so it isn't "prior" on that branch. The trunk is (or will be) 3.11 which is why it is set to that. Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Mark R. <ma...@cs...> - 2015-02-17 19:38:42
|
In the repository - revision change r14522 which is prior to the 10.1 release tag r14786. -----Original Message----- From: Tom Hughes [mailto:to...@co...] Sent: Tuesday, February 17, 2015 11:25 AM To: Mark Roberts; 'valgrind-users' Subject: Re: version number? On 17/02/15 18:57, Mark Roberts wrote: > The web site says 3.10.1 but the AC_INIT value in configure.ac is 3.11.0 - why is that? In the tar ball? or the repository? Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Tom H. <to...@co...> - 2015-02-17 19:25:08
|
On 17/02/15 18:57, Mark Roberts wrote: > The web site says 3.10.1 but the AC_INIT value in configure.ac is 3.11.0 - why is that? In the tar ball? or the repository? Tom -- Tom Hughes (to...@co...) http://compton.nu/ |
|
From: Mark R. <ma...@cs...> - 2015-02-17 19:04:58
|
The web site says 3.10.1 but the AC_INIT value in configure.ac is 3.11.0 - why is that? Thanks, Mark |
|
From: Josef W. <Jos...@gm...> - 2015-02-17 14:17:25
|
Am 17.02.2015 um 11:52 schrieb Raul Garcia:
> Thank you for your quick reply. I am profiling an application for ARM so I am using the cross compiler tools for that ISA, Can you tell me in which file from Valgrind source code can I find the Instrumentation function that you mention?
I talked about the instrument function of a Valgrind tool.
Look at lk_instrument() in lackey (in VG sources, inside the
directory with this name) for an example.
For IRStmt *s of type Ist_IMark, one could extend the struct
to allow for a field s->Ist.IMark.mnc to provide the mnemonic
of that guest instruction as string.
When VEX is translating guest code to IR, it currently prints
the instructions to debug output; see DIP macro usage e.g.
in VEX/priv/guest_amd64_toIR.c. One would have to reroute this
to temporarily allocated space accessable via above mentioned
IRStmt field.
However, this seem to be heavy changes in the VEX part of
valgrind sources, and the sketched approach may slow down the
translation.
Josef
> can you provide some hints for what would be the procedure to implement this? What Valgrind document should I read?
>
> Cheers,
> Raul.
>
> ________________________________________
> From: Josef Weidendorfer [Jos...@gm...]
> Sent: Tuesday, February 17, 2015 9:40 AM
> To: Raul Garcia; val...@li...
> Subject: Re: [Valgrind-users] Dump of opcode/mnemonic per code line
>
> Am 16.02.2015 um 22:29 schrieb Raul Garcia:
>> |That information is great, but is it possible to get the exact instructions (mnemonics) that where utilized/executed
>> per each line like in the example below? This information would be really valuable to me.
>
> In the instrument function you have access to the guest code bytes. So,
> if you add your own
> disassembler for the ISA, you can get what you want.
>
> It would be nice if VEX can return the mnemonics. Especially as they are
> already in the code as
> debug output. As far as I can see, this is "just" some kind of
> refactoring effort which
> nobody did up to now.
>
> Callgrind's visualization (kcachegrind) calls out to "objdump" to do
> annotation on a machine
> code level. That's just not working for dynamically generated code. To
> support that, your feature
> request also would be good.
>
> Josef
>
>
>>
>> | . void swap(int *a, int *b)
>> 3,000 { [insta, instb, instc]
>> 3,000 int tmp = *a; |||[insta, instb, instc]|
>> 4,000 *a = *b; ||||[instd, instd, insta,|||||||||| instc||||]||
>> 3,000 *b = tmp; |||||[instc, insta, instb]|||
>> 2,000 }| ||||[instc, insta]||||
>>
>> Best Regards,
>> Raul.
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
>> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
>> with Interactivity, Sharing, Native Excel Exports, App Integration & more
>> Get technology previously reserved for billion-dollar corporations, FREE
>> http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk
>>
>>
>>
>> _______________________________________________
>> Valgrind-users mailing list
>> Val...@li...
>> https://lists.sourceforge.net/lists/listinfo/valgrind-users
>>
>
|
|
From: Raul G. <rau...@ma...> - 2015-02-17 10:52:53
|
Hello Josef:
Thank you for your quick reply. I am profiling an application for ARM so I am using the cross compiler tools for that ISA, Can you tell me in which file from Valgrind source code can I find the Instrumentation function that you mention? can you provide some hints for what would be the procedure to implement this? What Valgrind document should I read?
Cheers,
Raul.
________________________________________
From: Josef Weidendorfer [Jos...@gm...]
Sent: Tuesday, February 17, 2015 9:40 AM
To: Raul Garcia; val...@li...
Subject: Re: [Valgrind-users] Dump of opcode/mnemonic per code line
Am 16.02.2015 um 22:29 schrieb Raul Garcia:
> |That information is great, but is it possible to get the exact instructions (mnemonics) that where utilized/executed
> per each line like in the example below? This information would be really valuable to me.
In the instrument function you have access to the guest code bytes. So,
if you add your own
disassembler for the ISA, you can get what you want.
It would be nice if VEX can return the mnemonics. Especially as they are
already in the code as
debug output. As far as I can see, this is "just" some kind of
refactoring effort which
nobody did up to now.
Callgrind's visualization (kcachegrind) calls out to "objdump" to do
annotation on a machine
code level. That's just not working for dynamically generated code. To
support that, your feature
request also would be good.
Josef
>
> | . void swap(int *a, int *b)
> 3,000 { [insta, instb, instc]
> 3,000 int tmp = *a; |||[insta, instb, instc]|
> 4,000 *a = *b; ||||[instd, instd, insta,|||||||||| instc||||]||
> 3,000 *b = tmp; |||||[instc, insta, instb]|||
> 2,000 }| ||||[instc, insta]||||
>
> Best Regards,
> Raul.
>
>
>
>
> ------------------------------------------------------------------------------
> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
> with Interactivity, Sharing, Native Excel Exports, App Integration & more
> Get technology previously reserved for billion-dollar corporations, FREE
> http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk
>
>
>
> _______________________________________________
> Valgrind-users mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-users
>
|
|
From: Josef W. <Jos...@gm...> - 2015-02-17 09:40:52
|
Am 16.02.2015 um 22:29 schrieb Raul Garcia:
> |That information is great, but is it possible to get the exact instructions (mnemonics) that where utilized/executed
> per each line like in the example below? This information would be really valuable to me.
In the instrument function you have access to the guest code bytes. So,
if you add your own
disassembler for the ISA, you can get what you want.
It would be nice if VEX can return the mnemonics. Especially as they are
already in the code as
debug output. As far as I can see, this is "just" some kind of
refactoring effort which
nobody did up to now.
Callgrind's visualization (kcachegrind) calls out to "objdump" to do
annotation on a machine
code level. That's just not working for dynamically generated code. To
support that, your feature
request also would be good.
Josef
>
> | . void swap(int *a, int *b)
> 3,000 { [insta, instb, instc]
> 3,000 int tmp = *a; |||[insta, instb, instc]|
> 4,000 *a = *b; ||||[instd, instd, insta,|||||||||| instc||||]||
> 3,000 *b = tmp; |||||[instc, insta, instb]|||
> 2,000 }| ||||[instc, insta]||||
>
> Best Regards,
> Raul.
>
>
>
>
> ------------------------------------------------------------------------------
> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
> with Interactivity, Sharing, Native Excel Exports, App Integration & more
> Get technology previously reserved for billion-dollar corporations, FREE
> http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk
>
>
>
> _______________________________________________
> Valgrind-users mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-users
>
|
|
From: Raul G. <rau...@ma...> - 2015-02-16 21:30:02
|
Hello Valgrind team, Send<https://outlook.manchester.ac.uk/owa/?ae=Item&a=New&t=IPM.Note&cc=MTQuMy4xOTUuMSxlbi1VUywzLEhUTUwsMCww&pspid=_1424120900870_192651510#> I am a new user of Valgrind, and I so far I know that I can analyze the output file like in the example below: "A single call to the swap function requires 15 instructions: 3 for the prologue, 3 for assign to tmp, 4 for copy from * b to * a, 3 for assign from tmp and 2 more for the epilogue". . void swap(int *a, int *b) 3,000 { 3,000 int tmp = *a; 4,000 *a = *b; 3,000 *b = tmp; 2,000 } That information is great, but is it possible to get the exact instructions (mnemonics) that where utilized/executed per each line like in the example below? This information would be really valuable to me. . void swap(int *a, int *b) 3,000 { [insta, instb, instc] 3,000 int tmp = *a; [insta, instb, instc] 4,000 *a = *b; [instd, instd, insta, instc] 3,000 *b = tmp; [instc, insta, instb] 2,000 } [instc, insta] Best Regards, Raul. |
|
From: Philippe W. <phi...@sk...> - 2015-02-13 15:27:47
|
On Thu, 2015-02-12 at 15:33 -0800, Mark Roberts wrote: > I’m in the process of upgrading from Vulcan 3.9 to 3.10.1. I’m having > trouble with the new test gdbserver_tests/nlvgdbsigqueue.vgtest. It > looks like it is not getting the gdb signal as it will run to timeout > (which is a loooong time). All the other gdbserver tests run fine as > do all the rest of the tests for that matter. > > > > Running: > > Linux version 3.16.3-200.fc20.x86_64 > (moc...@bk...) (gcc version 4.8.3 > 20140624 (Red Hat 4.8.3-1) (GCC) ) #1 SMP Wed Sep 17 22:34:21 UTC 2014 > > > > Any thoughts? No idea. It runs ok on a bunch of platforms. This test is somewhat sensitive to timing (i.e. we have some sleep here and there that are supposed to synchronise the events). So, the test might fail maybe due to a highly loaded system ? Can you run the test with more trace ? E.g. run with export EXTRA_REGTEST_OPTS="-v -v -v -d -d -d" to have tracing at valgrind side, and add -d -d 2>vgdb.stderr.out at the end of the target remote | ... line in nlvgdbsigqueue.stdinB.gdb then do perl tests/vg_regtest --keep-unfiltered gdbserver_tests/nlvgdbsigqueue The resulting trace files might help to understand what is going wrong. Philippe |
|
From: Mark R. <ma...@cs...> - 2015-02-13 00:32:59
|
I'm in the process of upgrading from Vulcan 3.9 to 3.10.1. I'm having trouble with the new test gdbserver_tests/nlvgdbsigqueue.vgtest. It looks like it is not getting the gdb signal as it will run to timeout (which is a loooong time). All the other gdbserver tests run fine as do all the rest of the tests for that matter. Running: Linux version 3.16.3-200.fc20.x86_64 (moc...@bk...) (gcc version 4.8.3 20140624 (Red Hat 4.8.3-1) (GCC) ) #1 SMP Wed Sep 17 22:34:21 UTC 2014 Any thoughts? Thanks, Mark Roberts |
|
From: Horatio <vat...@ya...> - 2015-02-11 11:28:07
|
Hello everyone, I also got a similar error on my Samsung Galaxy S4(rooted). Could anyone help me? >From logcat: ====================================== I/start_valgrind.sh(31243): *disInstr(thumb): unhandled instruction: 0x4771 0x5F43* ... I/start_valgrind.sh(31243): start_valgrind.sh terminated by exit(10) ====================================== My Valgrind version is *valgrind-3.10.1*, built on Ubuntu 12.04 LTS(64bits) with android NDK r8e(64bits). My hardware info: ----------------------------------------------------------------------- 1|root@ja3g:/data/local/valdroid/bin # cat /proc/cpuinfo cat /proc/cpuinfo Processor : ARMv7 Processor rev 2 (v7l) processor : 0 BogoMIPS : 1590.88 processor : 1 BogoMIPS : 1590.88 processor : 2 BogoMIPS : 1590.88 processor : 3 BogoMIPS : 1590.88 Features : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 2 Hardware : UNIVERSAL5410 Revision : 000a Serial : c90430bd4d00fc18 ----------------------------------------------------------------------- The parameters that I used for valgrind are: VGPARAMS='-v --error-limit=no --tool=memcheck --leak-check=yes --suppressions=/data/local/sup1.supp --suppressions=/data/local/sup2.supp' -- View this message in context: http://valgrind.10908.n7.nabble.com/Valgrind-on-Android-Jelly-Beans-Can-not-launch-app-due-to-unrecognized-instructions-tp47707p53691.html Sent from the Valgrind - Users mailing list archive at Nabble.com. |
|
From: Mark W. <mj...@re...> - 2015-02-05 11:14:40
|
Hi all, All the slides of the talks given in the Valgrind devroom at Fosdem in Brussel this year are now online: https://fosdem.org/2015/schedule/track/valgrind/ Sadly we had some trouble producing videos of the talks. If by a miracle we did manage to record some they will appear here with the other Fosdem talks: http://video.fosdem.org/ Cheers, Mark |