aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-05-25 06:55:42 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-05-25 06:55:58 -0700
commit81efada5287c3215307623e57d3bbbeefa0c1250 (patch)
treeac1ed59200482f5e459f3422b9f3de83d3a30e8a
parentee8015b9ea084d5727ce477fdd8d935f1de7f7f6 (diff)
downloadglibc-81efada5287c3215307623e57d3bbbeefa0c1250.zip
glibc-81efada5287c3215307623e57d3bbbeefa0c1250.tar.gz
glibc-81efada5287c3215307623e57d3bbbeefa0c1250.tar.bz2
Make __tunables_init hidden and avoid PLT
Since __tunables_init is internal to ld.so, we should mark it hidden to avoid PLT. We should also avoid PLT when calling __tunable_set_val within ld.so. 2017-05-25 Siddhesh Poyarekar <siddhesh@sourceware.org> H.J. Lu <hongjiu.lu@intel.com> * elf/dl-tunables.c (__tunable_set_val): Make a hidden alias. * elf/dl-tunables.h (__tunables_init): Mark it hidden in rtld. (__tunable_set_val): Likewise.
-rw-r--r--ChangeLog7
-rw-r--r--elf/dl-tunables.c2
-rw-r--r--elf/dl-tunables.h3
3 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index b0c2047..baf2102 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2017-05-25 Siddhesh Poyarekar <siddhesh@sourceware.org>
+ H.J. Lu <hongjiu.lu@intel.com>
+
+ * elf/dl-tunables.c (__tunable_set_val): Make a hidden alias.
+ * elf/dl-tunables.h (__tunables_init): Mark it hidden in rtld.
+ (__tunable_set_val): Likewise.
+
2017-05-25 H.J. Lu <hongjiu.lu@intel.com>
* Makeconfig ($(common-objpfx)dl-tunable-list.h): Also check
diff --git a/elf/dl-tunables.c b/elf/dl-tunables.c
index 8d72e26..b6e6b3d 100644
--- a/elf/dl-tunables.c
+++ b/elf/dl-tunables.c
@@ -470,3 +470,5 @@ cb:
if (callback)
callback (&cur->val);
}
+
+rtld_hidden_def (__tunable_set_val)
diff --git a/elf/dl-tunables.h b/elf/dl-tunables.h
index f33adfb..20ee512 100644
--- a/elf/dl-tunables.h
+++ b/elf/dl-tunables.h
@@ -69,6 +69,9 @@ typedef struct _tunable tunable_t;
extern void __tunables_init (char **);
extern void __tunable_set_val (tunable_id_t, void *, tunable_callback_t);
+rtld_hidden_proto (__tunables_init)
+rtld_hidden_proto (__tunable_set_val)
+
/* Check if the tunable has been set to a non-default value and if it is, copy
it over into __VAL. */
# define TUNABLE_SET_VAL(__id,__val) \