[PATCH 20/30] NFS: Fix error handling [try #11]

From: David Howells
Date: Thu Jul 27 2006 - 16:57:29 EST


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@xxxxxxxxxx>
---

fs/nfs/client.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/fs/nfs/client.c b/fs/nfs/client.c
index 27f6478..700bd58 100644
--- a/fs/nfs/client.c
+++ b/fs/nfs/client.c
@@ -208,6 +208,9 @@ #endif
*/
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)) {
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/