diff options
Diffstat (limited to 'fs/btrfs')
| -rw-r--r-- | fs/btrfs/transaction.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c index 910ff8051ba9..35489644c247 100644 --- a/fs/btrfs/transaction.c +++ b/fs/btrfs/transaction.c | |||
| @@ -351,8 +351,10 @@ again: | |||
| 351 | */ | 351 | */ |
| 352 | if (type != TRANS_JOIN_NOLOCK && | 352 | if (type != TRANS_JOIN_NOLOCK && |
| 353 | !__sb_start_write(root->fs_info->sb, SB_FREEZE_FS, false)) { | 353 | !__sb_start_write(root->fs_info->sb, SB_FREEZE_FS, false)) { |
| 354 | if (type == TRANS_JOIN_FREEZE) | 354 | if (type == TRANS_JOIN_FREEZE) { |
| 355 | kmem_cache_free(btrfs_trans_handle_cachep, h); | ||
| 355 | return ERR_PTR(-EPERM); | 356 | return ERR_PTR(-EPERM); |
| 357 | } | ||
| 356 | sb_start_intwrite(root->fs_info->sb); | 358 | sb_start_intwrite(root->fs_info->sb); |
| 357 | } | 359 | } |
| 358 | 360 | ||
