diff options
author | Andreas Schwab <schwab@suse.de> | 2023-03-23 16:46:20 +0100 |
---|---|---|
committer | Andreas Schwab <schwab@suse.de> | 2023-05-09 14:36:34 +0200 |
commit | ab5aa2ee3d3f978e474803cbbc5fe805ad30e293 (patch) | |
tree | fe778d97394e5ab8c89904492d2e34e167177bec /elf/dl-load.c | |
parent | d1417176a35d27ffb8da0ffb1e33154163b6eeb2 (diff) | |
download | glibc-ab5aa2ee3d3f978e474803cbbc5fe805ad30e293.zip glibc-ab5aa2ee3d3f978e474803cbbc5fe805ad30e293.tar.gz glibc-ab5aa2ee3d3f978e474803cbbc5fe805ad30e293.tar.bz2 |
dlopen: skip debugger notification for DSO loaded from sprof (bug 30258)
Avoid inconsistent state in the debugger interface.
Diffstat (limited to 'elf/dl-load.c')
-rw-r--r-- | elf/dl-load.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/elf/dl-load.c b/elf/dl-load.c index 9a0e40c..39c63ff 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -1483,6 +1483,10 @@ cannot enable executable stack as shared object requires"); /* Now that the object is fully initialized add it to the object list. */ _dl_add_to_namespace_list (l, nsid); + /* Skip auditing and debugger notification when called from 'sprof'. */ + if (mode & __RTLD_SPROF) + return l; + /* Signal that we are going to add new objects. */ struct r_debug *r = _dl_debug_update (nsid); if (r->r_state == RT_CONSISTENT) |