summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Schmidt <list.btrfs@jan-o-sch.net>2012-07-04 15:42:48 +0200
committerJan Schmidt <list.btrfs@jan-o-sch.net>2012-07-10 15:14:41 +0200
commitcf5388307a2b4faab4b11d732b61c85741be6169 (patch)
tree1d304ea8133422afcf0158ea39d111db2f884e5e
parentBtrfs: run delayed directory updates during log replay (diff)
downloadlinux-cf5388307a2b4faab4b11d732b61c85741be6169.tar.xz
linux-cf5388307a2b4faab4b11d732b61c85741be6169.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>
-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;