about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2006-10-29 21:46:32 +0000
committerUlrich Drepper <drepper@redhat.com>2006-10-29 21:46:32 +0000
commitb94817f9139b92e4bde284a63b1b6ec570055d38 (patch)
tree0f26988c2722e4044ccd83ee837315ae36c92873
parent78fbd00f39d48592d55bd4a022a909c9577b21db (diff)
downloadglibc-b94817f9139b92e4bde284a63b1b6ec570055d38.tar.gz
glibc-b94817f9139b92e4bde284a63b1b6ec570055d38.tar.xz
glibc-b94817f9139b92e4bde284a63b1b6ec570055d38.zip
* elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
	* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
	* elf/dl-close.c (_dl_close_worker): Likewise.
	* elf/dl-open.c (_dl_open_worker): Likewise.
	* sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
-rw-r--r--ChangeLog8
-rw-r--r--elf/dl-close.c2
-rw-r--r--elf/dl-open.c2
-rw-r--r--elf/dl-runtime.c8
-rw-r--r--elf/dl-sym.c2
-rw-r--r--sysdeps/generic/sysdep-cancel.h1
6 files changed, 16 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 8159aa4246..9389275812 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	* elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
+	* elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
+	* elf/dl-close.c (_dl_close_worker): Likewise.
+	* elf/dl-open.c (_dl_open_worker): Likewise.
+	* sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
+
 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
 
 	* configure.in: Require assembler support for visibility, compiler
diff --git a/elf/dl-close.c b/elf/dl-close.c
index 47316ec7f7..df968fe649 100644
--- a/elf/dl-close.c
+++ b/elf/dl-close.c
@@ -399,7 +399,7 @@ _dl_close_worker (struct link_map *map)
 
 	      struct r_scope_elem **old = imap->l_scope;
 
-	      if (SINGLE_THREAD_P)
+	      if (RTLD_SINGLE_THREAD_P)
 		imap->l_scope = newp;
 	      else
 		{
diff --git a/elf/dl-open.c b/elf/dl-open.c
index f2f4ae2383..c997521126 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -417,7 +417,7 @@ dl_open_worker (void *a)
 	      memcpy (newp, imap->l_scope, cnt * sizeof (imap->l_scope[0]));
 	      struct r_scope_elem **old = imap->l_scope;
 
-	      if (SINGLE_THREAD_P)
+	      if (RTLD_SINGLE_THREAD_P)
 		imap->l_scope = newp;
 	      else
 		{
diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c
index 0488fab8d0..afc99f6150 100644
--- a/elf/dl-runtime.c
+++ b/elf/dl-runtime.c
@@ -93,14 +93,14 @@ _dl_fixup (
 	    version = NULL;
 	}
 
-      if (l->l_type == lt_loaded && !SINGLE_THREAD_P)
+      if (l->l_type == lt_loaded && !RTLD_SINGLE_THREAD_P)
 	__rtld_mrlock_lock (l->l_scope_lock);
 
       result = _dl_lookup_symbol_x (strtab + sym->st_name, l, &sym,
 				    l->l_scope, version, ELF_RTYPE_CLASS_PLT,
 				    DL_LOOKUP_ADD_DEPENDENCY, NULL);
 
-      if (l->l_type == lt_loaded && !SINGLE_THREAD_P)
+      if (l->l_type == lt_loaded && !RTLD_SINGLE_THREAD_P)
 	__rtld_mrlock_unlock (l->l_scope_lock);
 
       /* Currently result contains the base load address (or link map)
@@ -181,7 +181,7 @@ _dl_profile_fixup (
 		version = NULL;
 	    }
 
-	  if (l->l_type == lt_loaded && !SINGLE_THREAD_P)
+	  if (l->l_type == lt_loaded && !RTLD_SINGLE_THREAD_P)
 	    __rtld_mrlock_lock (l->l_scope_lock);
 
 	  result = _dl_lookup_symbol_x (strtab + refsym->st_name, l, &defsym,
@@ -189,7 +189,7 @@ _dl_profile_fixup (
 					ELF_RTYPE_CLASS_PLT,
 					DL_LOOKUP_ADD_DEPENDENCY, NULL);
 
-	  if (l->l_type == lt_loaded && !SINGLE_THREAD_P)
+	  if (l->l_type == lt_loaded && !RTLD_SINGLE_THREAD_P)
 	    __rtld_mrlock_unlock (l->l_scope_lock);
 
 	  /* Currently result contains the base load address (or link map)
diff --git a/elf/dl-sym.c b/elf/dl-sym.c
index 2081fd53f1..88a5adb0d5 100644
--- a/elf/dl-sym.c
+++ b/elf/dl-sym.c
@@ -113,7 +113,7 @@ do_sym (void *handle, const char *name, void *who,
 	 the initial binary.  And then the more complex part
 	 where the object is dynamically loaded and the scope
 	 array can change.  */
-      if (match->l_type != lt_loaded || SINGLE_THREAD_P)
+      if (match->l_type != lt_loaded || RTLD_SINGLE_THREAD_P)
 	result = GLRO(dl_lookup_symbol_x) (name, match, &ref,
 					   match->l_scope, vers, 0,
 					   flags | DL_LOOKUP_ADD_DEPENDENCY,
diff --git a/sysdeps/generic/sysdep-cancel.h b/sysdeps/generic/sysdep-cancel.h
index f07b784f2e..ba6a1e04ba 100644
--- a/sysdeps/generic/sysdep-cancel.h
+++ b/sysdeps/generic/sysdep-cancel.h
@@ -2,6 +2,7 @@
 
 /* No multi-thread handling enabled.  */
 #define SINGLE_THREAD_P (1)
+#define RTLD_SINGLE_THREAD_P (1)
 #define LIBC_CANCEL_ASYNC()	0 /* Just a dummy value.  */
 #define LIBC_CANCEL_RESET(val)	((void)(val)) /* Nothing, but evaluate it.  */
 #define LIBC_CANCEL_HANDLED()	/* Nothing.  */