diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2017-05-25 06:55:42 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2017-05-25 06:55:58 -0700 |
commit | 81efada5287c3215307623e57d3bbbeefa0c1250 (patch) | |
tree | ac1ed59200482f5e459f3422b9f3de83d3a30e8a | |
parent | ee8015b9ea084d5727ce477fdd8d935f1de7f7f6 (diff) | |
download | glibc-81efada5287c3215307623e57d3bbbeefa0c1250.tar.gz glibc-81efada5287c3215307623e57d3bbbeefa0c1250.tar.xz glibc-81efada5287c3215307623e57d3bbbeefa0c1250.zip |
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-- | ChangeLog | 7 | ||||
-rw-r--r-- | elf/dl-tunables.c | 2 | ||||
-rw-r--r-- | elf/dl-tunables.h | 3 |
3 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index b0c2047b80..baf21026c3 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 8d72e268ef..b6e6b3da52 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 f33adfb359..20ee51254e 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) \ |