#
305329 |
|
03-Sep-2016 |
kib |
MFC r304928: Do not obliterate errno value in the main thread during ptrace(2) call on x86.
MFC r304931: Follow ABI when calling __error from the ptrace(2) wrapper.
MFC r305012: Rewrite ptrace(2) wrappers in C.
MFC r305022: Restore the requirement of setting errno to zero before calling ptrace(2).
|
#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
302092 |
|
22-Jun-2016 |
brooks |
Replace use of the pipe(2) system call with pipe2(2) with a zero flags value.
This eliminates the need for machine dependant assembly wrappers for pipe(2).
It also make passing an invalid address to pipe(2) return EFAULT rather than triggering a segfault. Document this behavior (which was already true for pipe2(2), but undocumented).
Reviewed by: andrew Approved by: re (gjb) Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D6815
|
#
281714 |
|
18-Apr-2015 |
kib |
The lseek(2), mmap(2), truncate(2), ftruncate(2), pread(2), and pwrite(2) syscalls are wrapped to provide compatibility with pre-7.x kernels which required padding before the off_t parameter. The fcntl(2) contains compatibility code to handle kernels before the struct flock was changed during the 8.x CURRENT development. The shims were reasonable to allow easier revert to the older kernel at that time.
Now, two or three major releases later, shims do not serve any purpose. Such old kernels cannot handle current libc, so revert the compatibility code.
Make padded syscalls support conditional under the COMPAT6 config option. For COMPAT32, the syscalls were under COMPAT6 already.
Remove WITHOUT_SYSCALL_COMPAT build option, which only purpose was to (partially) disable the removed shims.
Reviewed by: jhb, imp (previous versions) Discussed with: peter Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
278870 |
|
16-Feb-2015 |
marius |
Unbreak sparc64 after r276630 by calling __sparc_sigtramp_setup signal trampoline as part of the MD __sys_sigaction again.
Submitted by: kib (initial versions) MFC after: 3 days
|
#
264155 |
|
05-Apr-2014 |
imp |
Convert from WITHOUT_SYSCALL_COMPAT to MK_SYSCALL_COMPAT.
|
#
262722 |
|
04-Mar-2014 |
marcel |
Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP} if not already defined. This allows building libc from outside of lib/libc using a reach-over makefile.
A typical use-case is to build a standard ILP32 version and a COMPAT32 version in a single iteration by building the COMPAT32 version using a reach-over makefile.
Obtained from: Juniper Networks, Inc.
|
#
221869 |
|
14-May-2011 |
attilio |
Disconnect sun4v architecture from the three.
Some files keep the SUN4V tags as a code reference, for the future, if any rewamped sun4v support wants to be added again.
Reviewed by: marius Tested by: sbruno Approved by: re
|
#
184789 |
|
09-Nov-2008 |
ed |
Mark uname(), getdomainname() and setdomainname() with COMPAT_FREEBSD4.
Looking at our source code history, it seems the uname(), getdomainname() and setdomainname() system calls got deprecated somewhere after FreeBSD 1.1, but they have never been phased out properly. Because we don't have a COMPAT_FREEBSD1, just use COMPAT_FREEBSD4.
Also fix the Linuxolator to build without the setdomainname() routine by just making it call userland_sysctl on kern.domainname. Also replace the setdomainname()'s implementation to use this approach, because we're duplicating code with sysctl_domainname().
I wasn't able to keep these three routines working in our COMPAT_FREEBSD32, because that would require yet another keyword for syscalls.master (COMPAT4+NOPROTO). Because this routine is probably unused already, this won't be a problem in practice. If it turns out to be a problem, we'll just restore this functionality.
Reviewed by: rdivacky, kib
|
#
171218 |
|
04-Jul-2007 |
peter |
Classify mmap, lseek, pread, pwrite, truncate, ftruncate as pseudo syscalls, unless WITHOUT_SYSCALL_COMPAT is defined. The default case will have the .c wrappers still. If you define WITHOUT_SYSCALL_COMPAT, the .c wrappers will go away and libc will make direct syscalls.
After 7-stable starts, the direct syscall method will be default.
Approved by: re (kensmith)
|
#
163967 |
|
03-Nov-2006 |
kmacy |
- change ABI for user trap handler for sun4v (eventually will sync sparc64 no hardware set up to test at the moment)
Approved by: scottl (standing in for mentor rwatson)
|
#
118771 |
|
11-Aug-2003 |
bms |
Add the mlockall() and munlockall() system calls. - All those diffs to syscalls.master for each architecture *are* necessary. This needed clarification; the stub code generation for mlockall() was disabled, which would prevent applications from linking to this API (suggested by mux) - Giant has been quoshed. It is no longer held by the code, as the required locking has been pushed down within vm_map.c. - Callers must specify VM_MAP_WIRE_HOLESOK or VM_MAP_WIRE_NOHOLES to express their intention explicitly. - Inspected at the vmstat, top and vm pager sysctl stats level. Paging-in activity is occurring correctly, using a test harness. - The RES size for a process may appear to be greater than its SIZE. This is believed to be due to mappings of the same shared library page being wired twice. Further exploration is needed. - Believed to back out of allocations and locks correctly (tested with WITNESS, MUTEX_PROFILING, INVARIANTS and DIAGNOSTIC).
PR: kern/43426, standards/54223 Reviewed by: jake, alc Approved by: jake (mentor) MFC after: 2 weeks
|
#
102899 |
|
03-Sep-2002 |
jake |
Install the userland signal trampoline when sigaction is first called, instead of on startup. This fixes binary compatibility of dynamically linked binaries from before the signal code move.
Suggested by: wollman (a long time ago)
|
#
97191 |
|
23-May-2002 |
jake |
Generate the normal asm stubs for all sysv system calls. Use these instead of C wrappers for the *sys indirect system calls. The indirect system calls are horribly broken on sparc64.
Submitted by: tmm
|
#
96492 |
|
13-May-2002 |
jake |
Handle alignment fault fixups in libc rather than in the kernel.
|
#
95745 |
|
29-Apr-2002 |
jake |
Add an alternate signal trampoline to libc; add a wrapper for the sigtramp install sysarch, to be called from _start.
This will allow the stack to be mapped non-executable, as required by the sparc v9 abi.
|
#
95587 |
|
27-Apr-2002 |
jake |
Emulate ldq and stq (load/store long double) instructions. GCC has started using these to load long doubles, but they aren't implemented in hardware on (at least) UltraSPARC I and II machines. Emulate popc in the user trap handler as well. Re-arrange slightly to make support functions more accessible.
Reviewed by: tmm
|
#
88795 |
|
01-Jan-2002 |
jake |
Connect user trap code to the build.
|
#
86533 |
|
18-Nov-2001 |
jake |
Remove fork and vfork wrappers. The kernel does the right thing.
|
#
85518 |
|
26-Oct-2001 |
jake |
Minimal libc for sparc64.
Reviewed by: obrien
|