]> git.ipfire.org Git - thirdparty/valgrind.git/commit
Bug 79362 - Debug info is lost for .so files when they are dlclose'd. Followup fix...
authorJulian Seward <jseward@acm.org>
Mon, 15 Jan 2018 10:25:12 +0000 (11:25 +0100)
committerJulian Seward <jseward@acm.org>
Mon, 15 Jan 2018 10:25:12 +0000 (11:25 +0100)
commitf8ae2f95d6d717aa6d3923635b9f6f87af9b7cf1
tree898b6805714c2941d3310bdfd88e535385143d24
parent7d0403032250c8985ae99a96af7bcd9190ad654b
Bug 79362 - Debug info is lost for .so files when they are dlclose'd.  Followup fix to avoid assertion failure when dlopening an object that has previously been dlclosed.

As reported by Matthias Schwarzott <zzam@gentoo.org>.  Testcase patch from him.  The fix is
for check_CFSI_related_invariants() to avoid checking for overlaps against DebugInfos that are
in 'archived' status, since -- if a previously dlopened-and-then-dlclosed object is later
re-dlopened -- this may cause an overlap between the active and archived DebugInfos, which
is of no consequence.  If the kernel maps the object to the same VMA the second time around
then there will *certainly* be an overlap.
coregrind/m_debuginfo/debuginfo.c
coregrind/m_debuginfo/priv_storage.h
memcheck/tests/linux/dlclose_leak-no-keep.stderr.exp
memcheck/tests/linux/dlclose_leak.c
memcheck/tests/linux/dlclose_leak.stderr.exp