Age | Commit message (Collapse) | Author |
|
localhost connections.
The plan is to always use the routing table for addresses and routes
resolutions, so there is no future for an option that wants to bypass
it. This option has never been implemented for IPv6 anyway, so let's
just remove the IPv4 bits that you weren't aware of.
Tested a least by lteo@, guenther@ and chrisz@, ok mikeb@, benno@
|
|
struct ucred; struct process then directly links to the ucred
Based on a discussion at c2k10 or so before noting that FreeBSD and
NetBSD did this too.
ok matthew@
|
|
for localhost connections. discussed with deraadt@
|
|
use the routing table there's no future for an option that wants to
bypass it. This option has never been implemented for IPv6 anyway,
so let's just remove the IPv4 bits that you weren't aware of.
Tested by florian@, man pages inputs from jmc@, ok benno@
|
|
Tweak the handling of ktrace EMUL when changing ktracing: only
generate one per process (not one per thread) and pass the correct
proc pointer down to the VFS layer. Permit generating of NAMI and
CSW records inside ktrace(2) itself.
ok deraadt@ millert@
|
|
included there
|
|
find the link-layer address of an interface, use the pointer to
the sockaddr_dl already present in the interface's descriptor.
Tested for regression by pirofti@ with opera.
|
|
Linux-compat clone() syscall when *not* using CLONE_THREAD. pirofti@
confirms Opera runs in compat without this, so out it goes; one less hair
to choke on in kern_exit.c
ok tedu@ pirofti@
|
|
Use intptr_t for such cases.
More casts/types should be improved in this file.
Tested with syscall regression tests from IBM.
|
|
|
|
|
|
make it a list of processes, and change P_NOZOMBIE and P_STOPPED from thread
flags to process flags. Add allprocess list for the code that just wants
to see processes.
ok tedu@
|
|
Pointed out by LLVM.
ok pirofti@
|
|
|
|
|
|
|
|
a.out removal led to linux_sys_uselib being obsoleted.
|
|
Tested with the syscall regression test suite from IBM and Opera.
Requested by deraadt@.
|
|
|
|
binary to change the system time?
ok pirofti@
|
|
|
|
- add Linux versions of struct rusage, timeval, and itimerval and
conversion functions for them
- add Linux versions of getrusage(), gettimeofday(), {set,get}itimer(),
and nanosleep()
- fix various inconsistencies in naming of Linux versions of types
and conversion functions
- add mappings for LINUX_CLOCK_{PROCESS,THREAD}_CPUTIME_ID to the
native versions
Originally written months ago as part of the time_t work; long
memory, prodding, and ok from pirofti@
|
|
|
|
members to 64bit types. Assign new syscall numbers for (almost
all) the syscalls that involve the affected types, including anything
with time_t, timeval, itimerval, timespec, rusage, dirent, stat,
or kevent arguments. Add a d_off member to struct dirent and replace
getdirentries() with getdents(), thus immensely simplifying and
accelerating telldir/seekdir. Build perl with -DBIG_TIME.
Bump the major on every single base library: the compat bits included
here are only good enough to make the transition; the T32 compat
option will be burned as soon as we've reached the new world are
are happy with the snapshots for all architectures.
DANGER: ABI incompatibility. Updating to this kernel requires extra
work or you won't be able to login: install a snapshot instead.
Much assistance in fixing userland issues from deraadt@ and tedu@
and build assistance from todd@ and otto@
|
|
Reviewed by guenther@.
|
|
This is a temporary (ugly) fix, the pool init call should be moved from
linux_elf_probe into a better place.
|
|
|
|
|
|
Bug report from frantisek holop (minusf at obiit.org)
ok pirofiti@
|
|
Substitute atomic_ucas_32 with futex_atomic_ucas_int32 to make it
obvious who's using this api.
Suggested by and okay kettenis@.
|
|
for all the compat layers which are now gone. Linux compat still works
because it always used another method in any case, and nothing looks at
p_os anymore.
ok jsing
|
|
the system .h files
|
|
CAVEATS: Assumes that a new socket can't have any of the
FCNTLFLAGS set on it, which _is_ true, currently... (guenther@)
Okay guenther@, deraadt@.
|
|
This enables the linux_child_return bits that set the TLS base in the
newly forked process.
Before this, processes that had the flag set would get a null pointer and
segfault when trying to access the TLS area.
Chased down and fixed by me. Turned into a proper one line diff by guenther@.
|
|
Doesn't matter if we need to relocate or not.
Makes sense to jasper@
|
|
Okay jasper@
|
|
Sleep on the actual data address and not on the stack address of
the pointer to the data.
Okay jasper@
|
|
Okay jasper@
|
|
using copyin() anyway.
ok pirofti@
|
|
|
|
Nobody calls linux_sys_tkill anymore so code for that is not needed.
If this will become an issue in the future a simple wrapper will fix that.
Okay jasper@.
|
|
|
|
Okay jasper@
|
|
The newer glibc's, when creating a socket, add some higher bit flags to
the type argument that are used for debug, statistics, profiling
whatever. They are not useful and implementation specific.
This is needed for DNS resolving, otherwise the nss library from glibc
will always fail to do the right thing.
Okay jasper@
|
|
|
|
This avoids a potential lost-wakeup as pointed out by guenther@.
Now the futex is locked all through the process and EAGAIN is returned
on failure.
Makes sense to guenther@.
|
|
Okay jasper@.
|
|
|
|
Looks right to jasper@ as well.
|
|
sysctl() to be per-process instead of per-thread. This means the
filedesc table has to really be per-process instead of per-thread,
so make it an error for the linux clone() emulation to try to do
otherwise. This removes pointless duplication in fstat's output.
requested by jsing@ and deraadt@, ok matthew@ deraadt@
|