Btrfs: only warn if we hit an error when doing the tree logging
authorJosef Bacik <jbacik@fusionio.com>
Fri, 24 Aug 2012 18:48:11 +0000 (14:48 -0400)
committerChris Mason <chris.mason@fusionio.com>
Mon, 1 Oct 2012 19:19:03 +0000 (15:19 -0400)
I hit this a couple times while working on my fsync patch (all my bugs, not
normal operation), but with my new stuff we could have new errors from cases
I have not encountered, so instead of BUG()'ing we should be WARN()'ing so
that we are notified there is a problem but the user doesn't lose their
data.  We can easily commit the transaction in the case that the tree
logging fails and still be fine, so let's try and be as nice to the user as
possible.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fusionio.com>
fs/btrfs/tree-log.c

index f2ff02c5513092419597ff8f6e714e1abcb7d205..94db438494df22d9c8804ef70ba6125d75cddb92 100644 (file)
@@ -3346,7 +3346,7 @@ int btrfs_log_inode_parent(struct btrfs_trans_handle *trans,
 end_trans:
        dput(old_parent);
        if (ret < 0) {
-               BUG_ON(ret != -ENOSPC);
+               WARN_ON(ret != -ENOSPC);
                root->fs_info->last_trans_log_full_commit = trans->transid;
                ret = 1;
        }