This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug dynamic-link/18676] RTLD_NODELETE on an already open DSO does not prevent unloading
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Thu, 16 Jul 2015 03:26:43 +0000
- Subject: [Bug dynamic-link/18676] RTLD_NODELETE on an already open DSO does not prevent unloading
- Auto-submitted: auto-generated
- References: <bug-18676-131 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=18676
--- Comment #1 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 9ceb5f6251fa0c0de5304e081e979b3f855148ed (commit)
via b632bdd3f7c0ba0c79f23f5e4404eebb87ebdaa8 (commit)
from c59f721c7377106888bff47064bf7da5a082e129 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9ceb5f6251fa0c0de5304e081e979b3f855148ed
commit 9ceb5f6251fa0c0de5304e081e979b3f855148ed
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date: Thu Jul 16 08:54:39 2015 +0530
Whitespace fixup in cxa_thread_atexit_impl.c
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b632bdd3f7c0ba0c79f23f5e4404eebb87ebdaa8
commit b632bdd3f7c0ba0c79f23f5e4404eebb87ebdaa8
Author: Siddhesh Poyarekar <siddhesh@redhat.com>
Date: Thu Jul 16 08:53:28 2015 +0530
Set NODELETE flag when opening already open objects with RTLD_NODELETE
The DF_1_NODELETE flag is set too late when opening a DSO, due to
which, if a DSO is already open, subsequently opening it with
RTLD_NODELETE fails to set the DF_1_NODELETE flag. This patch fixes
this by setting the flag immediately after bumping the opencount.
Verified on x86_64.
[BZ #18676]
* elf/tst-nodelete-opened.c: New test case.
* elf/tst-nodelete-opened-lib.c: New test case module.
* elf/Makefile (tests, modules-names): Use them.
* elf/dl-open.c (dl_open_worker): Set DF_1_NODELETE flag
early.
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 11 +++++
NEWS | 2 +-
elf/Makefile | 6 ++-
elf/dl-open.c | 11 +++--
.../stpcpy.S => elf/tst-nodelete-opened-lib.c | 5 +-
.../tst-nodelete-opened.c | 47 +++++++++++--------
stdlib/cxa_thread_atexit_impl.c | 2 +-
7 files changed, 52 insertions(+), 32 deletions(-)
copy sysdeps/aarch64/stpcpy.S => elf/tst-nodelete-opened-lib.c (89%)
copy nptl/tst-pthread-mutexattr.c => elf/tst-nodelete-opened.c (56%)
--
You are receiving this mail because:
You are on the CC list for the bug.