hi,

I just upgraded my disto and now have valgrind 3.6.1. Unfortunately the
generated backtraces seem somewhat broken.

This is how I invoke valgrind:
G_SLICE=always-malloc G_DEBUG=gc-friendly GLIBCPP_FORCE_NEW=1
GLIBCXX_FORCE_NEW=1 /usr/bin/valgrind -v --trace-children=yes --num-callers=30
--tool=memcheck --leak-check=full --leak-resolution=high --track-origins=yes
--suppressions=../xxx.supp --log-file=app.pid%p ./app

Belowe are excerpts from the log, where the backtraces are too short (does not
lead to stackframes in my app).

==16156== 112 bytes in 14 blocks are possibly lost in loss record 100 of 114
==16156==    at 0x402911D: malloc (in
/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==16156==
==16156== 840 bytes in 28 blocks are possibly lost in loss record 110 of 114
==16156==    at 0x40277F1: calloc (in
/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==16156==    by 0x4E844D9: g_malloc0 (gmem.c:196)
==16156==
==16141== Conditional jump or move depends on uninitialised value(s)
==16141==    at 0x5A3F552: murrine_draw_separator (murrine_draw.c:1629)
==16141==    by 0x17: ???
==16141==  Uninitialised value was created by a stack allocation
==16141==    at 0x5A43FB4: murrine_draw_list_view_header (murrine_draw.c:1703)
==16141==
==16141== Conditional jump or move depends on uninitialised value(s)
==16141==    at 0x5A3F5BB: murrine_draw_separator (murrine_draw.c:1652)
==16141==    by 0x17: ???
==16141==  Uninitialised value was created by a stack allocation
==16141==    at 0x5A43FB4: murrine_draw_list_view_header (murrine_draw.c:1703)
==16141==
==16141== Conditional jump or move depends on uninitialised value(s)
==16141==    at 0x5A3F5C6: murrine_draw_separator (murrine_draw.c:1652)
==16141==    by 0x17: ???
==16141==  Uninitialised value was created by a stack allocation
==16141==    at 0x5A43FB4: murrine_draw_list_view_header (murrine_draw.c:1703)
==16141==
==16141== 6 bytes in 1 blocks are definitely lost in loss record 983 of 16,152
==16141==    at 0x402911D: malloc (in
/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==16141==    by 0x4E84461: g_malloc (gmem.c:164)
==16141==    by 0x4E9E35A: g_strdup (gstrfuncs.c:102)
==16141==    by 0x4E16D4F: value_lcopy_string (gvaluetypes.c:313)
==16141==


some miss stackframes above:

==19867== 8 bytes in 1 blocks are definitely lost in loss record 3,443 of 16,158
==19867==    at 0x402911D: malloc (in
/usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==19867==    by 0x80F3B7B: setup_log_capture (bt-check.c:237)
==19867==    by 0x805FC81: main (m-bt-edit.c:159)

here setup_log_capture() gst_debug_add_log_function() from another library,
which then does a one time malloc.

I recompiled my app using "-O0 -g -ggdb".

Any ideas?

Stefan

------------------------------------------------------------------------------
Xperia(TM) PLAY
It's a major breakthrough. An authentic gaming
smartphone on the nation's most reliable network.
And it wants your games.
http://p.sf.net/sfu/verizon-sfdev
_______________________________________________
Valgrind-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to