Hi
I usually compile my source with "-g" to have the symbols,
gcc -o main -g main.c
That way the valgrind output may become a bit clearer.
I call valgrind like this
valgrind -v --leak-check=full --track-origins=yes --show-reachable=yes
./main
if iwant full information about errors and leaks,
or like this
valgrind -v ./main
if am only interested in the errors.
Hope this helps
Jody
On Mon, Jul 7, 2014 at 4:33 PM, Ying Zhang <zh...@hpc.ufl.edu> wrote:
> Hello,
>
> I'm testing valgrind with a very simple C program:
>
> #include <stdio.h>
>
> int main()
> {
> printf ("Hello world\n");
> return 0;
> }
>
> After compile and run it with valgrind
>
> gcc -o main main.c
> valgrind --tool=memcheck --track-origins=yes ./main
>
> I got the following errors. I don't quite understand why there are 54
> errors from 12 contexts (suppressed: 6 from 6) from a simple program. I'd
> appreciate if anyone could give me some insights.
>
> Thank you,
>
> Ying
>
> ----------------------
>
> ==49780== Memcheck, a memory error detector
> ==49780== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
> ==49780== Using Valgrind-3.9.0 and LibVEX; rerun with -h for copyright info
> ==49780== Command: ./main
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4F58D05: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x9F8E5D7: ???
> ==49780== by 0x422200F: ???
> ==49780== by 0xFFEFFF387: ???
> ==49780== by 0xFFEFFF37F: ???
> ==49780== by 0xFFEFFF477: ???
> ==49780== by 0x1D: ???
> ==49780== by 0x9D7CD90: ??? (in /lib64/libselinux.so.1)
> ==49780== by 0xC1: ???
> ==49780== by 0xFFEFFF33D: ???
> ==49780== by 0xEF52: ???
> ==49780== by 0xFFF: ???
> ==49780== Uninitialised value was created
> ==49780== at 0x4F0F91A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x4F0F9C4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x51BDE7F: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x4EAC918: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x23F: ???
> ==49780== by 0x4EA9029: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x566704E3E3A7: ???
> ==49780== by 0x237: ???
> ==49780== by 0x20FFF: ???
> ==49780== by 0x4E3F73F: ??? (in /lib64/libc-2.12.so)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4F58D3C: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x9F8E5D7: ???
> ==49780== by 0x422200F: ???
> ==49780== by 0xFFEFFF387: ???
> ==49780== by 0xFFEFFF37F: ???
> ==49780== by 0xFFEFFF477: ???
> ==49780== by 0x1D: ???
> ==49780== by 0x9D7CD90: ??? (in /lib64/libselinux.so.1)
> ==49780== by 0xC1: ???
> ==49780== by 0xFFEFFF33D: ???
> ==49780== by 0xEF52: ???
> ==49780== by 0xFFF: ???
> ==49780== Uninitialised value was created
> ==49780== at 0x4F0F91A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x4F0F9C4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x51BDE7F: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x4EAC918: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x23F: ???
> ==49780== by 0x4EA9029: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x566704E3E3A7: ???
> ==49780== by 0x237: ???
> ==49780== by 0x20FFF: ???
> ==49780== by 0x4E3F73F: ??? (in /lib64/libc-2.12.so)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4F5976F: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x9F8E5D7: ???
> ==49780== by 0x422200F: ???
> ==49780== by 0xFFEFFF387: ???
> ==49780== by 0xFFEFFF37F: ???
> ==49780== by 0xFFEFFF477: ???
> ==49780== by 0x1D: ???
> ==49780== by 0x9D7CD90: ??? (in /lib64/libselinux.so.1)
> ==49780== by 0xC1: ???
> ==49780== by 0xFFEFFF33D: ???
> ==49780== by 0xEF52: ???
> ==49780== by 0xFFF: ???
> ==49780== Uninitialised value was created
> ==49780== at 0x4F0F91A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x4F0F9C4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x51BDE7F: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x4EAC918: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x23F: ???
> ==49780== by 0x4EA9029: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x566704E3E3A7: ???
> ==49780== by 0x237: ???
> ==49780== by 0x20FFF: ???
> ==49780== by 0x4E3F73F: ??? (in /lib64/libc-2.12.so)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4F597EC: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x9F8E5D7: ???
> ==49780== by 0x422200F: ???
> ==49780== by 0xFFEFFF387: ???
> ==49780== by 0xFFEFFF37F: ???
> ==49780== by 0xFFEFFF477: ???
> ==49780== by 0x1D: ???
> ==49780== by 0x9D7CD90: ??? (in /lib64/libselinux.so.1)
> ==49780== by 0xC1: ???
> ==49780== by 0xFFEFFF33D: ???
> ==49780== by 0xEF52: ???
> ==49780== by 0xFFF: ???
> ==49780== Uninitialised value was created
> ==49780== at 0x4F0F91A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x4F0F9C4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x51BDE7F: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x4EAC918: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x23F: ???
> ==49780== by 0x4EA9029: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x566704E3E3A7: ???
> ==49780== by 0x237: ???
> ==49780== by 0x20FFF: ???
> ==49780== by 0x4E3F73F: ??? (in /lib64/libc-2.12.so)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4F5939A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x9F8E5D7: ???
> ==49780== by 0x422200F: ???
> ==49780== by 0xFFEFFF387: ???
> ==49780== by 0xFFEFFF37F: ???
> ==49780== by 0xFFEFFF477: ???
> ==49780== by 0x1D: ???
> ==49780== by 0x9D7CD90: ??? (in /lib64/libselinux.so.1)
> ==49780== by 0xC1: ???
> ==49780== by 0xFFEFFF33D: ???
> ==49780== by 0xEF52: ???
> ==49780== by 0xFFF: ???
> ==49780== Uninitialised value was created
> ==49780== at 0x4F0F91A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x4F0F9C4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x51BDE7F: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x4EAC918: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x23F: ???
> ==49780== by 0x4EA9029: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x566704E3E3A7: ???
> ==49780== by 0x237: ???
> ==49780== by 0x20FFF: ???
> ==49780== by 0x4E3F73F: ??? (in /lib64/libc-2.12.so)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4F597E4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x9F8E5D7: ???
> ==49780== by 0x422200F: ???
> ==49780== by 0xFFEFFF387: ???
> ==49780== by 0xFFEFFF37F: ???
> ==49780== by 0xFFEFFF477: ???
> ==49780== by 0x1D: ???
> ==49780== by 0x9D7CD90: ??? (in /lib64/libselinux.so.1)
> ==49780== by 0xC1: ???
> ==49780== by 0xFFEFFF33D: ???
> ==49780== by 0xEF52: ???
> ==49780== by 0xFFF: ???
> ==49780== Uninitialised value was created
> ==49780== at 0x4F0F91A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x4F0F9C4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x51BDE7F: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x4EAC918: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x23F: ???
> ==49780== by 0x4EA9029: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x566704E3E3A7: ???
> ==49780== by 0x237: ???
> ==49780== by 0x20FFF: ???
> ==49780== by 0x4E3F73F: ??? (in /lib64/libc-2.12.so)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4F597E8: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x9F8E5D7: ???
> ==49780== by 0x422200F: ???
> ==49780== by 0xFFEFFF387: ???
> ==49780== by 0xFFEFFF37F: ???
> ==49780== by 0xFFEFFF477: ???
> ==49780== by 0x1D: ???
> ==49780== by 0x9D7CD90: ??? (in /lib64/libselinux.so.1)
> ==49780== by 0xC1: ???
> ==49780== by 0xFFEFFF33D: ???
> ==49780== by 0xEF52: ???
> ==49780== by 0xFFF: ???
> ==49780== Uninitialised value was created
> ==49780== at 0x4F0F91A: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x4F0F9C4: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x51BDE7F: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x51BDED7: ???
> ==49780== by 0x4EAC918: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x23F: ???
> ==49780== by 0x4EA9029: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x566704E3E3A7: ???
> ==49780== by 0x237: ???
> ==49780== by 0x20FFF: ???
> ==49780== by 0x4E3F73F: ??? (in /lib64/libc-2.12.so)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4EB037B: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x636F: ???
> ==49780== Uninitialised value was created by a stack allocation
> ==49780== at 0x88DB3FB: ??? (in /usr/lib64/libinfinipath.so.4.0)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4EB9C7E: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0xA30203A0971: ???
> ==49780== by 0x8AE4FFF: ??? (in /usr/lib64/libinfinipath.so.4.0)
> ==49780== by 0x8DECBCF: ???
> ==49780== by 0x8DD483F: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== by 0x8DD1C8F: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== Uninitialised value was created by a stack allocation
> ==49780== at 0x679F8FB: ??? (in /opt/mellanox/mxm/lib/libmxm.so.0.0.0)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4EB9C93: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x68747541203A0963: ???
> ==49780== by 0x444D416369746E64: ???
> ==49780== by 0x8DE0009: ???
> ==49780== by 0x8DD483F: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== by 0x8DD1C8F: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== Uninitialised value was created by a stack allocation
> ==49780== at 0x679F8FB: ??? (in /opt/mellanox/mxm/lib/libmxm.so.0.0.0)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4EB9C93: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0xA3132203A09796B: ???
> ==49780== by 0x444D416369746DFF: ???
> ==49780== by 0x8DE0009: ???
> ==49780== by 0x8DD483F: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== by 0x8DD1C8F: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== Uninitialised value was created by a stack allocation
> ==49780== at 0x679F8FB: ??? (in /opt/mellanox/mxm/lib/libmxm.so.0.0.0)
> ==49780==
> ==49780== Conditional jump or move depends on uninitialised value(s)
> ==49780== at 0x4EB9C93: ??? (in /lib64/libc-2.12.so)
> ==49780== by 0x444D41203A09656C: ???
> ==49780== by 0x6E6F726574704F1F: ???
> ==49780== by 0x6F725020296D7427: ???
> ==49780== by 0x3620726F73736562: ???
> ==49780== by 0x2020202020383732: ???
> ==49780== by 0x202020202020201F: ???
> ==49780== by 0xA2020201F: ???
> ==49780== by 0x8DD3C3F: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== by 0x8B4272C: ??? (in
> /opt/gnu/gcc/4.7.2/lib64/libstdc++.so.6.0.17)
> ==49780== by 0x8DECBCF: ???
> ==49780== by 0xFFEFFF2BF: ???
> ==49780== Uninitialised value was created by a stack allocation
> ==49780== at 0x679F8FB: ??? (in /opt/mellanox/mxm/lib/libmxm.so.0.0.0)
> ==49780==
> ==49780== Warning: ignored attempt to set SIGKILL handler in sigaction();
> ==49780== the SIGKILL signal is uncatchable
> Hello world
> ==49780==
> ==49780== HEAP SUMMARY:
> ==49780== in use at exit: 0 bytes in 0 blocks
> ==49780== total heap usage: 0 allocs, 0 frees, 0 bytes allocated
> ==49780==
> ==49780== All heap blocks were freed -- no leaks are possible
> ==49780==
> ==49780== For counts of detected and suppressed errors, rerun with: -v
> ==49780== ERROR SUMMARY: 54 errors from 12 contexts (suppressed: 6 from 6)
>
> ------------------------------------------------------------------------------
> Open source business process management suite built on Java and Eclipse
> Turn processes into business applications with Bonita BPM Community Edition
> Quickly connect people, data, and systems into organized workflows
> Winner of BOSSIE, CODIE, OW2 and Gartner awards
> http://p.sf.net/sfu/Bonitasoft
> _______________________________________________
> Valgrind-users mailing list
> Valgrind-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/valgrind-users
>
------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users