|
From: <fr...@be...> - 2005-10-11 17:31:12
|
Quoting Tom Hughes <to...@co...>:
> In message <200...@ad...>
> fr...@be... wrote:
>
>> --18300-- Reading syms from /lib/libuClibc-0.9.28.so (0x4016000)
>> --18300-- object doesn't have a symbol table
>> --18300-- Just loaded /lib/libuClibc-0.9.28.so (soname=libc.so.0),
>> --18300-- resolving any unresolved redirs with it
>> --18300-- Finished resolving
>
> There's the problem - the soname doesn't match so none of the
> redirects has been processed.
>
> As a quick hack you can edit coregrind/m_replacemalloc/vg_replace_malloc.c
> and change this line:
>
> #define m_libc_dot_so_dot_6 libcZdsoZd6 // libc.so.6
>
> to this:
>
> #define m_libc_dot_so_dot_6 libcZdsoZd0 // libc.so.0
>
> and see if that works any better.
It fixed the problem. Valgrind now detects the lost memory.
Thank you very much for your help.
There were other places where this string was used:
frank@linux:~/valgrind> find -type f | xargs grep libcZdsoZd6 | grep -v svn |
grep -v Binary
./coregrind/m_redir.c: _vgi_libcZdsoZd6__ZdlPv --> libc.so.6:_ZdlPv
./coregrind/m_replacemalloc/vg_replace_malloc.c: return
VG_REPLACE_FUNCTION(libcZdsoZd6,malloc) (new_size); \
./coregrind/m_replacemalloc/vg_replace_malloc.c:
VG_REPLACE_FUNCTION(libcZdsoZd6,free)(ptrV); \
./coregrind/m_replacemalloc/vg_replace_malloc.c: return
VG_REPLACE_FUNCTION(libcZdsoZd6,memalign)(VKI_PAGE_SIZE, size); \
./coregrind/m_replacemalloc/vg_replace_malloc.c: mem =
VG_REPLACE_FUNCTION(libcZdsoZd6,memalign)(alignment, size); \
./memcheck/mac_replace_strmem.c:#define m_libc_so_6 libcZdsoZd6
// libc.so.6
Can/Should i also do a simple replace on these?
Regards,
Frank
|