about summary refs log tree commit diff
path: root/sunrpc
diff options
context:
space:
mode:
Diffstat (limited to 'sunrpc')
-rw-r--r--sunrpc/Versions2
-rw-r--r--sunrpc/rpc_thread.c6
2 files changed, 7 insertions, 1 deletions
diff --git a/sunrpc/Versions b/sunrpc/Versions
index 4e40927ce7..d86d40a10b 100644
--- a/sunrpc/Versions
+++ b/sunrpc/Versions
@@ -115,6 +115,6 @@ libc {
   }
   GLIBC_PRIVATE {
     # needed by libpthread.
-    __rpc_thread_destroy;
+    __rpc_thread_destroy; __libc_tsd_RPC_VARS;
   }
 }
diff --git a/sunrpc/rpc_thread.c b/sunrpc/rpc_thread.c
index 5c25963a11..b9f4f5895d 100644
--- a/sunrpc/rpc_thread.c
+++ b/sunrpc/rpc_thread.c
@@ -10,7 +10,11 @@
 
 /* Variable used in non-threaded applications or for the first thread.  */
 static struct rpc_thread_variables __libc_tsd_RPC_VARS_mem;
+#if USE_TLS && HAVE___THREAD
+__libc_tsd_define (, RPC_VARS)
+#else
 __libc_tsd_define (static, RPC_VARS)
+#endif
 
 /*
  * Task-variable destructor
@@ -85,6 +89,7 @@ __rpc_thread_svc_fdset (void)
 		return &svc_fdset;
 	return &tvp->svc_fdset_s;
 }
+libc_hidden_def (__rpc_thread_svc_fdset)
 
 struct rpc_createerr *
 __rpc_thread_createerr (void)
@@ -96,6 +101,7 @@ __rpc_thread_createerr (void)
 		return &rpc_createerr;
 	return &tvp->rpc_createerr_s;
 }
+libc_hidden_def (__rpc_thread_createerr)
 
 struct pollfd **
 __rpc_thread_svc_pollfd (void)