aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-01 15:54:51 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-01 15:55:15 -0700
commitd48354d86087ba63acb7e2b20fb604c0b6ba4352 (patch)
tree4a912c0039229cd74756423b98ea071afff7c93b
parentd6daff12617290d4dfb499ed8425d33a48d844ba (diff)
downloadglibc-d48354d86087ba63acb7e2b20fb604c0b6ba4352.tar
glibc-d48354d86087ba63acb7e2b20fb604c0b6ba4352.tar.gz
glibc-d48354d86087ba63acb7e2b20fb604c0b6ba4352.tar.bz2
glibc-d48354d86087ba63acb7e2b20fb604c0b6ba4352.zip
Mark internal rpc functions with attribute_hidden [BZ #18822]
Mark internal rpc functions with attribute_hidden to allow direct access within libc.so and libc.a without using GOT nor PLT. [BZ #18822] * include/rpc/rpc.h (__rpc_thread_variables): Add attribute_hidden. (__rpc_thread_svc_cleanup): Likewise. (__rpc_thread_clnt_cleanup): Likewise. (__rpc_thread_key_cleanup): Likewise.
-rw-r--r--ChangeLog9
-rw-r--r--include/rpc/rpc.h8
2 files changed, 13 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 56b44eafc5..9ede6b7920 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,15 @@
2017-10-01 H.J. Lu <hongjiu.lu@intel.com>
[BZ #18822]
+ * include/rpc/rpc.h (__rpc_thread_variables): Add
+ attribute_hidden.
+ (__rpc_thread_svc_cleanup): Likewise.
+ (__rpc_thread_clnt_cleanup): Likewise.
+ (__rpc_thread_key_cleanup): Likewise.
+
+2017-10-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ [BZ #18822]
* include/sys/uio.h (__readv): Add libc_hidden_proto.
(__writev): Likewise.
* misc/readv.c (__readv): Add libc_hidden_def.
diff --git a/include/rpc/rpc.h b/include/rpc/rpc.h
index 60c78968de..1fb925e85c 100644
--- a/include/rpc/rpc.h
+++ b/include/rpc/rpc.h
@@ -41,10 +41,10 @@ struct rpc_thread_variables {
};
extern struct rpc_thread_variables *__rpc_thread_variables(void)
- __attribute__ ((const));
-extern void __rpc_thread_svc_cleanup (void);
-extern void __rpc_thread_clnt_cleanup (void);
-extern void __rpc_thread_key_cleanup (void);
+ __attribute__ ((const)) attribute_hidden;
+extern void __rpc_thread_svc_cleanup (void) attribute_hidden;
+extern void __rpc_thread_clnt_cleanup (void) attribute_hidden;
+extern void __rpc_thread_key_cleanup (void) attribute_hidden;
extern void __rpc_thread_destroy (void);