Bug 409162 - exp-sgcheck: sg_main.c:559 (add_blocks_to_StackTree): Assertion '!already_present' failed.
Summary: exp-sgcheck: sg_main.c:559 (add_blocks_to_StackTree): Assertion '!already_pre...
Status: RESOLVED DUPLICATE of bug 255603
Alias: None
Product: valgrind
Classification: Developer tools
Component: sgcheck (show other bugs)
Version: 3.13.0
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Julian Seward
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-06-25 08:26 UTC by Daniel
Modified: 2019-06-25 21:17 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel 2019-06-25 08:26:27 UTC
I wanted to run my tests under sgcheck, but sgcheck reported multiple warnings and exited on failed assertion.

$ valgrind --version
valgrind-3.13.0
$ cat /etc/centos-release
CentOS 7.6.1810
$ uname -a
Linux localhost.localdomain 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
$ gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)

$ valgrind --tool=exp-sgcheck ./tests
==26869== exp-sgcheck, a stack and global array overrun detector
==26869== NOTE: This is an Experimental-Class Valgrind Tool
==26869== Copyright (C) 2003-2017, and GNU GPL'd, by OpenWorks Ltd et al.
==26869== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==26869== Command: ./tests
==26869== 
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93
--26869-- warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x93

exp-sgcheck: sg_main.c:559 (add_blocks_to_StackTree): Assertion '!already_present' failed.

host stacktrace:
==26869==    at 0x5801468D: ??? (in /usr/lib64/valgrind/exp-sgcheck-amd64-linux)
==26869==    by 0x580147A4: ??? (in /usr/lib64/valgrind/exp-sgcheck-amd64-linux)
==26869==    by 0x58014931: ??? (in /usr/lib64/valgrind/exp-sgcheck-amd64-linux)
==26869==    by 0x5800B180: ??? (in /usr/lib64/valgrind/exp-sgcheck-amd64-linux)
==26869==    by 0x5800C0A9: ??? (in /usr/lib64/valgrind/exp-sgcheck-amd64-linux)
==26869==    by 0x100B513E59: ???
==26869==    by 0x1003B17F2F: ???

sched status:
  running_tid=1

Thread 1: status = VgTs_Runnable (lwpid 26869)
==26869==    at 0x4006516: _dl_map_object_from_fd (dl-load.c:1350)
==26869==    by 0x4008575: _dl_map_object (dl-load.c:2400)
==26869==    by 0x400130D: map_doit (rtld.c:581)
==26869==    by 0x400F703: _dl_catch_error (dl-error.c:177)
==26869==    by 0x4001DE9: handle_ld_preload (rtld.c:765)
==26869==    by 0x40042A1: dl_main (rtld.c:1606)
==26869==    by 0x4017F2D: _dl_sysdep_start (dl-sysdep.c:244)
==26869==    by 0x4001BB0: _dl_start (rtld.c:400)
==26869==    by 0x4001127: ??? (in /usr/lib64/ld-2.17.so)
==26869==    by 0x1: ???
==26869==    by 0x1FFF00000A: ???
==26869==    by 0x1FFF00002D: ???


Note: see also the FAQ in the source distribution.
It contains workarounds to several common problems.
In particular, if Valgrind aborted or crashed after
identifying problems in your program, there's a good chance
that fixing those problems will prevent Valgrind aborting or
crashing, especially if it happened in m_mallocfree.c.

If that doesn't help, please report this bug to: www.valgrind.org

In the bug report, send all the above text, the valgrind
version, and what OS and version you are using.  Thanks.
Comment 1 Philippe Waroquiers 2019-06-25 21:17:35 UTC
See bug 255603.
This is (supposed to be) solved in valgrind >= 3.14.

Please upgrade your valgrind (it is easy to compile from source)
and verify it is working for you.

Thanks

*** This bug has been marked as a duplicate of bug 255603 ***