hurd: fix _hurd_self_sigstate reference from ____longjmp_chk

* sysdeps/mach/hurd/i386/____longjmp_chk.S (____longjmp_chk) [PIC]:
	  Use PLT entry for calling _hurd_self_sigstate.
This commit is contained in:
Samuel Thibault 2016-05-30 01:24:09 +02:00
parent d6af2388f7
commit 3904414a30
2 changed files with 11 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2016-05-30 Samuel Thibault <samuel.thibault@ens-lyon.org>
* sysdeps/mach/hurd/i386/____longjmp_chk.S (____longjmp_chk) [PIC]:
Use PLT entry for calling _hurd_self_sigstate.
2016-05-27 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86/cacheinfo.c (init_cacheinfo): Count number of

View File

@ -66,7 +66,12 @@ ENTRY (____longjmp_chk)
/* TODO: need locking? */
/* struct hurd_sigstate * _hurd_self_sigstate (void) */
call _hurd_self_sigstate
#ifdef PIC
call 1f
1: popl %ebx
addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx
#endif
call JUMPTARGET(_hurd_self_sigstate)
/* TODO: %eax and %eax->sigaltstack are always valid? */
testl $SS_ONSTACK, (HURD_SIGSTATE__SIGALTSTACK__OFFSET + SIGALTSTACK__SS_FLAGS__OFFSET)(%eax)