DragonFly commits List (threaded) for 2006-03
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
cvs commit: src/sys/i386/i386 machdep.c src/sys/kern vfs_bio.c vfs_cluster.c vfs_lock.c vfs_subr.c src/sys/sys buf.h vnode.h src/sys/vfs/nfs nfs_bio.c nfs_serv.c nfs_vnops.c src/sys/vfs/ufs ffs_softdep.c ufs_bmap.c
dillon 2006/03/05 10:38:39 PST
DragonFly src repository
Modified files:
sys/i386/i386 machdep.c
sys/kern vfs_bio.c vfs_cluster.c vfs_lock.c
vfs_subr.c
sys/sys buf.h vnode.h
sys/vfs/nfs nfs_bio.c nfs_serv.c nfs_vnops.c
sys/vfs/ufs ffs_softdep.c ufs_bmap.c
Log:
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@xxxxxxxxxxxxxxxx>
Revision Changes Path
1.87 +0 -1 src/sys/i386/i386/machdep.c
1.58 +36 -131 src/sys/kern/vfs_bio.c
1.17 +5 -6 src/sys/kern/vfs_cluster.c
1.10 +1 -0 src/sys/kern/vfs_lock.c
1.70 +61 -61 src/sys/kern/vfs_subr.c
1.24 +8 -9 src/sys/sys/buf.h
1.41 +2 -0 src/sys/sys/vnode.h
1.27 +2 -2 src/sys/vfs/nfs/nfs_bio.c
1.28 +3 -2 src/sys/vfs/nfs/nfs_serv.c
1.49 +8 -20 src/sys/vfs/nfs/nfs_vnops.c
1.35 +4 -1 src/sys/vfs/ufs/ffs_softdep.c
1.8 +1 -1 src/sys/vfs/ufs/ufs_bmap.c
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/machdep.c.diff?r1=1.86&r2=1.87&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_bio.c.diff?r1=1.57&r2=1.58&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_cluster.c.diff?r1=1.16&r2=1.17&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_lock.c.diff?r1=1.9&r2=1.10&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_subr.c.diff?r1=1.69&r2=1.70&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/buf.h.diff?r1=1.23&r2=1.24&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/vnode.h.diff?r1=1.40&r2=1.41&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_bio.c.diff?r1=1.26&r2=1.27&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_serv.c.diff?r1=1.27&r2=1.28&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/nfs/nfs_vnops.c.diff?r1=1.48&r2=1.49&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ffs_softdep.c.diff?r1=1.34&r2=1.35&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/vfs/ufs/ufs_bmap.c.diff?r1=1.7&r2=1.8&f=u
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]