summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/disk-io.c
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2011-11-04 03:23:13 +0100
committerChris Mason <chris.mason@oracle.com>2011-11-06 09:09:10 +0100
commitc674e04e1cd6049715e7b9446790f4b441e547c0 (patch)
treea84d0488a8c8a2fc45abd7f54e054ccd2fcf8a83 /fs/btrfs/disk-io.c
parentBtrfs: fix the new inspection ioctls for 32 bit compat (diff)
downloadlinux-c674e04e1cd6049715e7b9446790f4b441e547c0.tar.xz
linux-c674e04e1cd6049715e7b9446790f4b441e547c0.zip
Btrfs: fix extent_buffer leak in the metadata IO error handling
The scrub readahead branch brought in a new error handling hook, but it was leaking extent_buffer references. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to '')
-rw-r--r--fs/btrfs/disk-io.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 0eb1f0951251..40a62b980087 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -644,6 +644,7 @@ static int btree_io_failed_hook(struct bio *failed_bio,
clear_bit(EXTENT_BUFFER_READAHEAD, &eb->bflags);
btree_readahead_hook(root, eb, eb->start, -EIO);
}
+ free_extent_buffer(eb);
out:
return -EIO; /* we fixed nothing */