[hurd,commited,7/8] hurd: Avoid PLT references to syscalls

Message ID 20180616010627.29577-7-samuel.thibault@ens-lyon.org
State New
Headers show
Series
  • [hurd,commited,1/8] hurd: avoid PLT ref between sendfile and sendfile64
Related show

Commit Message

Samuel Thibault June 16, 2018, 1:06 a.m.
* mach/Makefile ($(mach-syscalls:%=$(objpfx))): Add hidden definition.
	* sysdeps/mach/include/mach/mach_traps.h (__mach_reply_port,
	__mach_thread_self, __mach_task_self, __mach_host_self, __swtch,
	__swtch_pri, __thread_switch, __evc_wait): Add hidden prototypes.
---
 ChangeLog                              |  4 ++++
 mach/Makefile                          |  3 ++-
 sysdeps/mach/include/mach/mach_traps.h | 20 ++++++++++++++------
 3 files changed, 20 insertions(+), 7 deletions(-)

-- 
2.17.1

Patch

diff --git a/ChangeLog b/ChangeLog
index d81c823448..8c4b6ccd2f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -25,6 +25,10 @@ 
 	(__mach_msg): Add hidden prototype.
 	* mach/msg.c: Include <mach.h>.
 	(__mach_msg): Add hidden definition.
+	* mach/Makefile ($(mach-syscalls:%=$(objpfx))): Add hidden definition.
+	* sysdeps/mach/include/mach/mach_traps.h (__mach_reply_port,
+	__mach_thread_self, __mach_task_self, __mach_host_self, __swtch,
+	__swtch_pri, __thread_switch, __evc_wait): Add hidden prototypes.
 
 2018-06-15  Joseph Myers  <joseph@codesourcery.com>
 
diff --git a/mach/Makefile b/mach/Makefile
index 2683587b2d..435ae6882d 100644
--- a/mach/Makefile
+++ b/mach/Makefile
@@ -97,7 +97,8 @@  else
 $(mach-syscalls:%=$(objpfx)%.S): $(objpfx)%.S: $(objpfx)mach-syscalls.mk
 	(echo '#include <sysdep.h>'; \
 	 echo 'kernel_trap (__$*,$(sysno-$*),$(nargs-$*))'; \
-	 echo 'weak_alias (__$*, $*)') > $@-new
+	 echo 'weak_alias (__$*, $*)'; \
+	 echo 'libc_hidden_def (__$*)') > $@-new
 	 mv -f $@-new $@
 generated += $(mach-syscalls:=.S)
 endif	# mach-syscalls
diff --git a/sysdeps/mach/include/mach/mach_traps.h b/sysdeps/mach/include/mach/mach_traps.h
index d1b2febac1..2d4c1f9c5f 100644
--- a/sysdeps/mach/include/mach/mach_traps.h
+++ b/sysdeps/mach/include/mach/mach_traps.h
@@ -1,13 +1,21 @@ 
 #ifndef _MACH_MACH_TRAPS_H
 #include_next <mach/mach_traps.h>
 
-extern mach_port_t __mach_reply_port (void) attribute_hidden;
+extern mach_port_t __mach_reply_port (void);
+libc_hidden_proto (__mach_reply_port)
 extern mach_port_t __mach_thread_self (void);
+libc_hidden_proto (__mach_thread_self)
 extern mach_port_t (__mach_task_self) (void);
-extern mach_port_t (__mach_host_self) (void) attribute_hidden;
-extern boolean_t __swtch (void) attribute_hidden;
-extern boolean_t __swtch_pri (int priority) attribute_hidden;
+libc_hidden_proto (__mach_task_self)
+extern mach_port_t (__mach_host_self) (void);
+libc_hidden_proto (__mach_host_self)
+extern boolean_t __swtch (void);
+libc_hidden_proto (__swtch)
+extern boolean_t __swtch_pri (int priority);
+libc_hidden_proto (__swtch_pri)
 kern_return_t __thread_switch (mach_port_t new_thread,
-			     int option, mach_msg_timeout_t option_time) attribute_hidden;
-kern_return_t __evc_wait (unsigned int event) attribute_hidden;
+			     int option, mach_msg_timeout_t option_time);
+libc_hidden_proto (__thread_switch)
+kern_return_t __evc_wait (unsigned int event);
+libc_hidden_proto (__evc_wait)
 #endif