Experimental NFS client patches for RHEL 3.0 Update 3

Dec 23 15:47 linux-2.4.21-direct-nfs-wb-all.patch

NFS direct reads were not flushing cached writes.

RH Bugzilla 136398

 direct.c |    4 ++++
 1 files changed, 4 insertions(+)
Dec 23 15:46 linux-2.4.21-nfs-unlink-deadlock.patch

Closing an NFS file can collide with asynchronous writebacks under way. The result is a deadlock which prevents subsequent NFS activity on an NFS client.

RH Bugzilla 138182

 fs/nfs/unlink.c              |    3 ++-
 include/linux/sunrpc/sched.h |    1 +
 net/sunrpc/sched.c           |   11 +++++++++++
 net/sunrpc/sunrpc_syms.c     |    1 +
 4 files changed, 15 insertions(+), 1 deletion(-)
Dec 23 15:50 linux-2.4.21-prune-icache.patch

Under heavy memory pressure, opening an NFS file can deadlock a mount point.

RH Bugzilla unknown

 inode.c |    1 +
 1 files changed, 1 insertion(+)
Dec 23 15:47 linux-2.4.21-parallel-direct-read.patch

Send direct NFS read requests in parallel rather than serially.

 direct.c |  440 +++++++++++++++++++++++++++++++++++++++++----------------------
 inode.c  |   11 +
 2 files changed, 304 insertions(+), 147 deletions(-)
Dec 23 15:47 linux-2.4.21-wtd-sync_page.patch

Fix performance and stability problems with NFS aio.

RH Bugzilla 137830

 fs/block_dev.c     |    1 +
 fs/buffer.c        |    6 ++++++
 fs/ext2/inode.c    |    1 +
 fs/ext3/inode.c    |    1 +
 fs/nfs/file.c      |   15 ++++++++++++++-
 fs/nfs/flushd.c    |   49 ++++++++++++++++++++++++++++++++++++++++++++++++-
 include/linux/fs.h |    2 ++
 kernel/ksyms.c     |    1 +
 mm/wtd.c           |   22 ++++++++++++++++++++--
 9 files changed, 94 insertions(+), 4 deletions(-)
Dec 23 15:49 linux-2.4.21-rpc-tcp-push.patch

Push RPC requests on TCP sockets as soon as they are completely written to the transport socket.

 xprt.c |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)
Dec 23 15:47 linux-2.4.21-nfs-rsync-fix.patch

Detect directory restoration on NFS servers by checking ctime on NFS directories. Purge the directory's cache if a restoration is detected to prevent sending stale file handles and cookies to the server.

RH Bugzilla 113636

 inode.c |   25 +++++++++++++++++++++++--
 1 files changed, 23 insertions(+), 2 deletions(-)
Dec 23 15:48 linux-2.4.21-nfs-cto-lookup-revalidate.patch

Move close-to-open inode revalidation logic in the dentry revalidation path, eliminating a common cause of ESTALE on open(2), and improving performance of open(2) on cached NFS files.

RH Bugzilla 135688

 fs/exec.c          |    2 +-
 fs/namei.c         |    6 +++---
 fs/nfs/dir.c       |   20 +++++++++++++++-----
 fs/nfs/inode.c     |   13 ++++---------
 include/linux/fs.h |    1 +
 5 files changed, 24 insertions(+), 18 deletions(-)
Jan 26 19:46 linux-2.4.21-nfs-pathname-estale.patch

When an ESTALE occurs during pathname resolution, retry. This eliminates another common cause of ESTALE on open(2).

RH Bugzilla 135688

 namei.c        |   36 +++++++++++++++++++++++++++++++++++-
 nfs/dir.c      |    7 +++++++
 nfs/nfs3proc.c |    8 ++++----
 nfs/proc.c     |    6 +++---
 4 files changed, 49 insertions(+), 8 deletions(-)

Last modified: Wed Jan 26 19:47:14 EST 2005