This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] linuxthreads.manager.c compile failure


While building powerpc64 --enable-add-ons=linuxthreads --with-tls
--with-__thread, the compile of linuxthreads/manager.c fails with "structure
has no member named "p_resp"

In linuxthreads/descp.h this field is only defined for non-TLS [!(USE_TLS &&
HAVE___THREAD)]. Since the failing statement is in TLS only code, I assume the
intent was to take the address of self->p_res which is defined in either case:

#if !(USE_TLS && HAVE___THREAD)
  /* Initialize thread-locale current locale to point to the global one.
     With __thread support, the variable's initializer takes care of this.  */
  __uselocale (LC_GLOBAL_LOCALE);
#else
  /* Initialize __resp.  */
-  __resp = &self->p_resp;
+  __resp = &self->p_res;
#endif

I believe this effects all platform builds of linuxthreads with TLS enabled.

2003-08-11  Steven Munroe  <sjmunroe@us.ibm.com>

	* manager.c (pthread_start_thread) [!(USE_TLS && HAVE___THREAD)]: 
	Correct spelling of per thread resolver state.

-- 
Steven Munroe
sjmunroe@us.ibm.com
Linux on PowerPC-64 Development
GLIBC for PowerPC-64 Development
diff -urN libc23-cvstip-20030804/linuxthreads/manager.c libc23/linuxthreads/manager.c
--- libc23-cvstip-20030804/linuxthreads/manager.c	2003-07-22 18:07:01.000000000 -0500
+++ libc23/linuxthreads/manager.c	2003-08-04 16:28:23.000000000 -0500
@@ -290,7 +290,7 @@
   __uselocale (LC_GLOBAL_LOCALE);
 #else
   /* Initialize __resp.  */
-  __resp = &self->p_resp;
+  __resp = &self->p_res;
 #endif
   /* Make gdb aware of new thread */
   if (__pthread_threads_debug && __pthread_sig_debug > 0) {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]