summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEryu Guan <guaneryu@gmail.com>2015-10-19 19:38:00 +0800
committerDavid Sterba <dsterba@suse.com>2015-11-02 09:35:03 +0100
commit8a9c9adbe5a96ceb34989e77ef407d48f488ccd0 (patch)
treead0ece4c25f68c722909a7887a67064835c92334
parent1669d8afa647c63a8a28669b9eadfb64ce98f3d7 (diff)
btrfs-progs: return -ENOMEM properly in btrfs_read_block_groups()
Breaking from the while loop makes ret overwritten to zero, goto error label directly and return -ENOMEM. Signed-off-by: Eryu Guan <guaneryu@gmail.com> Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r--extent-tree.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/extent-tree.c b/extent-tree.c
index 0c8152a3..97cf9614 100644
--- a/extent-tree.c
+++ b/extent-tree.c
@@ -3255,7 +3255,7 @@ int btrfs_read_block_groups(struct btrfs_root *root)
cache = kzalloc(sizeof(*cache), GFP_NOFS);
if (!cache) {
ret = -ENOMEM;
- break;
+ goto error;
}
read_extent_buffer(leaf, &cache->item,