aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/btrfs/super.c5
-rw-r--r--fs/btrfs/transaction.c4
2 files changed, 6 insertions, 3 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index c3254c995fc8..88f812eddff6 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -161,10 +161,9 @@ void __btrfs_std_error(struct btrfs_fs_info *fs_info, const char *function,
161 } 161 }
162 162
163 /* Don't go through full error handling during mount */ 163 /* Don't go through full error handling during mount */
164 if (sb->s_flags & MS_BORN) { 164 save_error_info(fs_info);
165 save_error_info(fs_info); 165 if (sb->s_flags & MS_BORN)
166 btrfs_handle_error(fs_info); 166 btrfs_handle_error(fs_info);
167 }
168} 167}
169 168
170static const char * const logtypes[] = { 169static const char * const logtypes[] = {
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c
index 9940fd90a958..a5764aeb4549 100644
--- a/fs/btrfs/transaction.c
+++ b/fs/btrfs/transaction.c
@@ -1487,6 +1487,10 @@ static void cleanup_transaction(struct btrfs_trans_handle *trans,
1487 current->journal_info = NULL; 1487 current->journal_info = NULL;
1488 1488
1489 kmem_cache_free(btrfs_trans_handle_cachep, trans); 1489 kmem_cache_free(btrfs_trans_handle_cachep, trans);
1490
1491 spin_lock(&root->fs_info->trans_lock);
1492 root->fs_info->trans_no_join = 0;
1493 spin_unlock(&root->fs_info->trans_lock);
1490} 1494}
1491 1495
1492static int btrfs_flush_all_pending_stuffs(struct btrfs_trans_handle *trans, 1496static int btrfs_flush_all_pending_stuffs(struct btrfs_trans_handle *trans,