aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorMark Fasheh <mfasheh@suse.com>2011-07-12 14:10:23 -0400
committerMark Fasheh <mfasheh@suse.com>2011-07-14 17:14:45 -0400
commit17e9f796bd92cddec17d781c459376f82340fa44 (patch)
tree14c360f6adaef5c83299ec49fe2fb00dbafea1ee /fs
parent1748f843a0190ef4332d03a64263f383af72682b (diff)
btrfs: Don't BUG_ON alloc_path errors in btrfs_balance()
Dealing with this seems trivial - the only caller of btrfs_balance() is btrfs_ioctl() which passes the error code directly back to userspace. There also isn't much state to unwind (if I'm wrong about this point, we can always safely move the allocation to the top of btrfs_balance() anyway). Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/btrfs/volumes.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 19450bc53632..530a2fcea1ef 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -2061,8 +2061,10 @@ int btrfs_balance(struct btrfs_root *dev_root)
2061 2061
2062 /* step two, relocate all the chunks */ 2062 /* step two, relocate all the chunks */
2063 path = btrfs_alloc_path(); 2063 path = btrfs_alloc_path();
2064 BUG_ON(!path); 2064 if (!path) {
2065 2065 ret = -ENOMEM;
2066 goto error;
2067 }
2066 key.objectid = BTRFS_FIRST_CHUNK_TREE_OBJECTID; 2068 key.objectid = BTRFS_FIRST_CHUNK_TREE_OBJECTID;
2067 key.offset = (u64)-1; 2069 key.offset = (u64)-1;
2068 key.type = BTRFS_CHUNK_ITEM_KEY; 2070 key.type = BTRFS_CHUNK_ITEM_KEY;