freebsd-dev/sys/nfs
peter 3a6e7a5b69 Dramatically improve the **lame** nfs_hash(). This is based on the
Fowler / Noll / Vo Hash (http://www.isthe.com/chongo/tech/comp/fnv/).

This improves hash coverage a *massive* amount.  We were seeing one
set of machines that were using 0.84% of their 131072 entry nfsnode
hash buckets with maximum chain lengths of up to ~500 entries.  The
machine was spending nearly 100% of its time in 'system'.
A test with this has pushed the coverage from a few perCent up to 91%
utilization with a max chain length of 11.

Submitted by:  David Filo
2001-03-17 05:43:01 +00:00
..
bootp_subr.c Enable use of DHCP extensions. 2001-02-02 02:35:40 +00:00
krpc_subr.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
krpc.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfs_bio.c Grab the process lock while calling psignal and before calling psignal. 2001-03-07 03:37:06 +00:00
nfs_common.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_common.h * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_node.c Dramatically improve the **lame** nfs_hash(). This is based on the 2001-03-17 05:43:01 +00:00
nfs_nqlease.c Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
nfs_serv.c Preceed/preceeding are not english words. Use precede and preceding. 2001-02-18 10:43:53 +00:00
nfs_socket.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_srvcache.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_subs.c * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs_syscalls.c Switch to using a struct xucred instead of a struct xucred when not 2001-02-18 13:30:20 +00:00
nfs_vfsops.c Reviewed by: jlemon 2001-03-01 21:00:17 +00:00
nfs_vnops.c Fix lockup for loopback NFS mounts. The pipelined I/O limitations could be 2001-02-28 04:13:11 +00:00
nfs.h Switch to using a struct xucred instead of a struct xucred when not 2001-02-18 13:30:20 +00:00
nfsdiskless.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfsm_subs.h * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfsmount.h In preparation for deprecating CIRCLEQ macros in favor of TAILQ 2000-11-14 08:00:39 +00:00
nfsnode.h In preparation for deprecating CIRCLEQ macros in favor of TAILQ 2000-11-14 08:00:39 +00:00
nfsproto.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfsrtt.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nfsrvcache.h Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
nfsv2.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
nqnfs.h In preparation for deprecating CIRCLEQ macros in favor of TAILQ 2000-11-14 08:00:39 +00:00
rpcv2.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
xdr_subs.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00