|
From: John R. <jr...@bi...> - 2016-12-08 13:34:55
|
> Most of the time, when I start valgrind like this: > # valgrind --tool=memcheck <path to my program> > it exits with a segmentation fault. I tried different programs, small and big, but this does not really seem to make a difference. ... Most of the time? Then run valgrind under gdb, get the traceback at the time of the SIGSEGV, and file a bug report against valgrind. $ gdb valgrind (gdb) run --tool=memcheck /path/to/the/smallest/program/which/fails SIGSEGV (gdb) bt > But sometimes I have crashes like this: > --443-- warning: DiCfSI 0x38012f58 .. 0x38952f73 is huge; length = 9699356 (NONE) > --443-- DWARF2 CFI reader: unhandled CFI instruction 0:36 > --443-- VALGRIND INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) - exiting > --443-- si_code=1; Faulting address: 0x4200D858; sp: 0x624b4da0 This indicates a problem with reading the debug symbols. Find the smallest program that ever fails this way, run $ readelf --debug-dump /path/to/my/program Look for "CFI instruction 0:36", and file a bug report against valgrind with relevant information. (For example: paste the whole output onto a pastebin somewhere on the net, and include the URL in the bug report.) [You will get more sympathy (and help) if you run the current version of valgrind, which is 3.12.] |