summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/ctree.c
diff options
context:
space:
mode:
authorJan Schmidt <list.btrfs@jan-o-sch.net>2012-07-04 16:15:02 +0200
committerChris Mason <chris.mason@fusionio.com>2012-07-23 22:28:03 +0200
commite6466e354a5c23717325adecf387f93be4b9c830 (patch)
treea7ad528896577109a6509dfb215d59fef855987e /fs/btrfs/ctree.c
parentBtrfs: do not count in readonly bytes (diff)
downloadlinux-e6466e354a5c23717325adecf387f93be4b9c830.tar.xz
linux-e6466e354a5c23717325adecf387f93be4b9c830.zip
Btrfs: fix buffer leak in btrfs_next_old_leaf
When calling btrfs_next_old_leaf, we were leaking an extent buffer in the rare case of using the deadlock avoidance code needed for the tree mod log. Signed-off-by: Jan Schmidt <list.btrfs@jan-o-sch.net> Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Diffstat (limited to '')
-rw-r--r--fs/btrfs/ctree.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
index 8206b3900587..67fe46fdee6f 100644
--- a/fs/btrfs/ctree.c
+++ b/fs/btrfs/ctree.c
@@ -5127,6 +5127,7 @@ again:
* locked. To solve this situation, we give up
* on our lock and cycle.
*/
+ free_extent_buffer(next);
btrfs_release_path(path);
cond_resched();
goto again;