Sascha Wildner [Mon, 27 Mar 2006 16:45:44 +0000 (16:45 +0000)]
Remove trailing whitespace.
Matthew Dillon [Mon, 27 Mar 2006 16:19:00 +0000 (16:19 +0000)]
Remove NQNFS support. The mechanisms are too crude to co-exist with
upcoming cache coherency management work and the original implementation
hacked up the NFS code pretty severely.
Move nqnfs_clientd() out of nfs_nqlease.c to a new file, nfs_kerb.c,
and rename it nfs_clientd().
Joerg Sonnenberger [Mon, 27 Mar 2006 09:02:07 +0000 (09:02 +0000)]
Be more jail friendly:
- export jail id to userland, since sysctl users can't follow the prison
pointer in ucred. this is backward-compatible in the sense that an old
kernel does export "0" for all processes.
- teach ps(1) "jail" as formating keyword, fix a separate issue with
lastcpu being incorrectly sorting and using the wrong formator
- teach killall(8) a new -j option, to select processes in a jail.
make it skip the inner matching loop (for commands), if no argument
is left to process
"I want an easy way to reboot a jail" -- drhodus@
That's the base, let's see who implements the rest.
MFC: 2006/04/03
Sascha Wildner [Mon, 27 Mar 2006 07:36:39 +0000 (07:36 +0000)]
Remove redundant .Pp.
Sascha Wildner [Mon, 27 Mar 2006 07:35:45 +0000 (07:35 +0000)]
Move .Pp outside of display.
Matthew Dillon [Mon, 27 Mar 2006 01:54:18 +0000 (01:54 +0000)]
Change *_pager_allocate() to take off_t instead of vm_ooffset_t. The
actual underlying type (a 64 bit signed integer) is the same. Recent and
upcoming work is standardizing on off_t.
Move object->un_pager.vnp.vnp_size to vnode->v_filesize. As before, the
field is still only valid when a VM object is associated with the vnode.
Sascha Wildner [Sun, 26 Mar 2006 22:56:58 +0000 (22:56 +0000)]
Remove redundant .Pp macros right before .El, .Sh and .Ss.
Sascha Wildner [Sun, 26 Mar 2006 07:56:54 +0000 (07:56 +0000)]
struct buf's b_bcount field has been changed from long to int. Adjust
printf() formats accordingly to silence compiler warnings.
Matthew Dillon [Sat, 25 Mar 2006 21:46:38 +0000 (21:46 +0000)]
Clean up the extended lookup features in the red-black tree code.
Sascha Wildner [Sat, 25 Mar 2006 21:31:21 +0000 (21:31 +0000)]
Remove unused variable.
Sascha Wildner [Sat, 25 Mar 2006 21:30:41 +0000 (21:30 +0000)]
b_resid and b_bcount are int, so use %d.
Sascha Wildner [Sat, 25 Mar 2006 21:28:07 +0000 (21:28 +0000)]
KTR_VERBOSE's logging was being done outside 'if (ktr_buf[cpu]) {'
but actually didn't make sense there. If ktr_buf is empty, there's
nothing to log and entry is not initialized.
Instead, do an early return when ktr_buf[cpu] is empty.
Matthew Dillon [Sat, 25 Mar 2006 18:55:48 +0000 (18:55 +0000)]
Add the initialization of blockoff back in, the variable is still used.
Reported-by: Sascha Wildner <saw@online.de>
Matthew Dillon [Sat, 25 Mar 2006 18:32:35 +0000 (18:32 +0000)]
Undo the last commit. At the moment we require access to the structure
to be serialized, and a great deal more work is required (not just a
critical section) to make it MP safe. That is why there is an assertion
there instead of a critical section.
Sascha Wildner [Sat, 25 Mar 2006 16:18:24 +0000 (16:18 +0000)]
Properly sort xrefs.
Matthew Dillon [Sat, 25 Mar 2006 07:46:58 +0000 (07:46 +0000)]
Add options to allow the dump offset or system memory size (for the purposes
of dump recovery) to be specified.
Submitted-by: Csaba Henk <csaba.henk@creo.hu>
Matthew Dillon [Sat, 25 Mar 2006 07:44:14 +0000 (07:44 +0000)]
Sanitize status message.
Submitted-by: Csaba Henk <csaba.henk@creo.hu>
Sepherosa Ziehau [Sat, 25 Mar 2006 06:54:22 +0000 (06:54 +0000)]
regen
Sepherosa Ziehau [Sat, 25 Mar 2006 06:52:44 +0000 (06:52 +0000)]
- Change original TI's product ACX100 to ACX100A
- Add device id of some TI WiFi chips
Matthew Dillon [Sat, 25 Mar 2006 05:47:14 +0000 (05:47 +0000)]
Sync fstat up to the changes made in msdosfsmount.h.
Submitted-by: Sascha Wildner <saw@online.de>
Sepherosa Ziehau [Sat, 25 Mar 2006 04:14:05 +0000 (04:14 +0000)]
- Fix following bugs:
o "use after free" in wi_pccard_probe()
o attaching will continue even if firmware loading fails
- Remove trailing space
Obtained-from: FreeBSD
Submitted-by: Andrew Atrens <atrens@nortel.com>
Adrian Michael Nida <nida@musc.edu>
Sascha Wildner [Sat, 25 Mar 2006 03:05:03 +0000 (03:05 +0000)]
mdoc nit
Matthew Dillon [Fri, 24 Mar 2006 22:39:22 +0000 (22:39 +0000)]
Fix numerous translation problems in msdosfs, related to the recent BUF/BIO
work. The source code was using 'bn' and 'cn' and 'lbn' interchangeability
to mean any one of device block number, logical cluster number, or disk
cluster number (which is relative to some weird offset), and sometimes
overloaded the same variable name with different types of block numbers.
This resulted in a number of errors when the code was initially translated
to 64 bit offsets.
Reported-by: David Rhodus
Joerg Sonnenberger [Fri, 24 Mar 2006 20:19:32 +0000 (20:19 +0000)]
Apply post-install correction of +CONTEXT files. nrelease now also
needs pkg_admin.
Matthew Dillon [Fri, 24 Mar 2006 19:08:52 +0000 (19:08 +0000)]
Don't just assume that the directory offset supplied by the user is
correct. Validate the NFS directory entry for the offset supplied
before using its fields.
Reported-by: David Rhodus <drhodus@leaf.dragonflybsd.org>
Matthew Dillon [Fri, 24 Mar 2006 18:35:34 +0000 (18:35 +0000)]
Major BUF/BIO work commit. Make I/O BIO-centric and specify the disk or
file location with a 64 bit offset instead of a 32 bit block number.
* All I/O is now BIO-centric instead of BUF-centric.
* File/Disk addresses universally use a 64 bit bio_offset now. bio_blkno
no longer exists.
* Stackable BIO's hold disk offset translations. Translations are no longer
overloaded onto a single structure (BUF or BIO).
* bio_offset == NOOFFSET is now universally used to indicate that a
translation has not been made. The old (blkno == lblkno) junk has all
been removed.
* There is no longer a distinction between logical I/O and physical I/O.
* All driver BUFQs have been converted to BIOQs.
* BMAP, FREEBLKS, getblk, bread, breadn, bwrite, inmem, cluster_*,
and findblk all now take and/or return 64 bit byte offsets instead
of block numbers. Note that BMAP now returns a byte range for the before
and after variables.
Matthew Dillon [Fri, 24 Mar 2006 18:30:33 +0000 (18:30 +0000)]
Add missing commit for the VM load heuristic and page allocation rate
limit code. The rate limiting code was not being called.
Matthew Dillon [Fri, 24 Mar 2006 18:07:56 +0000 (18:07 +0000)]
Bump 1.5.2 for the preview tag, synchronized to just before the
buf/bio conversion to 64 bit offsets.
YONETANI Tomokazu [Fri, 24 Mar 2006 07:57:30 +0000 (07:57 +0000)]
another forced commit from cvs-1.12.13 client to test log_accum.pl script
YONETANI Tomokazu [Fri, 24 Mar 2006 07:52:48 +0000 (07:52 +0000)]
forced commit to test new log_accum.pl script
Matthew Dillon [Fri, 24 Mar 2006 06:45:04 +0000 (06:45 +0000)]
Backout the rest of 1.29. There are a number of issues with the other
system calls too that have to be resolved before we can mark these MPSAFE.
David Rhodus [Thu, 23 Mar 2006 20:55:07 +0000 (20:55 +0000)]
Hold MP lock for getppid(). As noted by Dillon getppid() is not MP safe.
This need sthe MP lock for cases such as a parent dying and becoming
inherited by init.
David Rhodus [Thu, 23 Mar 2006 20:48:09 +0000 (20:48 +0000)]
Merge from FreeBSD.
Multiple interrupt handlers may try to queue an event for a
nested kqueue.
David Rhodus [Thu, 23 Mar 2006 15:21:41 +0000 (15:21 +0000)]
Mark a few more system calls MPSAFE.
getppid()
getegid()
uname()
getrlimit()
David Rhodus [Thu, 23 Mar 2006 14:04:24 +0000 (14:04 +0000)]
Properly copy in userland scheduler name via copyinstr.
Previsouly a call to usched_set() would result in a kernel page fault.
Sepherosa Ziehau [Thu, 23 Mar 2006 13:45:12 +0000 (13:45 +0000)]
Add a new tunable "hw.bge.fake_autoneg", get rid of BGE_FAKE_AUTONEG kernel
option. This lets GENERIC kernel work with some broken "bge(4) + switch
modules" configurations.
By default this tunable is set to 0, if autonegociation breakage happens
for certain switch modules shipped with IBM/Intel blades, set this tunable
to 1.
Thank Devon H. O'Dell <devon.odell at gmail.com> for confirming this is
useful.
Initial-idea-from: hmp
Reminded-by: Devon H. O'Dell <devon.odell at gmail.com>
David Rhodus [Wed, 22 Mar 2006 21:22:39 +0000 (21:22 +0000)]
Correctly identify the user running opiepasswd(1) when the login name
differs from the account name.
Security: FreeBSD-SA-06:12.opie
David Rhodus [Wed, 22 Mar 2006 20:06:34 +0000 (20:06 +0000)]
NetBSD merge.
Coverity CID 1294: Avoid negative variable used as index.
David Rhodus [Wed, 22 Mar 2006 20:06:13 +0000 (20:06 +0000)]
NetBSD merge.
Coverity CID 1230: Remove spurious close().
David Rhodus [Wed, 22 Mar 2006 19:57:32 +0000 (19:57 +0000)]
Add missing code needed for the detection of IPSec packet replays.
Security: FreeBSD-SA-06:11.ipsec
Gregory Neil Shapiro [Wed, 22 Mar 2006 18:25:43 +0000 (18:25 +0000)]
Adjust build infrastructure for sendmail 8.13.6
Gregory Neil Shapiro [Wed, 22 Mar 2006 18:08:03 +0000 (18:08 +0000)]
Slight cleanup on the DragonFly README
Gregory Neil Shapiro [Wed, 22 Mar 2006 17:32:24 +0000 (17:32 +0000)]
Merge from vendor branch SENDMAIL:
Import sendmail 8.13.6
Gregory Neil Shapiro [Wed, 22 Mar 2006 17:32:24 +0000 (17:32 +0000)]
Import sendmail 8.13.6
YONETANI Tomokazu [Wed, 22 Mar 2006 16:54:31 +0000 (16:54 +0000)]
Fix "ls: not found" problem during buildworld. mdate.sh script
that comes with groff distribution relies on ls command, which is
no longer part of the bootstrap-tools. Replace this script with
stat command, which IS part of the bootstrap-tools.
New version slightly differs from the original in how day of month
is formatted when it's less than 10, but that shouldn't be a problem.
Sascha Wildner [Wed, 22 Mar 2006 10:18:47 +0000 (10:18 +0000)]
Plan9 -> Plan 9
Matthew Dillon [Tue, 21 Mar 2006 18:14:43 +0000 (18:14 +0000)]
Make a slight adjustment to the last commit. Change saved_ncp to saved_dvp
to try to better maintain the namecache when the NFS server is forced to
use the ultra-inefficient path resolution code.
Sascha Wildner [Tue, 21 Mar 2006 09:12:20 +0000 (09:12 +0000)]
The xref list is not a sentence.
Sascha Wildner [Tue, 21 Mar 2006 04:24:28 +0000 (04:24 +0000)]
Fix xref order.
Sascha Wildner [Tue, 21 Mar 2006 03:01:49 +0000 (03:01 +0000)]
Fix xref.
Matthew Dillon [Mon, 20 Mar 2006 17:24:20 +0000 (17:24 +0000)]
strnstr() was testing one byte beyond the specified length in certain
cases, which can cause a segfault if the 'big' string is not nul terminated
and abutts unmapped memory space.
This sort of thing can occur when a file is memory mapped and searched
using strnstr().
Matthew Dillon [Sun, 19 Mar 2006 18:03:37 +0000 (18:03 +0000)]
Prevent the driver from reinitializing the card when it's already running.
This is useful when adding multiple interface aliases, because it takes
much less time.
Submitted-by: Michal Belczyk <belczyk@bsd.krakow.pl>
Obtained-From: OpenBSD
Testing-by: Michal Belczyk, Sepherosa Ziehau
Matthew Dillon [Sun, 19 Mar 2006 17:53:54 +0000 (17:53 +0000)]
Fix a serious bug in the olddelta microseconds calculation returned by
by adjtime().
Submitted-by: "Frank W. Josellis" <frank@dynamical-systems.org>
Sascha Wildner [Sun, 19 Mar 2006 17:31:08 +0000 (17:31 +0000)]
Throw out the list of supported devices. All drivers should support
ALTQ. If not, it should into a BUGS section.
Pointed-out-by: joerg
Sascha Wildner [Sun, 19 Mar 2006 13:12:15 +0000 (13:12 +0000)]
Add more drivers that support ALTQ to the list.
David Xu [Sun, 19 Mar 2006 13:07:12 +0000 (13:07 +0000)]
Make thread suspension really work.
Sascha Wildner [Sun, 19 Mar 2006 02:57:38 +0000 (02:57 +0000)]
Bring in the altq.4 man page from FreeBSD.
Minor modifications I have done:
* Comment out description of the ALTQ_CDNR option that we don't have.
* Update the list of adapters that support ALTQ. It's likely that
some are still missing from this list.
Note that the altq.9 man page not there yet. It will be added later.
Matthew Dillon [Sat, 18 Mar 2006 20:29:50 +0000 (20:29 +0000)]
Add an option to add a slight time skew to the execution of scripts to
smooth out load bumps, primarily for jailed environments.
Note: Modified from the original: assign the actual jitter to a local
variable instead of unnecessarily overriding one of the global variables.
Submitted-by: Michal Belczyk <belczyk@bsd.krakow.pl>
Obtained-from: FreeBSD
Sascha Wildner [Sat, 18 Mar 2006 19:43:18 +0000 (19:43 +0000)]
Silence warnings about ignored trigraphs.
Matthew Dillon [Sat, 18 Mar 2006 17:15:35 +0000 (17:15 +0000)]
Cleanup the copyright in this file. Easy since its my code.
Requested-by: joerg@britannica.bec.de
Justin C. Sherrill [Fri, 17 Mar 2006 03:16:51 +0000 (03:16 +0000)]
This commit sets new users to see the DragonFly-tips fortunes instead
of the FreeBSD versions.
Work performed by: "Trevor Kendall" <trevorjk@gmail.com>
Justin C. Sherrill [Fri, 17 Mar 2006 03:15:16 +0000 (03:15 +0000)]
Create DragonFly fortune files, based on either the FreeBSD fortune files
or brand new, in the case of -funny.
FreeBSD has been replaced with DragonFly BSD in the fortune file. If this
would change a quote that was directly attributed to someone, that quote
has been replaced. I haven't been able to raise any quote authors for
permission to change what they said, so it's erring on the side of caution.
Work performed by: "Trevor Kendall" <trevorjk@gmail.com>
Minor cleanup by: me
Sascha Wildner [Thu, 16 Mar 2006 18:32:12 +0000 (18:32 +0000)]
* Kill hard sentence breaks.
* Replace documentation of building ports by some pointers to pkgsrc
documentation. Remove obsolete references to /usr/ports/Mk.
* Add myself to the authors list.
Sascha Wildner [Thu, 16 Mar 2006 15:06:05 +0000 (15:06 +0000)]
Fix implicit declaration warnings.
Matthew Dillon [Wed, 15 Mar 2006 07:58:37 +0000 (07:58 +0000)]
Implement a VM load heuristic. sysctl vm.vm_load will return an indication
of the load on the VM system in the range 0-1000.
Implement a page allocation rate limit in vm_fault which is based on
vm_load, and enabled via vm.vm_load_enable (default on). As the system
becomes more and more memory bound, those processes whos page faults
require a page allocation will start to allocate pages in smaller bursts
and with greater and greater enforced delays, up to 1/10 of a second.
Implement vm.vm_load_debug (for kernels with INVARIANTS), which outputs
the burst calculations to the console when enabled.
Increase the minimum guarenteed run time without swapping from 2 to 15
seconds.
Matthew Dillon [Wed, 15 Mar 2006 04:04:54 +0000 (04:04 +0000)]
cache_fromdvp() uses a recursive algorithm to resolve disconnected
directories in the namecache. A recursion must occur until the parent
directory is found to have a namecache record. This is used only by
the NFS server.
Fix a kernel stack underflow when large directory depths are encountered
by reverting to a much less efficient (but non recursive) algorithm. This
case is hit only very rarely, mainly when filesystem testing programs are
employed. It typically takes directories several hundred or several
thousand deep (depending on system memory) to trigger the condition.
Reported-by: Stefan Krueger
Sascha Wildner [Mon, 13 Mar 2006 14:36:46 +0000 (14:36 +0000)]
Silence warnings.
Submitted-by: Alexey Slynko <slynko@tronet.ru>
Matthew Dillon [Sun, 12 Mar 2006 20:44:43 +0000 (20:44 +0000)]
Change KKASSERT() to not embed #exp in the control string. Instead pass
#exp as a separate argument. The control was being misinterpreted when
the asserted expression contained a '%'.
Sascha Wildner [Sun, 12 Mar 2006 14:06:39 +0000 (14:06 +0000)]
Avoid name conflict with built-in function log().
Sascha Wildner [Sun, 12 Mar 2006 13:57:45 +0000 (13:57 +0000)]
Fix typo.
David Xu [Sun, 12 Mar 2006 12:25:57 +0000 (12:25 +0000)]
Oops, disable debuging code.
Sascha Wildner [Sun, 12 Mar 2006 12:20:31 +0000 (12:20 +0000)]
Remove extra token after #else to silence warning.
David Xu [Sun, 12 Mar 2006 12:02:28 +0000 (12:02 +0000)]
Rewrite mutex_init, get rid of compile warnings.
David Xu [Sun, 12 Mar 2006 11:32:21 +0000 (11:32 +0000)]
copy flag DETACHED.
David Xu [Sun, 12 Mar 2006 11:28:06 +0000 (11:28 +0000)]
Close a race for thread detach.
Sascha Wildner [Sun, 12 Mar 2006 02:18:59 +0000 (02:18 +0000)]
Remove dfports.
Matthew Dillon [Fri, 10 Mar 2006 20:31:37 +0000 (20:31 +0000)]
Add missing block number assignment in ATA raid mirroring code. The
assignment got lost due to recent BUF/BIO work.
David Rhodus [Fri, 10 Mar 2006 19:07:53 +0000 (19:07 +0000)]
Fix typeo.
Submitted by: Xin LI <delphij@frontfree.net>
Matthew Dillon [Fri, 10 Mar 2006 17:51:54 +0000 (17:51 +0000)]
cluster_read() was very dangerously issuing a blind BMAP for a buffer
cache block that was not yet locked, then locking the block and
unconditionally setting its block number translation to the results.
Due to the potential blocking that can occur inbetween these two operations,
it is possible (but not proven) that this can result in a buffer with a
stale translation. If that buffer is later dirtied and written to disk,
the filesystem can become corrupt.
Change the code to getblk() the block prior to attempting to BMAP it, and
make the fbp argument to cluster_rbuild() mandatory.
Sascha Wildner [Fri, 10 Mar 2006 11:00:39 +0000 (11:00 +0000)]
Oops, it's /usr/release, not src/release.
Sascha Wildner [Fri, 10 Mar 2006 10:42:41 +0000 (10:42 +0000)]
Remove the old release infrastructure documentation inherited from
FreeBSD and replace it with some information about our nrelease
framework.
There's probably more to document here but this should be enough to
get people going.
Simon Schubert [Thu, 9 Mar 2006 22:16:40 +0000 (22:16 +0000)]
Rename ${ENV} to ${ENVCMD} to prevent bad interference with some shells.
Reported-by: PinkFluid on IRC
David Xu [Thu, 9 Mar 2006 08:32:42 +0000 (08:32 +0000)]
If we got a SIGKILL signal in kern_sigtimedwait, call sigexit to
kill the process.
Sascha Wildner [Wed, 8 Mar 2006 23:09:30 +0000 (23:09 +0000)]
Document the .Dx macro.
Submitted-by: Francis Gudin <fgudin@nerim.net>
Matthew Dillon [Wed, 8 Mar 2006 17:14:11 +0000 (17:14 +0000)]
Struct buf's cannot simply be bcopy'd any more due to linkages in the
BIOs. The CCD code was also zeroing its custom bufs after initializing
them. This fixes the bugs and cleans it up a bit.
Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
Sascha Wildner [Wed, 8 Mar 2006 12:37:47 +0000 (12:37 +0000)]
Add CAVEATS section documenting some possible pitfalls.
Sascha Wildner [Wed, 8 Mar 2006 09:53:30 +0000 (09:53 +0000)]
* Only use two digits for DragonFly version numbers referenced from the
man pages.
* Adjust mdoc.local accordingly.[1]
[1]Submitted-by: Francis Gudin <fgudin@nerim.net>
Jeremy C. Reed [Wed, 8 Mar 2006 04:54:05 +0000 (04:54 +0000)]
Only define atop for _KERNEL or _KERNEL_STRUCTURES.
Noticed because third-party userland code (csup) also tried to use
its own atop.
I tested with a buildworld and buildkernel on i386.
Okayed by M. Dillon via kernel mailing list.
(I didn't put this condition around ptoa because it is used in
usr.bin/gcore/gcore.c.)
Matthew Dillon [Tue, 7 Mar 2006 20:03:54 +0000 (20:03 +0000)]
Remove two incorrect serializer calls in the NDIS code.
Reported-by: David Rhodus <drhodus@leaf.dragonflybsd.org>
Simon Schubert [Tue, 7 Mar 2006 15:48:11 +0000 (15:48 +0000)]
Switch to building a libgdb and both gdb and kgdb.
Gdb -k doesn't work anymore and was replaced by kgdb, which was imported in
large parts from FreeBSD.
Add a kernel variable indicating with thread is dumping.
Sascha Wildner [Mon, 6 Mar 2006 03:21:26 +0000 (03:21 +0000)]
Add missing argument.
Sascha Wildner [Mon, 6 Mar 2006 03:10:51 +0000 (03:10 +0000)]
Don't modify p twice betweeen sequence points.
Sascha Wildner [Mon, 6 Mar 2006 02:54:12 +0000 (02:54 +0000)]
Fix typos:
_ISO_C_VISIBLE -> __ISO_C_VISIBLE
_POSIX_VISIBLE -> __POSIX_VISIBLE
Matthew Dillon [Sun, 5 Mar 2006 18:44:14 +0000 (18:44 +0000)]
Roll 1.5.1 for the slip tag
Matthew Dillon [Sun, 5 Mar 2006 18:38:39 +0000 (18:38 +0000)]
Replace the global buffer cache hash table with a per-vnode red-black tree.
Add a B_HASHED b_flags bit as a sanity check. Remove the invalhash junk
and replace with assertions in several cases where the buffer must already
not be hashed. Get rid of incore() and gbincore() and replace with a new
function called findblk().
Merge the new RB management with bgetvp(), the two are now fully integrated.
Previous work has turned reassignbuf() into a mostly degenerate call, simplify
its arguments and functionality to match. Remove an unnecessary reassignbuf()
call from the NFS code. Get rid of pbreassignbuf().
Adjust the code in several places where it was assumed that calling
BUF_LOCK() with LK_SLEEPFAIL after previously failing with LK_NOWAIT
would always fail. This code was used to sleep before a retry. Instead,
if the second lock unexpectedly succeeds, simply issue an unlock and retry
anyway.
Testing-by: Stefan Krueger <skrueger@meinberlikomm.de>
Matthew Dillon [Sat, 4 Mar 2006 17:39:08 +0000 (17:39 +0000)]
Unlock vnodes prior to issuing VOP_NREMOVE to accomodate filesystem
drivers which do not allow recursive exclusive locks (msdos).
Reported-by: Sascha Wildner <saw@online.de>
Matthew Dillon [Fri, 3 Mar 2006 20:25:46 +0000 (20:25 +0000)]
Add additional red-black tree functions for fast numeric field lookups.
Unlike RB_FIND, these functions simply take the appropriate numeric data
type as the search argument rather then an entire dummy structure, and
directly test the numeric data type rather then make a callback.
Matthew Dillon [Thu, 2 Mar 2006 20:28:49 +0000 (20:28 +0000)]
vfs_bio_awrite() was unconditionally locking a buffer without checking
for races, potentially resulting in the wrong buffer, an invalid buffer,
or a recently replaced buffer being written out. Change the call semantics
to require a locked buffer to be passed into the function rather then
locking the buffer in the function.
Sascha Wildner [Thu, 2 Mar 2006 19:27:35 +0000 (19:27 +0000)]
.Pq and friends add some unwanted extra whitespace. Use normal
parentheses.
Matthew Dillon [Thu, 2 Mar 2006 19:26:19 +0000 (19:26 +0000)]
buftimespinlock is utterly useless since the spinlock is released
within lockmgr(). The only real problem was with lk_prio, which no longer
exists, so get rid of the spin lock and document the remaining passive
races.