diff options
author | Tsutomu Itoh <t-itoh@jp.fujitsu.com> | 2010-12-27 01:53:10 -0500 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2011-01-16 11:30:20 -0500 |
commit | 5e540f7715b8cd83b8e60beaaa525b125cc122de (patch) | |
tree | 93ce1b3e22354c8d8e477ee56b925a44e7b9713e | |
parent | 91ca338d776e0cefb255bf2979b6448febd880f5 (diff) |
btrfs: Fix memory leak in btrfs_read_fs_root_no_radix()
In btrfs_read_fs_root_no_radix(), 'root' is not freed if
btrfs_search_slot() returns error.
Signed-off-by: Tsutomu Itoh <t-itoh@jp.fujitsu.com>
Signed-off-by: Chris Mason <chris.mason@oracle.com>
-rw-r--r-- | fs/btrfs/disk-io.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index a0c37b2ee9ed..9b1dd4138072 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c | |||
@@ -1153,6 +1153,7 @@ struct btrfs_root *btrfs_read_fs_root_no_radix(struct btrfs_root *tree_root, | |||
1153 | } | 1153 | } |
1154 | btrfs_free_path(path); | 1154 | btrfs_free_path(path); |
1155 | if (ret) { | 1155 | if (ret) { |
1156 | kfree(root); | ||
1156 | if (ret > 0) | 1157 | if (ret > 0) |
1157 | ret = -ENOENT; | 1158 | ret = -ENOENT; |
1158 | return ERR_PTR(ret); | 1159 | return ERR_PTR(ret); |