NFS client patches for Linux 2.6.6

The following set of patches fix known issues with the 2.6.6 NFS client code, and significantly enhance the support for NFSv4.

linux-2.6.6-01-nfs_odirect.dif:

NFS O_DIRECT: Change the NFS O_DIRECT path so that it no longer calls the generic VFS read and write routines.

This allows all application read requests to pass through to the server, instead of just the ones that appear to be inside the file. this eliminates the requirement to use a GETATTR operation before each read or write to determine where the EOF is. this is a significant performance and scalability win.

It also removes all requirements for holding the inode semaphore during NFS direct reads and writes, as the read and write logic no longer needs atomic access to the size of the file. this also helps client CPU scalability by reducing the serialization of writes against a single file.

linux-2.6.6-02-nfs3_excl.dif:

NFSv3: Patch by Olaf Kirch to fix up an attribute problem with exclusive creates under NFSv3.

linux-2.6.6-03-nfs4_reclaim.dif:

NFSv4: Fix a bug in the open reboot-recovery code.

linux-2.6.6-04-soft.dif:

RPC: Make "major" timeouts be of fixed length "timeo<<retrans" rather than counting the number of retransmissions. The clock starts at the first attempt to send each request.

RPC: Ensure that we "slow start" the RTT estimation after a major timeout has occurred.

linux-2.6.6-05-mount_err.dif:

NFS: Patch by Steve Dickson to improve error reporting when mounting the filesystem.

linux-2.6.6-06-printk_cleanup.dif:

RPCSEC_GSS: this adds some new trace messages and makes existing ones consistent with other trace messages in the RPC client.

linux-2.6.6-07-setclientid.dif:

NFSv4: Prime SETCLIENTID call for the delegation callback info.

linux-2.6.6-08-rpc_workqueue.dif:

RPC: Convert rpciod into a work queue for greater flexibility.

linux-2.6.6-09-rpc_queue_lock.dif:

RPC: Remove the rpc_queue_lock global spinlock. Replace it with per-rpc_queue spinlocks

linux-2.6.6-10-file_ctx.dif:

NFSv2/v3/v4: Place NFS nfs_page shared data into a single structure that hangs off filp->private_data. As a side effect, this also cleans up the NFSv4 private file state info.

linux-2.6.6-11-file_ctx2.dif:

NFSv4: More cleanups of the NFSv4 state.

linux-2.6.6-NFS4_ALL.dif:

All of the above patches rolled into one.

linux-2.6.6-12-delegation1.dif:

NFSv4: Basic code for managing delegation state.

linux-2.6.6-13-delegation2.dif:

NFSv4: Delegation callback server.


Return to main menu

Please address all comments about this page to Trond Myklebust
About Trond
Last modified: Mon Jan 05 14:33:10 EST 2004
[ICO]NameLast modifiedSizeDescription

[PARENTDIR]Parent Directory   -  
[TXT]linux-2.6.6-01-nfs_o..>2004-04-26 22:41 8.1K 
[TXT]linux-2.6.6-02-nfs3_..>2004-04-20 21:34 728  
[TXT]linux-2.6.6-03-nfs4_..>2004-04-20 21:34 626  
[TXT]linux-2.6.6-04-soft.dif2004-04-19 16:02 8.7K 
[TXT]linux-2.6.6-05-mount..>2004-04-21 17:43 1.6K 
[TXT]linux-2.6.6-06-print..>2004-04-19 17:58 19K 
[TXT]linux-2.6.6-07-setcl..>2004-04-12 23:25 5.1K 
[TXT]linux-2.6.6-08-rpc_w..>2004-04-20 04:14 29K 
[TXT]linux-2.6.6-09-rpc_q..>2004-07-02 21:20 8.0K 
[TXT]linux-2.6.6-10-file_..>2004-04-27 20:52 55K 
[TXT]linux-2.6.6-11-file_..>2004-04-05 21:48 5.0K 
[TXT]linux-2.6.6-12-deleg..>2004-04-22 03:57 17K 
[TXT]linux-2.6.6-13-deleg..>2004-05-05 20:58 34K 
[TXT]linux-2.6.6-NFS4_ALL..>2004-04-28 02:50 128K 

Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/5.4.16 mod_perl/2.0.11 Perl/v5.16.3 Server at linux-nfs.org Port 80