| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
problem pointed out by Martin Natano (natano (at) natano.net)
Also, stop chaining assignments (foo = bar = baz) in vattr_null().
The exact meaning of those depends on the order of the sizes-and-
signednesses of the lvalues, making them fragile: a statement here
mixed *six* types, but managed to get them in a safe order. Delete
a 20+ year old XXX comment that was almost certainly bemoaning a bug
from when they were in an unsafe order.
ok deraadt@ miod@
|
|
|
|
|
|
| |
is no point in keeping an unused level of abstraction.
ok mikeb@, claudio@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
length of the key as argument.
This way every consumer of the radix tree has a chance to explicitly
initialize the shared data structures and no longer rely on another
subsystem to do the initialization.
As a bonus ``dom_maxrtkey'' is no longer used an die.
ART kernels should now be fully usable because pf(4) and IPSEC properly
initialized the radix tree.
ok chris@, reyk@
|
|
|
|
|
|
| |
to never return the internal RNF_ROOT nodes. This removes the checks
in the callee to verify that not an RNF_ROOT node was returned.
OK mpi@
|
|
|
|
|
|
|
| |
portions of msleep and tsleep to give interrupts a chance to run
on other CPUs.
Tweak and OK kettenis
|
|
|
|
|
|
|
| |
have any direct symbols used. Tested for indirect use by compiling
amd64/i386/sparc64 kernels.
ok tedu@ deraadt@
|
|
|
|
|
|
| |
than zero or greater than NGROUPS_MAX
Fixes panic seen by henning@
|
| |
|
|
|
|
| |
marker for which pools are not interrupt safe. ok dlg
|
|
|
|
|
| |
era. fix uvm including c files to include lock.h or atomic.h as necessary.
ok deraadt
|
|
|
|
|
|
| |
objective: vnode.h doesn't include uvm_extern.h anymore.
followup changes: include uvm_extern.h or lock.h where necessary.
ok and help from deraadt
|
| |
|
| |
|
|
|
|
|
|
|
| |
kernel struct vnode defintion, and the only consumer (pstat) still needs
kvm to read much of the required information. no great loss to always use
kvm until there's a better replacement interface.
ok deraadt millert uebayasi
|
| |
|
|
|
|
| |
ok doug tedu
|
|
|
|
|
|
|
|
| |
CIRCLEQ_* is deprecated and not called in the tree. The other queue types
have *_END macros which were added for symmetry with CIRCLEQ_END. They are
defined as NULL. There's no reason to keep the other *_END macro calls.
ok millert@
|
| |
|
|
|
|
| |
after discussions with beck deraadt kettenis.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the disciplines right after vfs_shutdown().
This change is required in order to be able to set `cold' to 1 before
traversing the device (mainbus) tree for DVACT_POWERDOWN when halting
a machine. Yes, this is ugly because sr_shutdown() needs to sleep. But
at least it is obvious and hopefully somebody will be ofended and fix
it.
In order to properly flush the cache of the disks under softraid0,
sr_shutdown() now propagates DVACT_POWERDOWN for this particular subtree
of devices which are not under mainbus. As a side effect sd(4) shutdown
hook should no longer be necessary.
Tested by stsp@ and Jean-Philippe Ouellet.
ok deraadt@, stsp@, jsing@
|
|
|
|
|
| |
don't need to be married.
ok guenther miod beck jsing kettenis
|
|
|
|
|
|
|
|
|
|
| |
use the domain specific tree initialisation method for this since that one
is multipath enabled and assumes that the radix node is part of a struct
rtentry. This code uses a different struct and so the multipath modifies
wrong fields and breaks stuff in mysterious ways.
Since we only support AF_INET here anyway simplify the code and only have
one radix_node_head pointer instead of AF_MAX ones.
Fixes NFS server issues reported by rpe@, OK rpe@, guenther@, sthen@
|
|
|
|
|
|
| |
algorithms to be tested. in the process, drop support for unused B_AGE and
b_synctime options.
previous versions ok beck deraadt
|
|
|
|
|
|
| |
struct xucred becomes the structure for syscalls (mount(2) and nfssvc(2)).
ok deraadt@ beck@
|
| |
|
|
|
|
|
|
|
|
|
| |
use TAILQ_*_SAFE more than might be needed.
Bulk ports build by sthen@ showed nobody sticking their fingers
so deep into the kernel.
Feedback and suggestions from millert@. ok jsing@
|
|
|
|
|
|
|
| |
the namecache. Changing the v_type between cache_enter() and cache_purge()
results in bad things happening.
ok beck@
|
| |
|
|
|
|
| |
and mnt_stat.f_ctime is long long, too
|
|
|
|
| |
tested on vax (gcc3) ok miod@
|
|
|
|
|
|
| |
on Theo's servers - however this was in the context of the buffer flipper
changes and this is now suspect in a continues performance issue with NFS
so back it out for now
|
|
|
|
|
|
| |
to cheat and VOP_BWRITE a buffer, restart the vinvalbuf if we have to wait
for a busy buffer to complete
ok tedu@ guenther@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the special provided when the mount was requested. This may be the same as
the special that was actually used for the mount (e.g. in the case of a
device node) or it may be different (e.g. in the case of a DUID).
Whilst here, change f_ctime to a 64 bit type and remove the pointless
f_spare members.
Compatibility goo courtesy of guenther@
ok krw@ millert@
|
|
|
|
|
|
| |
in MI code; gcc 2.95 does not accept such annotation for function pointer
declarations, only function prototypes.
To be uncommented once gcc 2.95 bites the dust.
|
|
|
|
|
|
| |
function pointer arguments which are {used as,} wrappers around the kernel
printf function.
No functional change.
|
|
|
|
|
|
|
|
|
|
| |
This fixes a problem where we could sleep for kva and then our pointers
would not be valid on the next pass through the loop. We do this
by adding buf_acquire_nomap() - which can be used to busy up the buffer
without changing its mapped or unmapped state. We do not need to have
the buffer mapped to invalidate it, so it is sufficient to acquire it
for that. In the case where we write the buffer, we do map the buffer, and
potentially sleep.
|
|
|
|
|
|
| |
consistent when the effective gid isn't also a supplementary group.
ok beck@
|
|
|
|
| |
ok beck@
|
| |
|
| |
|
| |
|
|
|
|
| |
prompted by tedu@
|
|
|
|
|
|
| |
unrelated, and his alpha is much happier now.
OK deraadt@
|
|
|
|
|
|
|
| |
no binary change
ok deraadt@
|
|
|
|
| |
have been resolved.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
vector setup that has questionable features (that have, as far as I can
tell never been used in practice, atleast not in OpenBSD), remove all
the gunk and favor a simple struct full of function pointers that get
set directly by each of the filesystems.
Removes gobs of ugly code and makes things simpler by a magnitude.
The only downside of this is that we loose the vnoperate feature so
the spec/fifo operations of the filesystems need to be kept in sync
with specfs and fifofs, this is no big deal as the API it self is pretty
static.
Many thanks to armani@ who pulled an earlier version of this diff to
current after c2k10 and Gabriel Kihlman on tech@ for testing.
Liked by many. "come on, find your balls" deraadt@.
|
|
|
|
|
|
| |
commit.
"fix it -- free commit" beck@
|
|
|
|
|
|
|
|
|
| |
buffer cache - we grow them dynamically, but do not attempt to shrink
them if the buffer cache shrinks after growing.
Tested by very many for a long time.
ok oga@ todd@ phessler@ tedu@
|
|
|
|
| |
and remove the function. ok thib
|