From ea0ac9416fd13b7e20899d8c7c130e5375171ea6 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Thu, 17 Jan 2013 12:06:29 -0800 Subject: [PATCH] btrfs-progs: return error from commit_tree_roots() Errors cow-ing the root block are silently being dropped. This is just a step towards error handling because both the caller and calee assert on errors. Signed-off-by: Zach Brown --- disk-io.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/disk-io.c b/disk-io.c index d3b8c518..dd06748b 100644 --- a/disk-io.c +++ b/disk-io.c @@ -345,14 +345,17 @@ static int commit_tree_roots(struct btrfs_trans_handle *trans, struct btrfs_root *root; struct list_head *next; struct extent_buffer *eb; + int ret; if (fs_info->readonly) return 0; eb = fs_info->tree_root->node; extent_buffer_get(eb); - btrfs_cow_block(trans, fs_info->tree_root, eb, NULL, 0, &eb); + ret = btrfs_cow_block(trans, fs_info->tree_root, eb, NULL, 0, &eb); free_extent_buffer(eb); + if (ret) + return ret; while(!list_empty(&fs_info->dirty_cowonly_roots)) { next = fs_info->dirty_cowonly_roots.next;