projects techreports press lab location staff
citi top.2 top.3
citi mid.3
bot.1 bot.2 bot.3
star

Projects: Linux NFS Client Performance Project: Patches

This page indexes our Linux NFS client patch collection. See also Trond's NFS client patches.

Patch name Release date Author Kernel version Description
kernel-2.4.18-17.na3.i686.rpm kernel-bigmem-2.4.18-17.na3.i686.rpm kernel-debug-2.4.18-17.na3.i686.rpm kernel-smp-2.4.18-17.na3.i686.rpm kernel-uml-2.4.18-17.na3.i686.rpm kernel-2.4.18-17.na3.src.rpm December 4, 2002 cel Red Hat 7.x This is a recent Red Hat errata kernel with more patches that upgrade the NFS client to 2.4.20 equivalent, plus patches from Trond's web site that haven't gone into 2.4 yet, including support for NFS O_DIRECT, and the ACCESS and READDIRPLUS RPCs.
kernel-2.4.18-17.na1.src.rpm November 6, 2002 cel Red Hat 7.x This is Red Hat's latest errata kernel with patches that upgrade the NFS client to 2.4.20-rc1 equivalent. It also includes a number of bug fixes that go beyond 2.4.20-rc1.
kernel-2.4.9-e.8.na1.i686.rpm kernel-enterprise-2.4.9-e.8.na1.i686.rpm kernel-smp-2.4.9-e.8.na1.i686.rpm linux-2.4.9-nfs_reconnect.patch October 31, 2002 cel Red Hat Advanced Server 2.1 This is the Red Hat Advanced Server 2.1 errata kernel patched to fix long TCP connect timeouts. The fix is also included here in patch form.
kernel-2.4.9-e.8.src.rpm October 18, 2002 cel Red Hat Advanced Server 2.1 This source RPM contains extra patches that fix attribute caching problems in the NFS client contained in RHAS 2.1, and that replace the TCP input path in the RPC layer with code back-ported from 2.4.19.
kernel-smp-2.4.9-e.8.i686.rpm October 18, 2002 cel Red Hat Advanced Server 2.1 This binary RPM contains extra patches that fix attribute caching problems in the NFS client contained in RHAS 2.1, and that replace the TCP input path in the RPC layer with code back-ported from 2.4.19.
nfs-odirect-bugs2 April 15, 2002 cel 2.4.19-pre6 When opening an NFS file with the O_DIRECT flag, release unnecessary parts of the file's kiobuf struct to save memory.
vfs-odirect-bugs1 April 12, 2002 cel 2.4.19-pre6 Allocate kiobufs and other associated data structures more efficiently.
nfs-noac-read1 March 14, 2002 cel 2.4.19-pre3 When a file system is mounted with noac, the client generates unnecessary server read requests after modifying a file. This patch eliminates the unnecessary requests, and fixes a return code passing problem.
nfs-odirect-bugs1 March 2, 2002 cel 2.4.16, 17, 18 with NFS-ALL Applied on top of Trond's NFS-ALL patch, or just to the NFS O_DIRECT patch. Fixes segmentation faults when user's buffer is large and not page aligned. Fixes deadlock on HIGHMEM systems caused by O_DIRECT exhausting kernel's kmap pool.
nfs-nolock1 March 2, 2002 cel 2.4.16, 17, 18 with NFS-ALL Applied on top of Trond's NFS-ALL patch, this patch finishes removing the BKL from the NFS client's read and write paths. The BKL still exists in the NFS client's lookup logic.
inode2file, nfs-odirect11 December 20, 2001 cel 2.4.16 Direct I/O for the NFS client, implemented against the kernel's generic direct I/O support. Direct I/O is enabled via the O_DIRECT open()/fcntl() flag. Apply inode2file.diff first, then nfs-odirect11.diff. For correct operation, Trond's pathconf patch is also required. NOTE: This patch, with bug fixes, is now distributed from Trond's web site.
nfs-odirect7 December 4, 2001 cel 2.4.14 Prototype for direct I/O via the Linux NFS client. This patch was generated against the mainline 2.4.14 kernel. Direct I/O is enabled via the O_DIRECT open()/fcntl() flag. This version uses kiobufs to initiate I/O directly into and out from user-level buffers.
Suse O_DIRECT 6 November 15, 2001 cel Suse 2.4.4 Prototype for direct I/O via the Linux NFS client. This patch was generated against the Suse 2.4.4 kernel. For testing, it adds another mount option ("nodc") that disables caching for an entire partition. Eventually this will only be supported via the O_DIRECT open() flag.

Modified version of the mount command not included in this patch.

nfs-write-tuning2 August 14, 2001 cel 2.4.4 Remove global kernel lock from write path and flushd, and release global lock in RPC call_transmit (relieves global kernel lock contention during heavy write load; first steps towards removing global lock from RPC layer). Remove code that pressures writebacks (reduces write() system call latency). Add efficient writeback cache (removes a pair of expensive linear list searches during sequential writes).
nfs-write-tuning1 May 7, 2001 cel 2.4.4 Improve write throughput by making the write code path wait more logically. Remove code that pounds on flushd when an inode's writeback request queue grows long. Clean up tuning parameters.
nfs-refresh-inode4 May 2, 2001 cel 2.4.4
  • Improve the efficiency of updating the attribute cache by only updating when a timestamp change is detected.
  • Setattr was ignoring attributes returned from the server on error - sometimes the attributes are valid even if an error code is returned.
  • Don't bother refreshing attributes before starting on-the-wire operations if this is an NFSv3 file.
nfs-cto7 May 23, 2001 cel 2.4.4 The Linux NFS client supports NFS close-to-open semantics by aggressively timing out its directory name lookup cache. This patch implements the GETATTR-on-open logic that works much like other NFS client implementations. It implements the open() half of the "nocto" mount option. It also eliminates locking the global kernel lock twice in the nfs_revalidate_inode path.
nfs-cto5 April 7, 2001 cel 2.4.3 The Linux NFS client supports NFS close-to-open semantics by aggressively timing out its directory name lookup cache. This patch replaces the lookup timeout logic with logic that behaves like other NFS clients -- it retrieves a fresh set of file attributes when a file is opened.
nfs-cto4 March 24, 2001 cel 2.4.3 The Linux NFS client supports NFS close-to-open semantics by aggressively timing out its directory name lookup cache. This improves the behavior of name resolution when looking up names in an NFS-mounted file system. A version of this patch also appears on Trond's site.

Last modified: Wed Dec 18 12:02:48 EST 2002

blank.space
b.star projects | techreports | press | lab | location | staff Email address
or call +1 734 763 2929
Copyright © 1996-2013
The Regents of the University of Michigan
bottom.line
citi