aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux
AgeCommit message (Collapse)Author
2014-05-25aarch64: Consolidate NPTL/non versions of vforkrth/aa-optRichard Henderson
At the same time, incorporate the 0 -> 0x80000000 mapping of the pid expected by raise.c.
2014-05-25aarch64: Consolidate NPTL/non versions of cloneRichard Henderson
At the same time, rely on non-clobbered registers across syscall so that we eliminate the stack frame that we previously ignored in the unwind info.
2014-05-25aarch64: Rely on syscalls preserving registersRichard Henderson
In several cases we've had asm routines rely on syscalls not clobbering call-clobbered registers, and that's now deemed ABI. So take advantage of this in the INLINE_SYSCALL path as well. Shrinks libc.so by about 1k.
2014-05-25aarch64: Use tpidr_el0 rather than __errno_location in librtRichard Henderson
2014-05-25aarch64: Use tpidr_el0 rather than __read_tp in librtRichard Henderson
2014-05-25aarch64: Improve syscall-cancel stack frameRichard Henderson
One push instead of N; use stp/ldp to halve the insns.
2014-05-25aarch64: Pass regno parameter to SINGLE_THREAD_PRichard Henderson
Use cbz instead of cmp+b.eq.
2014-05-25aarch64: Share code in syscall-cancel.hRichard Henderson
Fold nocancel and error handling paths.
2014-05-25aarch64: Tabify sysdep-cancel.hRichard Henderson
2014-05-25arm,aarch64: Remove SINGLE_THREAD_P_PICRichard Henderson
This macro was removed by 2005-11-16 Daniel Jacobowitz <dan@codesourcery.com> but not applied to the (still separate) eabi port so necro'd when the eabi port superceded the old abi. It was thence copied into the new AArch64 port.
2014-05-25aarch64: Tidy syscall error checkRichard Henderson
Move the error branch from the PSEUDO_RET macro to the PSEUDO macro. This is in line with other architectures, and will enable further improvments.
2014-05-25aarch64: Remove DOARGS/UNDOARGS macrosRichard Henderson
While they do something for AArch32, they're useless for AArch64.
2014-05-25aarch64: Fix DO_CALL block commentRichard Henderson
2014-05-25alpha: Do non-default symbols in pt-vfork.SRichard Henderson
2014-05-23alpha: Move remaining files out of sysdeps/unix/sysv/linux/alpha/nptl/Richard Henderson
2014-05-23alpha: Consolidate NPTL/non versions of vforkRichard Henderson
2014-05-23alpha: Merge standard and nptl clone.SRichard Henderson
2014-05-23alpha: Remove nptl/fork.cRichard Henderson
The merge at ab21431318d99c94e644606dee1e6a4545d98007 failed to properly remove the file.
2014-05-21AArch64: Convert fork.c to arch-fork.hRoland McGrath
2014-05-21aarch64: Merge __local_multiple_threads offset with memory referenceRichard Henderson
This also highlights that we'd been loading 64-bits instead of the proper 32-bits. Caught by the linker as a relocation error, since the variable happened to be unaligned for 64-bits.
2014-05-21aarch64: Merge rtld_errno offset with memory referenceRichard Henderson
2014-05-20Fix ARM build with GCC trunk.Joseph Myers
sysdeps/unix/sysv/linux/arm/unwind-resume.c and sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c have static variables that are written in C code but only read from toplevel asms. Current GCC trunk now optimizes away such apparently write-only static variables, so causing a build failure. This patch marks those variables with __attribute_used__ to avoid that optimization. Tested that this fixes the build for ARM. * sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c (libgcc_s_resume): Use __attribute_used__. * sysdeps/unix/sysv/linux/arm/unwind-resume.c (libgcc_s_resume): Likewise.
2014-05-20alpha: fix sa_flags type (BZ 16967)Richard Henderson
2014-05-20alpha: Remove bits/siginfo.h (BZ 16966)Richard Henderson
Using the default header instead. This matches the kernel, which also uses the generic header. Fixes the sys/wait.h conform issue, where si_band had the wrong type.
2014-05-20AArch64: Fix handling of nocancel syscall failuresWill Newton
The current code for nocancel syscalls does not do a comparison of the system call return value. This leads to code being generated where the b.cs follows the svc instruction directly without setting the flags on which the branch depends. ChangeLog: 2014-05-20 Will Newton <will.newton@linaro.org> * sysdeps/unix/sysv/linux/aarch64/nptl/sysdep-cancel.h (PSEUDO): Test the return value of the system call in the nocancel case.
2014-05-20AArch64: Remove asm/ptrace.h inclusion in sys/user.h and sys/procfs.hYvan Roux
This patch fixes an issue observed by the Xen project, where including signal.h exposes various PSR_MODE #defines. This is due to the usage in sys/user.h and sys/procfs.h of the struct user_pt_regs and user_fpsimd_state included via asm/ptrace.h. The namespace pollution this inclusion introduce is already partially fixed with some #undef of the PTRACE_* symbols, but other symbols like the PSR_MODE ones are still present, and undefining them is not safe since a user can include ptrace.h before user.h. My proposition is to define the 2 structures we need in user.h and get rid of the asm/ptrace.h inclusion. Build and make check are clean on AArch64. 2014-05-20 Will Newton <will.newton@linaro.org> Yvan Roux <yvan.roux@linaro.org> * sysdeps/unix/sysv/linux/aarch64/sys/user.h: Remove unused #include of asm/ptrace.h. (PTRACE_GET_THREAD_AREA): Remove #undef. (PTRACE_GETHBPREGS): Likewise. (PTRACE_SETHBPREGS): Likewise. (struct user_regs_struct): New structure. (struct user_fpsimd_struct): New structure. * sysdeps/unix/sysv/linux/aarch64/sys/procfs.h: Remove unused #include of asm/ptrace.h and second #include of sys/user.h. (PTRACE_GET_THREAD_AREA): Remove #undef. (PTRACE_GETHBPREGS): Likewise. (PTRACE_SETHBPREGS): Likewise. (ELF_NGREG): Use new struct user_regs_struct. (elf_fpregset_t): Use new struct user_fpsimd_struct.
2014-05-17alpha: Create __syscall_nocancel entry pointsRichard Henderson
2014-05-17Merge remote-tracking branch 'origin/roland/nptl-alpha'Richard Henderson
2014-05-17Fix some termios.h conformtest failures on sparc.David S. Miller
* sysdeps/unix/sysv/linux/sparc/bits/termios.h (PAGEOUT, WRAP): Protect with __USE_GNU. (TIOCSET_TEMPT): Likewise. (TIOCM_LE, TIOCM_DTR, TIOCM_RTS, TIOCM_ST, TIOCM_SR, TIOCM_CTS, TIOCM_CAR, TIOCM_RNG, TIOCM_DSR, TIOCM_CD, TIOCM_RI): Remove as these are already provided in bits/ioctl-types.h
2014-05-16Fix __waitpid_nocancel link error.linaro/masterRoland McGrath
2014-05-16PowerPC: clean BSD Terminal Modes expectation in termios.hAdhemerval Zanella
This patch guard the BSD definition for terminal modes in PowerPC specific header fixing the following conformance failures: FAIL: conform/POSIX/termios.h/conform FAIL: conform/POSIX2008/termios.h/conform FAIL: conform/UNIX98/termios.h/conform
2014-05-16Alpha: Convert fork.c to arch-fork.hRoland McGrath
2014-05-16ARM: Convert fork.c to arch-fork.hRoland McGrath
2014-05-16Add stub arch-fork.h header.Roland McGrath
2014-05-16Split arch-fork.h from fork.hRoland McGrath
2014-05-16SPARC: add prlimit and prlimit64 in <bits/resource.h> (BZ #16943)Aurelien Jarno
prlimit and prlimit64 have been added in the main <bits/resource.h>, but not in the SPARC specific version. Fix that. Note: this is Debian bug#703559, reported by Emilio Pozuelo Monfort <pochu@debian.org>
2014-05-16ptsname_r: don't leak uninitialized memory (BZ #16917)Aurelien Jarno
If the fd refers to a terminal device, but not a pty master, the TIOCGPTN ioctl returns with ENOTTY. This error is not caught, and the possibly undefined buffer passed to ptsname_r is sent directly to the stat64 syscall. Fix this by using a fallback to the old method only if the TIOCGPTN ioctl fails with EINVAL. This also fix the return value in that specific case (it return ENOENT without this patch). Also add tests to the ptsname_r function (and ptsname at the same time). Note: this is Debian bug#741482, reported by Jakub Wilk <jwilk@debian.org>
2014-05-14x86: Move abilist files out of nptl/ subdirectories.Roland McGrath
2014-05-14Move remaining files out of nptl/sysdeps/unix/sysv/linux/x86/.Roland McGrath
2014-05-14Fix mips fork after i386 reorganization.Roland McGrath
2014-05-14Move remaining nptl/sysdeps/unix/sysv/linux/i386/ files.Roland McGrath
2014-05-14Fix powerpc fork after i386 reorganization.Roland McGrath
2014-05-14Update alpha and ia64 timer_*.c files for x86_64 file moves.Roland McGrath
2014-05-14Move remaining nptl/sysdeps/unix/sysv/linux/x86_64/ files.Roland McGrath
2014-05-14x86: Consolidate NPTL fork.Roland McGrath
2014-05-14Consolidate not-cancel.h files.Roland McGrath
2014-05-14Move x86_64 compat-timer.h out of nptl/Roland McGrath
2014-05-14Move x86_64 timer_*.c out of nptl/Roland McGrath
2014-05-14x86: Consolidate NPTL/non versions of cloneRoland McGrath
2014-05-14x86: Consolidate NPTL/non versions of vforkRoland McGrath