glibc/sysdeps/unix/sysv/linux
H.J. Lu 94afa0a5f3 Use __libc_ptf_call in _longjmp_unwind
Use __libc_ptf_call in _longjmp_unwind to avoid duplicated logic.  On
x86-64, I got

jmp-unwind.os:
_longjmp_unwind:
	movl	__libc_pthread_functions_init(%rip), %eax
	testl	%eax, %eax
	jne	.L4
	rep ret
.L4:
	movq	304+__libc_pthread_functions(%rip), %rax
	movq	%rsp, %rsi
	ror $2*8+1, %rax
	xor %fs:48, %rax
	jmp	*%rax

jmp-unwind.o:

_longjmp_unwind:
	movl	$__pthread_cleanup_upto, %eax
	testq	%rax, %rax
	je	.L1
	movq	%rsp, %rsi
	jmp	__pthread_cleanup_upto
.L1:
	rep ret

	* sysdeps/nptl/jmp-unwind.c: Include <libc-lock.h> instead of
	<nptl/pthreadP.h>.
	(_longjmp_unwind): Use __libc_ptf_call.
	* sysdeps/unix/sysv/linux/s390/jmp-unwind.c: Likewise.
2015-09-18 12:22:47 -07:00
..
aarch64 [AArch64][BZ 18648] change greg_t definition in ucontext.h 2015-07-09 09:53:30 +01:00
alpha alpha: drop __ASSUME_FDATASYNC 2015-09-17 23:19:10 -04:00
arm Move bits/atomic.h to atomic-machine.h (bug 14912). 2015-09-11 20:00:19 +00:00
bits Add netinet/in.h values from Linux 4.2. 2015-09-01 13:47:25 +00:00
generic Fix wordsize-32 mmap offset for negative value (BZ#18877) 2015-08-28 10:42:07 -03:00
hppa Move bits/atomic.h to atomic-machine.h (bug 14912). 2015-09-11 20:00:19 +00:00
i386 Remove __ASSUME_IPC64 2015-08-24 10:53:49 +02:00
ia64 ia64: drop __tls_get_addr from expected ld.so plt usage 2015-07-28 05:30:14 -04:00
include/sys linux/getsysstats.c: use sysinfo() instead of parsing /proc/meminfo 2015-09-12 21:09:59 -04:00
m68k Move bits/atomic.h to atomic-machine.h (bug 14912). 2015-09-11 20:00:19 +00:00
microblaze microblaze: include unix/sysdep.h 2015-08-07 23:39:42 -04:00
mips mips: siginfo.h: add SIGSYS details [BZ #18863] 2015-08-26 13:33:54 -04:00
net
netash
netatalk
netax25
neteconet
netinet
netipx
netiucv
netpacket
netrom
netrose
nfs
nios2 Move bits/atomic.h to atomic-machine.h (bug 14912). 2015-09-11 20:00:19 +00:00
powerpc Terminate FDE before return trampoline in makecontext for powerpc (bug 18635) 2015-09-04 16:03:00 -03:00
s390 Use __libc_ptf_call in _longjmp_unwind 2015-09-18 12:22:47 -07:00
scsi
sh Move bits/atomic.h to atomic-machine.h (bug 14912). 2015-09-11 20:00:19 +00:00
sparc Restore sparc64 implementation of semctl 2015-09-17 16:19:08 +02:00
sys Update headers for Linux 4.0, 4.1 definitions. 2015-06-29 14:38:46 +00:00
tile tile: Fix BZ #18508 (makecontext yield infinite backtrace) 2015-07-21 12:11:55 -04:00
wordsize-64 Remove unused definition of __openat(64)_nocancel 2015-08-11 09:37:38 +02:00
x86 Move x86_64 init-arch.h to sysdeps/x86/init-arch.h 2015-08-20 04:29:23 -07:00
x86_64 Use x86-64 cacheinfo.c and sysconf.c for x86 2015-08-19 04:27:04 -07:00
Implies
Makefile Don't run tst-getpid2 with LD_BIND_NOW=1 2015-08-25 11:37:44 -07:00
Versions
_G_config.h
_exit.c PLT avoidance for _exit in rtld. 2015-07-09 15:25:47 -07:00
a.out.h
accept.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
accept4.c
adjtime.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
aio_misc.h
aio_sigqueue.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
arch-fork.h
bind.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
check-cpuset.h
check_native.c
check_pf.c Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912). 2015-09-08 21:11:03 +00:00
clock.c
clock_getcpuclockid.c
clock_getres.c
clock_gettime.c
clock_nanosleep.c
clock_settime.c
cmsg_nxthdr.c
configure
configure.ac
connect.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
createthread.c
default-sched.h
device-nrs.h
dl-brk.c
dl-execstack.c
dl-fxstatat64.c
dl-getcwd.c
dl-librecon.h
dl-openat64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
dl-opendir.c
dl-origin.c
dl-osinfo.h
dl-sbrk.c
dl-sysdep.c
dl-sysdep.h
dl-vdso.c
dl-vdso.h
dl-writev.h
epoll_pwait.c
errqueue.h
eventfd.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
eventfd_read.c
eventfd_write.c
exit-thread.h
faccessat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fallocate.c
fallocate64.c
fatal-prepare.h Use __pthread_setcancelstate in libc.a 2015-09-17 16:38:54 -07:00
fchmodat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fcntl.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fd_to_filename.h
fexecve.c
fips-private.h
fpathconf.c
fstatfs64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fstatvfs.c
fstatvfs64.c
ftime.c
ftruncate64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
futex-internal.h Add and use new glibc-internal futex API. 2015-07-10 13:47:09 +02:00
futimens.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
futimes.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
futimesat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fxstat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fxstat64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fxstatat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
fxstatat64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
gai_sigqueue.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
getclktck.c
getcwd.c
getdents.c
getdents64.c
getdirentries.c
getdirentries64.c
getdtsz.c
gethostid.c
getipv4sourcefilter.c
getloadavg.c
getlogin.c
getlogin_r.c
getpagesize.c
getpeername.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
getpid.c
getpriority.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
getpt.c
getrlimit64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
getsockname.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
getsockopt.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
getsourcefilter.c
getsysstats.c linux/getsysstats.c: use sysinfo() instead of parsing /proc/meminfo 2015-09-12 21:09:59 -04:00
gettimeofday.c
grantpt.c
if_index.c Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912). 2015-09-08 21:11:03 +00:00
ifaddrs.c
ifreq.c
internal_statvfs.c
internal_statvfs64.c
ipc_priv.h
kernel-features.h Remove __ASSUME_IPC64 2015-08-24 10:53:49 +02:00
kernel-posix-cpu-timers.h
kernel-posix-timers.h
kernel_sigaction.h
kernel_stat.h
kernel_termios.h
ldd-rewrite.sed
lddlibc4.c
ldsodefs.h
libc_fatal.c
linux_fsinfo.h
listen.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
llseek.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
local-setxid.h
lowlevellock-futex.h
lseek64.c
lutimes.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
lxstat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
lxstat64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
makedev.c
malloc-sysdep.h
mmap64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
mq_close.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
mq_getattr.c
mq_notify.c Fix mq_notify socket, recv namespace (bug 18546). 2015-06-17 20:20:08 +00:00
mq_open.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
mq_receive.c Fix mq_receive, mq_send mq_timed* namespace (bug 18545). 2015-06-17 20:19:04 +00:00
mq_send.c Fix mq_receive, mq_send mq_timed* namespace (bug 18545). 2015-06-17 20:19:04 +00:00
mq_unlink.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
msgctl.c Remove __ASSUME_IPC64 2015-08-24 10:53:49 +02:00
msgget.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
msgrcv.c
msgsnd.c
netlinkaccess.h
nice.c
not-cancel.h
nptl-signals.h
nscd_setup_thread.c
ntp_gettime.c
ntp_gettimex.c
open64.c
openat.c Remove unused definition of __openat(64)_nocancel 2015-08-11 09:37:38 +02:00
openat64.c
opendir.c
opensock.c
pathconf.c
pathconf.h
paths.h
posix_fadvise.c
posix_fadvise64.c
posix_fallocate.c
posix_fallocate64.c
posix_madvise.c
ppoll.c
pread.c
pread64.c
preadv.c
preadv64.c
prlimit.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
prof-freq.c
profil.c
pselect.c
pt-raise.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
pthread-pids.h
pthread_getaffinity.c
pthread_getcpuclockid.c
pthread_getname.c
pthread_kill.c
pthread_setaffinity.c
pthread_setname.c
pthread_sigmask.c
pthread_sigqueue.c
ptrace.c
ptsname.c
pwrite.c
pwrite64.c
pwritev.c
pwritev64.c
raise.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
readahead.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
readdir64.c
readdir64_r.c
readonly-area.c
reboot.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
recv.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
recvfrom.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
recvmmsg.c
recvmsg.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
remove.c
sa_len.c
safe-fatal.h
sched_getaffinity.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
sched_getcpu.c
sched_setaffinity.c
segfault.c
semctl.c Remove extra va_start/va_end calls (bug 17244) 2015-09-16 14:51:28 +02:00
semget.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
semop.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
semtimedop.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
send.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
sendmmsg.c
sendmsg.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
sendto.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
setegid.c
seteuid.c
setgid.c
setgroups.c
sethostid.c
setipv4sourcefilter.c
setregid.c
setresgid.c
setresuid.c
setreuid.c
setrlimit64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
setsockopt.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
setsourcefilter.c
setuid.c
shlib-versions
shm-directory.c Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912). 2015-09-08 21:11:03 +00:00
shmat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
shmctl.c Remove __ASSUME_IPC64 2015-08-24 10:53:49 +02:00
shmdt.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
shmget.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
shutdown.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
sigaction.c
siglist.h
signal.c
signalfd.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
sigpending.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
sigprocmask.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
sigqueue.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
sigreturn.c
sigset-cvt-mask.h
sigstack.c
sigsuspend.c
sigtimedwait.c
sigwait.c
sigwaitinfo.c
sizes.h
sleep.c
socket.c Call direct system calls for socket operations 2015-08-25 13:45:56 -03:00
socketcall.h
socketpair.c powerpc: Fix compiler warning in some syscalls. 2015-09-04 15:19:30 -03:00
speed.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
statfs64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
statvfs.c
statvfs64.c
sync_file_range.c
syscalls.list linux/getsysstats.c: use sysinfo() instead of parsing /proc/meminfo 2015-09-12 21:09:59 -04:00
sysconf.c
sysctl.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
sysctl.mk
sysdep-vdso.h
syslog.c
system.c Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912). 2015-09-08 21:11:03 +00:00
tcdrain.c
tcflow.c
tcflush.c
tcgetattr.c
tcgetpgrp.c
tcsendbrk.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
tcsetattr.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
tcsetpgrp.c
termio.h
time.c
timer_create.c
timer_delete.c
timer_getoverr.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
timer_gettime.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
timer_routines.c
timer_settime.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
times.c
timespec_get.c
truncate64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
tst-align-clone.c
tst-clone.c
tst-fanotify.c
tst-getcpu.c Print more information in tst-getcpu failure case. 2015-06-24 13:56:46 -07:00
tst-getpid1.c
tst-getpid2.c
tst-setgetname.c
ttyname.c
ttyname_r.c
ualarm.c
umount.S
umount2.S
unlockpt.c
updwtmp.c
ustat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
utimensat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
utimes.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
utmp_file.c
vfork.c
wait.c
wait3.c
waitid.c
waitpid.c
xmknod.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
xmknodat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
xstat.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
xstat64.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
xstatconv.c Revert "Add INLINE_SYSCALL_RETURN/INLINE_SYSCALL_ERROR_RETURN" 2015-08-21 09:57:15 -07:00
xstatconv.h Mark __xstatXX_conv as hidden 2015-08-19 04:41:06 -07:00