cvs commit: src/sys/nfsclient nfs.h nfs_socket.c nfs_subs.c
mohans at FreeBSD.org
Fri Oct 12 12:18:46 PDT 2007
mohans 2007-10-12 19:18:46 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_7)
sys/nfsclient nfs.h nfs_socket.c nfs_subs.c nfsmount.h
NFS MP scaling changes.
- Eliminate the hideous nfs_sndlock that serialized NFS/TCP request senders
thru the sndlock.
- Institute a new nfs_connectlock that serializes NFS/TCP reconnects. Add
logic to wait for pending request senders to finish sending before
reconnecting. Dial down the sb_timeo for NFS/TCP sockets to 1 sec.
- Break out the nfs xid manipulation under a new nfs xid lock, rather than
over loading the nfs request lock for this purpose.
- Fix some of the locking in nfs_request.
Many thanks to Kris Kennaway for his help with this and for initiating the
MP scaling analysis and work. Kris also tested this patch thorougly.
Approved by: re@ (Ken Smith)
Revision Changes Path
18.104.22.168 +2 -2 src/sys/nfsclient/nfs.h
22.214.171.124 +123 -71 src/sys/nfsclient/nfs_socket.c
126.96.36.199 +4 -2 src/sys/nfsclient/nfs_subs.c
188.8.131.52 +2 -0 src/sys/nfsclient/nfsmount.h
More information about the cvs-all