summaryrefslogtreecommitdiff
path: root/sunrpc
diff options
context:
space:
mode:
Diffstat (limited to 'sunrpc')
-rw-r--r--sunrpc/Versions4
-rw-r--r--sunrpc/rpc_thread.c3
2 files changed, 2 insertions, 5 deletions
diff --git a/sunrpc/Versions b/sunrpc/Versions
index d86d40a10b..b800172e08 100644
--- a/sunrpc/Versions
+++ b/sunrpc/Versions
@@ -113,8 +113,4 @@ libc {
__rpc_thread_svc_fdset; __rpc_thread_createerr;
__rpc_thread_svc_pollfd; __rpc_thread_svc_max_pollfd;
}
- GLIBC_PRIVATE {
- # needed by libpthread.
- __rpc_thread_destroy; __libc_tsd_RPC_VARS;
- }
}
diff --git a/sunrpc/rpc_thread.c b/sunrpc/rpc_thread.c
index df48c31a8f..9a3d4dbd0c 100644
--- a/sunrpc/rpc_thread.c
+++ b/sunrpc/rpc_thread.c
@@ -15,7 +15,7 @@ __libc_tsd_define (, RPC_VARS)
/*
* Task-variable destructor
*/
-void
+void __attribute__ ((section ("__libc_thread_freeres_fn")))
__rpc_thread_destroy (void)
{
struct rpc_thread_variables *tvp = __libc_tsd_get (RPC_VARS);
@@ -32,6 +32,7 @@ __rpc_thread_destroy (void)
free (tvp);
}
}
+text_set_element (__libc_thread_subfreeres, __rpc_thread_destroy);
/*