diff options
author | Filipe Manana <fdmanana@suse.com> | 2023-01-10 15:56:38 +0100 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2023-01-12 15:43:31 +0100 |
commit | 09e44868f1e03c7825ca4283256abedc95e249a3 (patch) | |
tree | 99745aaa202f7c93c092541e7f2dfdac48cb9fc5 /kernel/watchdog_hld.c | |
parent | btrfs: do not abort transaction on failure to write log tree when syncing log (diff) | |
download | linux-09e44868f1e03c7825ca4283256abedc95e249a3.tar.xz linux-09e44868f1e03c7825ca4283256abedc95e249a3.zip |
btrfs: do not abort transaction on failure to update log root
When syncing a log, if we fail to update a log root in the log root tree,
we are aborting the transaction if the failure was not -ENOSPC. This is
excessive because there is a chance that a transaction commit can succeed,
and therefore avoid to turn the filesystem into RO mode. All we need to be
careful about is to mark the log for a full commit, which we already do,
to make sure no one commits a super block pointing to an outdated log root
tree.
So don't abort the transaction if we fail to update a log root in the log
root tree, and log an error if the failure is not -ENOSPC, so that it does
not go completely unnoticed.
CC: stable@vger.kernel.org # 6.0+
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'kernel/watchdog_hld.c')
0 files changed, 0 insertions, 0 deletions