[hurd,commited] hurd: Fix reference to _hurd_self_sigstate

Message ID 20180616144018.6806-1-samuel.thibault@ens-lyon.org
State New
Headers show
Series
  • [hurd,commited] hurd: Fix reference to _hurd_self_sigstate
Related show

Commit Message

Samuel Thibault June 16, 2018, 2:40 p.m.
* sysdeps/hurd/include/hurd/signal.h (_hurd_self_sigstate): Add hidden
	prototype and definition.
	* sysdeps/mach/hurd/i386/____longjmp_chk.S (____longjmp_chk): Use
	hidden target for _hurd_self_sigstate.
---
 ChangeLog                                | 4 ++++
 sysdeps/hurd/include/hurd/signal.h       | 9 +++++++++
 sysdeps/mach/hurd/i386/____longjmp_chk.S | 2 +-
 3 files changed, 14 insertions(+), 1 deletion(-)

-- 
2.17.1

Patch

diff --git a/ChangeLog b/ChangeLog
index 363ae5bd77..9dd87eebb8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -26,6 +26,10 @@ 
 	__swtch_pri, __thread_switch, __evc_wait): Add hidden prototypes.
 	* sysdeps/mach/hurd/localplt.data (siglongjmp, longjmp,
 	__libc_lseek64, _IO_funlockfile): Whitelist PLT references.
+	* sysdeps/hurd/include/hurd/signal.h (_hurd_self_sigstate): Add hidden
+	prototype and definition.
+	* sysdeps/mach/hurd/i386/____longjmp_chk.S (____longjmp_chk): Use
+	hidden target for _hurd_self_sigstate.
 
 2018-06-15  Joseph Myers  <joseph@codesourcery.com>
 
diff --git a/sysdeps/hurd/include/hurd/signal.h b/sysdeps/hurd/include/hurd/signal.h
index 1cb0adaa55..8ceab328c5 100644
--- a/sysdeps/hurd/include/hurd/signal.h
+++ b/sysdeps/hurd/include/hurd/signal.h
@@ -1,9 +1,18 @@ 
 #ifndef	_HURD_SIGNAL_H
+extern struct hurd_sigstate *_hurd_self_sigstate (void) __attribute__ ((__const__));
+#ifndef _ISOMAC
+libc_hidden_proto (_hurd_self_sigstate)
+#endif
+
 #include_next <hurd/signal.h>
+
 #ifndef _ISOMAC
 libc_hidden_proto (_hurd_exception2signal)
 libc_hidden_proto (_hurd_intr_rpc_mach_msg)
 libc_hidden_proto (_hurd_thread_sigstate)
 libc_hidden_proto (_hurd_raise_signal)
 #endif
+#ifdef _HURD_SIGNAL_H_HIDDEN_DEF
+libc_hidden_def (_hurd_self_sigstate)
+#endif
 #endif
diff --git a/sysdeps/mach/hurd/i386/____longjmp_chk.S b/sysdeps/mach/hurd/i386/____longjmp_chk.S
index 1bde0efc3d..7c3a73adba 100644
--- a/sysdeps/mach/hurd/i386/____longjmp_chk.S
+++ b/sysdeps/mach/hurd/i386/____longjmp_chk.S
@@ -68,7 +68,7 @@  ENTRY (____longjmp_chk)
 
 	/* TODO: need locking?  */
 	/* struct hurd_sigstate * _hurd_self_sigstate (void) */
-	call	_hurd_self_sigstate
+	call	HIDDEN_JUMPTARGET(_hurd_self_sigstate)
 	/* TODO: %eax and %eax->sigaltstack are always valid?  */
 
 	testl	$SS_ONSTACK, (HURD_SIGSTATE__SIGALTSTACK__OFFSET + SIGALTSTACK__SS_FLAGS__OFFSET)(%eax)