0
votes

When running Valgrind's memcheck, occasionally valgrind report error like this:

==2745== Memcheck, a memory error detector
==2745== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==2745== Using Valgrind-3.6.0 and LibVEX; rerun with -h for copyright info
==2745== Command: ./HSFramework
==2745== 
==2745== Invalid write of size 8
==2745==    at 0x3B81C097C0: do_lookup_x (in /lib64/ld-2.12.so)
==2745==    by 0x1C31032D: ???
==2745==    by 0x3B81C09E19: _dl_lookup_symbol_x (in /lib64/ld-2.12.so)
==2745==  Address 0x7feffee78 is on thread 1's stack
==2745== 

platform: Linux 2.6.32-220.el6.x86_64  x86_64 x86_64 x86_64 GNU/Linux

There is not clue about my code from this error report. I had no idea about this error report.
What reasons will lead to this error?

2
could you show us your code - cIph3r
There is no clue about your code? How much can you pair the code down and still produce this error, and with what frequency? valgrind doesn't generally report errors on a whim, Usually there is a reason for it. - WhozCraig
I had found the clue about my code. - user2098323
Thanks a lot for your help. - user2098323

2 Answers

0
votes

This means that the do_lookup_x function has performed an invalid write access. That function is part of the runtime library (and not likely the origin of the issue). I would contact the author of HSFramework to see if they can fix this issue by running valgrind as you did

0
votes

This error means you are getting a buffer overrun in do_lookup_x, if you got its source look at that or share with us.

http://valgrind.org/docs/manual/quick-start.html