NFS: Fix error handling
authorDavid Howells <dhowells@redhat.com>
Sun, 30 Jul 2006 18:40:56 +0000 (14:40 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 23 Sep 2006 03:24:37 +0000 (23:24 -0400)
Fix an error handling problem: nfs_put_client() can be given a NULL pointer if
nfs_free_server() is asked to destroy a partially initialised record.

Signed-Off-By: David Howells <dhowells@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/client.c

index 27f64781444aebdfdef9883c39ed8ee6d7f60bbf..700bd580122391f2c50cfa10c032064183e65922 100644 (file)
@@ -208,6 +208,9 @@ static void nfs_free_client(struct nfs_client *clp)
  */
 void nfs_put_client(struct nfs_client *clp)
 {
+       if (!clp)
+               return;
+
        dprintk("--> nfs_put_client({%d})\n", atomic_read(&clp->cl_count));
 
        if (atomic_dec_and_lock(&clp->cl_count, &nfs_client_lock)) {