From owner-cvs-all Thu Sep 16 22:58: 1 1999 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id CCDED14F90; Thu, 16 Sep 1999 22:57:58 -0700 (PDT) (envelope-from dillon@FreeBSD.org) Received: (from dillon@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id WAA54733; Thu, 16 Sep 1999 22:57:58 -0700 (PDT) (envelope-from dillon@FreeBSD.org) Message-Id: <199909170557.WAA54733@freefall.freebsd.org> From: Matt Dillon Date: Thu, 16 Sep 1999 22:57:58 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/nfs nfs.h nfs_bio.c nfs_serv.c nfs_vnops.c Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk dillon 1999/09/16 22:57:57 PDT Modified files: sys/nfs nfs.h nfs_bio.c nfs_serv.c nfs_vnops.c Log: Asynchronized client-side nfs_commit. NFS commit operations were previously issued synchronously even if async daemons (nfsiod's) were available. The commit has been moved from the strategy code to the doio code in order to asynchronize it. Removed use of lastr in preparation for removal of vnode->v_lastr. It has been replaced with seqcount, which is already supported by the system and, in fact, gives us a better heuristic for sequential detection then lastr ever did. Made major performance improvements to the server side commit. The server previously fsync'd the entire file for each commit rpc. The server now bawrite()s only those buffers related to the offset/size specified in the commit rpc. Note that we do not commit the meta-data yet. This works still needs to be done. Note that a further optimization can be done (and has not yet been done) on the client: we can merge multiple potential commit rpc's into a single rpc with a greater file offset/size range and greatly reduce rpc traffic. Reviewed by: Alan Cox , David Greenman Revision Changes Path 1.49 +3 -1 src/sys/nfs/nfs.h 1.78 +34 -4 src/sys/nfs/nfs_bio.c 1.85 +73 -4 src/sys/nfs/nfs_serv.c 1.141 +15 -12 src/sys/nfs/nfs_vnops.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message