Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
ok millert@ tedu@
|
|
|
|
- don't mix unsigned and u_int across the code
- un'static some funcs
ok art@
|
|
protect expansion of the kn parameter. OK miod@
|
|
inspired by a posting from David Borman and similar changes in net/freebsd
ok mcbride
|
|
|
|
ok millert@
|
|
|
|
ok millert@
|
|
deraadt@ ok
|
|
'fsync failed' panic on amd64. discussed with and ok'd by art@, tedu@
and deraadt@. tested by many (thanks).
|
|
|
|
|
|
it could never always work, and worse, may cause other bugs/crashes.
|
|
sends SIGVTALRM and SIGPROF to the process if they had. There is a big
problem with calling psignal from hardclock on MULTIPROCESSOR machines
though. It means we need to protect all signal state in the process
with a lock because hardclock doesn't obtain KERNEL_LOCK. Trying to
track down all the tentacles of this quickly becomes very messy. What
saves us at the moment is that SCHED_LOCK (which is used to protect
parts of the signal state, but not all) happens to be recursive and
forgives small and big errors. That's about to change.
So instead of trying to hunt down all the locking problems here, just
make hardclock not send signals. Instead hardclock schedules a timeout
that will send the signal later. There are many reasons why this works
just as good as the previous code, all explained in a comment written
in big, friendly letters in kern_clock.
miod@ ok noone else dared to ok this, but noone screamed in agony either.
|
|
|
|
cpus calling hardclock and the statclock emulation. Move some ifdef
__HAVE_TIMECOUNTER code.
|
|
- Less chatty.
|
|
|
|
when match verbose is turend on.
|
|
these into larger ranges wherever possible.
this should speed up NFS writes quite a bit.
ok art@ millert@ pedro@ tedu@
|
|
|
|
- use ltsleep() instead of the unlock + sleep combo
ok art@, inspiration from free/net
|
|
|
|
tedu@ ok
|
|
"put this process to sleep" and "find a process to run" operations.
no functional change. ok art@
|
|
code is all conditionalized on __HAVE_TIMECOUNTER, and not
enabled on any platforms.
adjtime(2) support exists, courtesy of nordin@, sysctl(2) support
and a concept of quality for each time source attached exists.
High quality time sources exists for PIIX4 ACPI timer as well as
some AMD power management chips. This will have to be redone
once we actually add ACPI support (at that time we need to use
the ACPI interfaces to get at these clocks).
ok art@ ken@ miod@ jmc@ and many more
|
|
read path rather than recv. Previously, if an fd was passed via
sendmsg() but was consumed by the receiver via read() the ref count
was incremented and never decremented and so the ref count would
never reach zero even when there was no long any processes holding
the file open (this was especially bad for locked fds).
OK markus@ and art@
|
|
shuffle functions around so that scheduler is all together.
no real functional changes. ok art@ testing miod@
|
|
Also move the whole deadproc infrastructure to kern_exit, it's only used
there.
miod@ ok
|
|
yamt@netbsd
|
|
|
|
signal), don't jump to unlocked_error: and do things that we don't need
to do (including messing up the internal state of the pipe). Just return.
ok niklas@ miod@
|
|
is horrible and doesn't add anything.
Remove it.
XXX - the fdplock macro will need a separate cleanup.
niklas@ markus@ ok
|
|
|
|
biglock. We need to protect them with a mutex.
|
|
|
|
This is the MI (slightly inefficient and not MP safe) implementation.
deraadt@ ok Tested by many. (this and following commits)
|
|
ok millert@, miod@, marius@
|
|
|
|
|
|
|
|
etc to avoid confusion and for consistency with the *35 ones.
Remove *n2o functions that don't belong outside of compat.
|
|
|
|
the msgctl, semctl, and shmctl system calls. This moves the old
versions to COMPAT_35 and adds new ones.
WARNING: While this fixes things like shared memory in the X server
for old (pre-mode_t change) binaries, it will break binaries that
use shared memory built between the time of the mode_t change (Jul
13th) and now. If you rebuild X during that interval you will need
to do it again after updating the rest of userland.
|
|
which also takes two function pointers for copyin/copyout. For the
real syscalls these are just the normal copyin/copyout functions.
For the compat routines, these are funtions that convert between
the new and old foo_ds structs automagically. OK deraadt@
|
|
|