summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2018-04-03 23:00:14 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2018-04-03 23:06:00 +0200
commit5e17a480f83061a0dd0228b7e6415520f3136f94 (patch)
treef926aabcfcf544f85f6d5af86ac766dfe4a4ed1b
parent51722f4dc796fc0e071f9d0350b03a65ba5c163a (diff)
Revert parts of "hurd: Avoid more libc.so local PLTs"
This reverts parts of commit 82dbf555a4d41690f63b94ccb4db4bf43d873aa0.
-rw-r--r--ChangeLog11
-rw-r--r--hurd/catch-signal.c4
-rw-r--r--hurd/hurdfault.c2
-rw-r--r--include/setjmp.h3
-rw-r--r--setjmp/longjmp.c2
-rw-r--r--sysdeps/mach/hurd/sigwait.c2
6 files changed, 4 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog
index d2dabfb3f5..dd78bf691a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -521,19 +521,8 @@
_hurd_fd_error_signal): Add hidden prototype.
[_HURD_FD_H_HIDDEN_DEF] (_hurd_fd_error, _hurd_fd_error_signal): Add
hidden def.
- * hurd/catch-signal.c (__hurd_catch_signal): Call __libc_siglongjmp
- instead if siglongjmp.
- (hurd_safe_memmove): Call __libc_longjmp instead of longjmp.
- * hurd/hurdfault.c (faulted): Call __libc_longjmp instead of longjmp.
- * include/setjmp.h (__libc_siglongjmp, __libc_longjmp): New hidden
- prototypes.
* libio/iolibio.h (_IO_puts): New hidden prototype.
* libio/ioputs.c (_IO_puts): New hidden def.
- * setjmp/longjmp.c (__libc_longjmp, __libc_siglongjmp): New hidden
- defs.
- * sysdeps/mach/hurd/sigwait.c (__sigwait): Call __libc_longjmp instead
- of longjmp.
-
* sysdeps/mach/hurd/localplt.data: New file.
2018-04-02 Agustina Arzille <avarzille@riseup.net>
diff --git a/hurd/catch-signal.c b/hurd/catch-signal.c
index a00ccef4fb..56ce86532d 100644
--- a/hurd/catch-signal.c
+++ b/hurd/catch-signal.c
@@ -32,7 +32,7 @@ __hurd_catch_signal (sigset_t sigset,
instance calling hurd_catch_signal again would then dump core. */
sigjmp_buf buf;
void throw (int signo, long int sigcode, struct sigcontext *scp)
- { __libc_siglongjmp (buf, scp->sc_error ?: EGRATUITOUS); }
+ { siglongjmp (buf, scp->sc_error ?: EGRATUITOUS); }
struct hurd_signal_preemptor preemptor =
{
@@ -121,7 +121,7 @@ hurd_safe_memmove (void *dest, const void *src, size_t nbytes)
{
jmp_buf buf;
void throw (int signo, long int sigcode, struct sigcontext *scp)
- { __libc_longjmp (buf, scp->sc_error ?: EGRATUITOUS); }
+ { longjmp (buf, scp->sc_error ?: EGRATUITOUS); }
struct hurd_signal_preemptor src_preemptor =
{
diff --git a/hurd/hurdfault.c b/hurd/hurdfault.c
index c42d5e739a..39a4522811 100644
--- a/hurd/hurdfault.c
+++ b/hurd/hurdfault.c
@@ -152,7 +152,7 @@ faulted (void)
__libc_fatal ("BUG: unexpected fault in signal thread\n");
_hurdsig_fault_preemptor.signals = 0;
- __libc_longjmp (_hurdsig_fault_env, 1);
+ longjmp (_hurdsig_fault_env, 1);
}
static char faultstack[1024];
diff --git a/include/setjmp.h b/include/setjmp.h
index 682ff4b5a5..263bc64b3d 100644
--- a/include/setjmp.h
+++ b/include/setjmp.h
@@ -24,9 +24,6 @@ extern void __libc_siglongjmp (sigjmp_buf env, int val)
extern void __libc_longjmp (sigjmp_buf env, int val)
__attribute__ ((noreturn));
-libc_hidden_proto (__libc_siglongjmp)
-libc_hidden_proto (__libc_longjmp)
-
libc_hidden_proto (_setjmp)
libc_hidden_proto (__sigsetjmp)
diff --git a/setjmp/longjmp.c b/setjmp/longjmp.c
index 0555d6d6b7..a2a7065a85 100644
--- a/setjmp/longjmp.c
+++ b/setjmp/longjmp.c
@@ -46,6 +46,4 @@ strong_alias (__libc_siglongjmp, __libc_longjmp)
weak_alias (__libc_siglongjmp, _longjmp)
weak_alias (__libc_siglongjmp, longjmp)
weak_alias (__libc_siglongjmp, siglongjmp)
-libc_hidden_def (__libc_longjmp)
-libc_hidden_def (__libc_siglongjmp)
#endif
diff --git a/sysdeps/mach/hurd/sigwait.c b/sysdeps/mach/hurd/sigwait.c
index 321ab46d14..ce17cce895 100644
--- a/sysdeps/mach/hurd/sigwait.c
+++ b/sysdeps/mach/hurd/sigwait.c
@@ -59,7 +59,7 @@ __sigwait (const sigset_t *set, int *sig)
handler (int sig)
{
assert (sig == signo);
- __libc_longjmp (buf, 1);
+ longjmp (buf, 1);
}
wait = __mach_reply_port ();