From f09677388a44cd1460f8986ef1b096c73bd5b958 Mon Sep 17 00:00:00 2001 From: Andreas Krebbel Date: Tue, 26 Oct 2010 00:23:14 -0400 Subject: Fix concurrency problem between dl_open and dl_iterate_phdr --- sysdeps/generic/ldsodefs.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'sysdeps') diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index fa4b6b2..d040590 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -891,8 +891,11 @@ extern lookup_t _dl_lookup_symbol_x (const char *undef, extern ElfW(Addr) _dl_symbol_value (struct link_map *map, const char *name) internal_function; -/* Allocate a `struct link_map' for a new object being loaded, - and enter it into the _dl_main_map list. */ +/* Add the new link_map NEW to the end of the namespace list. */ +extern void _dl_add_to_namespace_list (struct link_map *new, Lmid_t nsid) + internal_function attribute_hidden; + +/* Allocate a `struct link_map' for a new object being loaded. */ extern struct link_map *_dl_new_object (char *realname, const char *libname, int type, struct link_map *loader, int mode, Lmid_t nsid) -- cgit v1.1