aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiu Bo <[email protected]>2016-09-13 19:15:48 -0700
committerDavid Sterba <[email protected]>2016-09-26 18:04:01 +0200
commita43f7f82064220082eba7075c5a844d773fdef1b (patch)
treec3b005cedbd3c027247fdf70ace686e9aabff567
parent3eb548ee3a8042d95ad81be254e67a5222c24e03 (diff)
Btrfs: remove BUG_ON in start_transaction
Since we could get errors from the concurrent aborted transaction, the check of this BUG_ON in start_transaction is not true any more. Say, while flushing free space cache inode's dirty pages, btrfs_finish_ordered_io -> btrfs_join_transaction_nolock (the transaction has been aborted.) -> BUG_ON(type == TRANS_JOIN_NOLOCK); Signed-off-by: Liu Bo <[email protected]> Reviewed-by: Josef Bacik <[email protected]> Signed-off-by: David Sterba <[email protected]>
-rw-r--r--fs/btrfs/transaction.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c
index b53104042e95..2ce9115a55fd 100644
--- a/fs/btrfs/transaction.c
+++ b/fs/btrfs/transaction.c
@@ -549,11 +549,8 @@ again:
}
} while (ret == -EBUSY);
- if (ret < 0) {
- /* We must get the transaction if we are JOIN_NOLOCK. */
- BUG_ON(type == TRANS_JOIN_NOLOCK);
+ if (ret < 0)
goto join_fail;
- }
cur_trans = root->fs_info->running_transaction;