Age | Commit message (Collapse) | Author |
|
ok tedu@ kettenis@
|
|
there in NetBSD and FreeBSD trees.
Tested by thib@ who found that it shaved 18min wall clock time of coping a 20G file.
Been in snaps for some time
"looks ok" markus@ "makes sense" blambert@ ok claudio@ thib@
|
|
|
|
remove PNORELOCK flag, as PNORELOCK is used for msleep
ok art@ thib@
|
|
creation of threads which may have caused multile syswq threads to start.
ok dlg
|
|
|
|
they where used to keep "offsets" of arguments too the VOP's
for use by bypass routines, these have been unused now for
quite some time;
Tested on sparc64/amd64 (shaves about 1k of GENERIC).
ok beck@
|
|
machines where the stack grows up. Fixes systrace(1) on hppa.
ok deraadt@
|
|
|
|
|
|
remove pool_cache code. it was barely used, and quite complex. it's
silly to have both a "fast" and "faster" allocation interface. provide
a ctor/dtor interface, and convert the few cache users to use it. no
caching at this time.
use mutexes to protect pools. they should be initialized with pool_setipl
if the pool may be used in an interrupt context, without existing spl
protection.
ok art deraadt thib
|
|
Since mutexes mess around with spl levels, and the sched-lock isn't a
mutex, we need to make sure to fix the IPL when msleep does the locking.
ok art.
|
|
parameter. The mutex is unlocked just before sleep and relocked after
unless P_NORELOCK is in flags, in which case it is left unlocked.
ok art@.
|
|
mfs. OK deraadt@
|
|
|
|
accurate but more expensive nanotime(), the loss of precision shouldn't matter.
Inspired from the other *BSD which did a similar change.
ok tedu@ millert@ henning@ deraadt@
|
|
bad idea to have functions that react unpredictably.
|
|
|
|
|
|
|
|
|
|
syscalls as NOLOCK and MPSAFE. The flags have slightly different semantics:
NOLOCK - the syscall doesn't grab any locks whatsoever.
MPSAFE - the syscall deals with its own locking.
What this means in practice is that NOLOCK syscalls can always be done
without the biglock. The MPSAFE syscalls can be done without the biglock
on CPUs that don't handle interrupts that require biglock (to preserve
lock ordering).
deraadt@ ok
|
|
this reduces kernel size quite a bit. ok claudio
|
|
sys/dev/pci/pciide.c from naddy@
|
|
suggested by otto.
|
|
ten minutes (or if a serial GPS is disconnect and we get no NMEA sentences
at all).
ok otto
|
|
code. At this moment all architectures get the copy of the old code
except i386 which gets a new shiny implementation that doesn't spin
at splhigh (doh!) and doesn't try to grab the biglock when releasing
the biglock (double doh!).
Shaves 10% of system time during kernel compile and might solve a few
bugs as a bonus.
Other architectures coming shortly.
miod@ deraadt@ ok
|
|
|
|
combined, this lets us use crypto before the thread is running
and therefore cryptoraid can attach nice and early.
ok/testing deraadt mbalmer marco
|
|
"previous" device still being there, so if we detach a device, we really
have to start from scratch again (like the comment on this code actually
says we should). Simplifies the code as a bonus.
ok dlg@, deraadt@
|
|
match the comment. OK deraadt@
|
|
|
|
|
|
ok miod@ krw@
|
|
ok deraadt weingart
|
|
so we need to correct the mbuf length using CMSG_LEN() not CMSG_SPACE()
test case was sparc64 sending 2 (or more) descriptors
ok millert thib
|
|
replace an hard coded value with M_WAITOK
ok krw@
|
|
ok miod@ deraadt@ krw@
|
|
normally.
ok deraadt@ tedu@ otto@
|
|
daemon requires splbio when doing dirty buffer queue manipulation. Since
version 1.88 of vfs_bio.c, it was possible to break out of the processing
loop when the cleaner had been running long enough, and this early exit would
mean a future pass through would manipulate the buffer queues not at splbio.
This change corrects this.
ok krw@, deraadt@, tedu@, thib@
|
|
|
|
miod@ ok.
|
|
|
|
- Move the functionality of choosing a process from cpu_switch into
a much simpler function: cpu_switchto. Instead of having the locore
code walk the run queues, let the MI code choose the process we
want to run and only implement the context switching itself in MD
code.
- Let MD context switching run without worrying about spls or locks.
- Instead of having the idle loop implemented with special contexts
in MD code, implement one idle proc for each cpu. make the idle
loop MI with MD hooks.
- Change the proc lists from the old style vax queues to TAILQs.
- Change the sleep queue from vax queues to TAILQs. This makes
wakeup() go from O(n^2) to O(n)
there will be some MD fallout, but it will be fixed shortly.
There's also a few cleanups to be done after this.
deraadt@, kettenis@ ok
|
|
size_t and ssize_t variables.
OK miod and cthulhu.
|
|
mbuf back.
for fixing PR5563 in a few, tested janjaap@stack.nl, ok claudio
|
|
mclpool as an extern, do so explicitly
ok henning@ claudio@
|
|
and a file is written onto the stick. Without these fixes the
machine panics or hangs.
The usb fix calls the callback when the stick is pulled out to free
the associated buffers. Otherwise we have busy buffers for ever
and the automatic unmount will panic.
The change in the scsi layer prevents passing down further dirty
buffers to usb after the stick has been deactivated.
In vfs the automatic unmount has moved from the function vgonel()
to vop_generic_revoke(). Both are called when the sd device's vnode
is removed. In vgonel() the VXLOCK is already held which can cause
a deadlock. So call dounmount() earlier.
ok krw@, I like this marco@, tested by ian@
|
|
help and ok miod@ thib@
|
|
the holes a MMU may have from a given vm_map. This will be automagically
invoked for newly created vmspaces.
On platforms with MMU holes (e.g. sun4, sun4c and vax), this prevents
mmap(2) hints which would end up being in the hole to be accepted as valid,
causing unexpected signals when the process tries to access the hole
(since pmap can not fill the hole anyway).
Unfortunately, the logic mmap() uses to pick a valid address for anonymous
mappings needs work, as it will only try to find an address higher than the
hint, which causes all mmap() with a hint in the hole to fail on vax. This
will be improved later.
|