diff options
author | Josef Bacik <josef@toxicpanda.com> | 2022-06-13 15:09:48 -0400 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2022-07-25 17:45:34 +0200 |
commit | f31f09f6be1c6c1a673e0566e258281a7bbaaa51 (patch) | |
tree | 6b85adc65b4be2c3a4fed86d22d178a3df53637c /fs/btrfs/tree-log.h | |
parent | 5bea2508811ec76105b01c90c1f1661024c257a9 (diff) | |
download | linux-f31f09f6be1c6c1a673e0566e258281a7bbaaa51.tar.bz2 |
btrfs: tree-log: make the return value for log syncing consistent
Currently we will return 1 or -EAGAIN if we decide we need to commit
the transaction rather than sync the log. In practice this doesn't
really matter, we interpret any !0 and !BTRFS_NO_LOG_SYNC as needing to
commit the transaction. However this makes it hard to figure out what
the correct thing to do is.
Fix this up by defining BTRFS_LOG_FORCE_COMMIT and using this in all the
places where we want to force the transaction to be committed.
CC: stable@vger.kernel.org # 5.15+
Reviewed-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/tree-log.h')
-rw-r--r-- | fs/btrfs/tree-log.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/btrfs/tree-log.h b/fs/btrfs/tree-log.h index 1620f8170629..57ab5f3b8dc7 100644 --- a/fs/btrfs/tree-log.h +++ b/fs/btrfs/tree-log.h @@ -12,6 +12,9 @@ /* return value for btrfs_log_dentry_safe that means we don't need to log it at all */ #define BTRFS_NO_LOG_SYNC 256 +/* We can't use the tree log for whatever reason, force a transaction commit */ +#define BTRFS_LOG_FORCE_COMMIT (1) + struct btrfs_log_ctx { int log_ret; int log_transid; |