Message ID | 20170901180029.9527-46-hjl.tools@gmail.com |
---|---|
State | New |
Headers | show |
Series | Hide internal functions in libc.so | expand |
On 9/1/17, H.J. Lu <hjl.tools@gmail.com> wrote: > Hide internal __sched_setparam function to allow direct access within > libc.so and libc.a without using GOT nor PLT. > > __GI___sched_setparam is defined when sysdeps/unix/syscalls.list is > used to generate sched_setparam. Otherwise libc_hidden_def is needed > explicitly. > > [BZ #18822] > * include/sched.h (__sched_setparam): Add libc_hidden_proto. > * posix/sched_setp.c (__sched_setparam): Add libc_hidden_def. Tested with build-many-glibcs.py. I am checking it in.
diff --git a/include/sched.h b/include/sched.h index f75faed4ce..b698f78666 100644 --- a/include/sched.h +++ b/include/sched.h @@ -5,6 +5,7 @@ /* Now define the internal interfaces. */ extern int __sched_setparam (__pid_t __pid, const struct sched_param *__param); +libc_hidden_proto (__sched_setparam) extern int __sched_getparam (__pid_t __pid, struct sched_param *__param); extern int __sched_setscheduler (__pid_t __pid, int __policy, const struct sched_param *__param); diff --git a/posix/sched_setp.c b/posix/sched_setp.c index 17c3af322a..ad50d5abe7 100644 --- a/posix/sched_setp.c +++ b/posix/sched_setp.c @@ -29,4 +29,5 @@ __sched_setparam (pid_t pid, const struct sched_param *param) } stub_warning (sched_setparam) +libc_hidden_def (__sched_setparam) weak_alias (__sched_setparam, sched_setparam)