diff options
author | David Howells <dhowells@redhat.com> | 2006-08-22 20:06:10 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-09-22 23:24:33 -0400 |
commit | 24c8dbbb5f777187d660393599641ab3307b4b97 (patch) | |
tree | 9d50fdd57c7593d925a21e4bb049095a4e4ead6f /fs/nfs/nfs4proc.c | |
parent | e9326dcab413848e70ab746c7c5363da13e5f801 (diff) |
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>
Diffstat (limited to 'fs/nfs/nfs4proc.c')
-rw-r--r-- | fs/nfs/nfs4proc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index 850f0851023a..803c31b88bb5 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
@@ -2968,7 +2968,7 @@ int nfs4_proc_setclientid(struct nfs_client *clp, u32 program, unsigned short po | |||
2968 | for(;;) { | 2968 | for(;;) { |
2969 | setclientid.sc_name_len = scnprintf(setclientid.sc_name, | 2969 | setclientid.sc_name_len = scnprintf(setclientid.sc_name, |
2970 | sizeof(setclientid.sc_name), "%s/%u.%u.%u.%u %s %u", | 2970 | sizeof(setclientid.sc_name), "%s/%u.%u.%u.%u %s %u", |
2971 | clp->cl_ipaddr, NIPQUAD(clp->cl_addr.s_addr), | 2971 | clp->cl_ipaddr, NIPQUAD(clp->cl_addr.sin_addr), |
2972 | cred->cr_ops->cr_name, | 2972 | cred->cr_ops->cr_name, |
2973 | clp->cl_id_uniquifier); | 2973 | clp->cl_id_uniquifier); |
2974 | setclientid.sc_netid_len = scnprintf(setclientid.sc_netid, | 2974 | setclientid.sc_netid_len = scnprintf(setclientid.sc_netid, |