diff options
author | Neil Brown <neilb@cse.unsw.edu.au> | 2005-03-30 16:58:38 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-03-30 16:58:38 -0800 |
commit | 05882be9f254e58ee0e13359949b493e89eb181b (patch) | |
tree | 8919e3974c83dca0017bd3918055bb8321545a5a | |
parent | 700e5f1d7cf872e0f4e747ce2cb99960f45eaa0e (diff) | |
download | history-05882be9f254e58ee0e13359949b493e89eb181b.tar.gz |
[PATCH] nfsd4: fix use after put() in cb_recall
nfs4_put_delegation() did a dprintk using a pointer that it had just called a
put() on. This could cause a dereference of a pointer to freed memory in some
situations.
Signed-off-by: Andy Adamson <andros@citi.umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | fs/nfsd/nfs4callback.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c index 271c231e7ba440..c70de9c2af7465 100644 --- a/fs/nfsd/nfs4callback.c +++ b/fs/nfsd/nfs4callback.c @@ -541,7 +541,7 @@ out: atomic_set(&clp->cl_callback.cb_set, 0); /* Success or failure, now we're either waiting for lease expiration * or deleg_return. */ - nfs4_put_delegation(dp); dprintk("NFSD: nfs4_cb_recall: dp %p dl_flock %p dl_count %d\n",dp, dp->dl_flock, atomic_read(&dp->dl_count)); + nfs4_put_delegation(dp); return; } |