linux/fs/nfs
David Howells 24c8dbbb5f NFS: Generalise the nfs_client structure
Generalise the nfs_client structure by:

 (1) Moving nfs_client to a more general place (nfs_fs_sb.h).

 (2) Renaming its maintenance routines to be non-NFS4 specific.

 (3) Move those maintenance routines to a new non-NFS4 specific file (client.c)
     and move the declarations to internal.h.

 (4) Make nfs_find/get_client() take a full sockaddr_in to include the port
     number (will be required for NFS2/3).

 (5) Make nfs_find/get_client() take the NFS protocol version (again will be
     required to differentiate NFS2, 3 & 4 client records).

Also:

 (6) Make nfs_client construction proceed akin to inodes, marking them as under
     construction and providing a function to indicate completion.

 (7) Make nfs_get_client() wait interruptibly if it finds a client that it can
     share, but that client is currently being constructed.

 (8) Make nfs4_create_client() use (6) and (7) instead of locking cl_sem.

Signed-Off-By: David Howells <dhowells@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2006-09-22 23:24:33 -04:00
..
Makefile NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
callback.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
callback.h NFS: Fix NFS4 callback up/down prototypes 2006-09-22 23:24:31 -04:00
callback_proc.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
callback_xdr.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
client.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
delegation.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
delegation.h NFS: Rename struct nfs4_client to struct nfs_client 2006-09-22 23:24:31 -04:00
dir.c NFS: Add an ACCESS cache memory shrinker 2006-09-22 23:24:29 -04:00
direct.c [PATCH] NFS: large non-page-aligned direct I/O clobbers memory 2006-09-08 10:22:51 -07:00
file.c NFS: Fix a potential deadlock in nfs_release_page 2006-08-24 15:48:46 -04:00
idmap.c NFS: Return an error when starting the idmapping pipe 2006-09-22 23:24:32 -04:00
inode.c NFS: Add a global LRU list for the ACCESS cache 2006-09-22 23:24:29 -04:00
internal.h NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
iostat.h NFSv4: Fix an oops in nfs4_fill_super 2006-03-20 13:44:48 -05:00
mount_clnt.c Merge git://git.linux-nfs.org/pub/linux/nfs-2.6 2006-03-25 09:18:27 -08:00
namespace.c NFS: Release dcache_lock in an error path of nfs_path 2006-08-03 16:55:01 -04:00
nfs2xdr.c Fix NFS2 compile error 2006-06-25 12:30:33 -07:00
nfs3acl.c NFSv3: Client-side nfsacl caching fix 2006-06-09 09:34:11 -04:00
nfs3proc.c NFS: Split fs/nfs/inode.c 2006-06-09 09:34:33 -04:00
nfs3xdr.c NFS: Split fs/nfs/inode.c 2006-06-09 09:34:33 -04:00
nfs4_fs.h NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
nfs4namespace.c NFS: Split fs/nfs/inode.c 2006-06-09 09:34:33 -04:00
nfs4proc.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
nfs4renewd.c NFS: Rename nfs_server::nfs4_state 2006-09-22 23:24:32 -04:00
nfs4state.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
nfs4xdr.c NFS: Rename nfs_server::nfs4_state 2006-09-22 23:24:32 -04:00
nfsroot.c [PATCH] nfsroot port= parameter fix [backport of 2.4 fix] 2006-02-07 21:00:42 -05:00
pagelist.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2006-06-30 15:39:30 -07:00
proc.c NFS: Split fs/nfs/inode.c 2006-06-09 09:34:33 -04:00
read.c NFS: Fix Oopsable condition in nfs_readpage_sync() 2006-09-19 11:54:39 -04:00
super.c NFS: Generalise the nfs_client structure 2006-09-22 23:24:33 -04:00
symlink.c nfs: remove nfs_put_link() 2006-06-25 06:39:35 -04:00
sysctl.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
unlink.c NFS: kzalloc conversion in fs/nfs 2006-03-20 13:44:10 -05:00
write.c NFS: Fix nfs_page use after free issues in fs/nfs/write.c 2006-09-19 11:59:10 -04:00