summaryrefslogtreecommitdiffstats
path: root/fs/ceph/xattr.c
diff options
context:
space:
mode:
authorAlan Cox <alan@linux.intel.com>2012-07-20 15:18:36 +0200
committerSage Weil <sage@inktank.com>2012-07-31 03:15:35 +0200
commit21ec6ffa46719a4ed45531b5b01014c26f0416c4 (patch)
treecbdfa66b0b8c6dbe7911eab10e94ba0c21a50abd /fs/ceph/xattr.c
parentlibceph: reset connection retry on successfully negotiation (diff)
downloadlinux-21ec6ffa46719a4ed45531b5b01014c26f0416c4.tar.xz
linux-21ec6ffa46719a4ed45531b5b01014c26f0416c4.zip
ceph: fix potential double free
We re-run the loop but we don't re-set the attrs pointer back to NULL. Signed-off-by: Alan Cox <alan@linux.intel.com> Reviewed-by: Alex Elder <elder@inktank.com>
Diffstat (limited to 'fs/ceph/xattr.c')
-rw-r--r--fs/ceph/xattr.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ceph/xattr.c b/fs/ceph/xattr.c
index 785cb3057c95..2c2ae5be9902 100644
--- a/fs/ceph/xattr.c
+++ b/fs/ceph/xattr.c
@@ -457,6 +457,7 @@ start:
for (i = 0; i < numattr; i++)
kfree(xattrs[i]);
kfree(xattrs);
+ xattrs = NULL;
goto start;
}
err = -EIO;