diff options
-rw-r--r-- | fs/btrfs/super.c | 5 | ||||
-rw-r--r-- | fs/btrfs/transaction.c | 4 |
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 | ||
170 | static const char * const logtypes[] = { | 169 | static 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 | ||
1492 | static int btrfs_flush_all_pending_stuffs(struct btrfs_trans_handle *trans, | 1496 | static int btrfs_flush_all_pending_stuffs(struct btrfs_trans_handle *trans, |