summaryrefslogtreecommitdiff
path: root/fs/btrfs/tree-log.c
diff options
context:
space:
mode:
authorVinod Koul <vkoul@kernel.org>2020-09-11 15:15:36 +0300
committerVinod Koul <vkoul@kernel.org>2020-09-11 15:15:36 +0300
commit4c80e9323967125ab8aa7c271ccc7624abc08832 (patch)
treec9881b5814c184aa0c1cb58c6383beab9173e388 /fs/btrfs/tree-log.c
parentef759e4a28c88965972c815af6023f41bd733316 (diff)
parentf4d51dffc6c01a9e94650d95ce0104964f8ae822 (diff)
downloadlinux-4c80e9323967125ab8aa7c271ccc7624abc08832.tar.xz
Merge tag 'v5.9-rc4' into next
Linux 5.9-rc4
Diffstat (limited to 'fs/btrfs/tree-log.c')
-rw-r--r--fs/btrfs/tree-log.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
index 696dd861cc3c..39da9db35278 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -3449,11 +3449,13 @@ fail:
btrfs_free_path(path);
out_unlock:
mutex_unlock(&dir->log_mutex);
- if (ret == -ENOSPC) {
+ if (err == -ENOSPC) {
btrfs_set_log_full_commit(trans);
- ret = 0;
- } else if (ret < 0)
- btrfs_abort_transaction(trans, ret);
+ err = 0;
+ } else if (err < 0 && err != -ENOENT) {
+ /* ENOENT can be returned if the entry hasn't been fsynced yet */
+ btrfs_abort_transaction(trans, err);
+ }
btrfs_end_log_trans(root);