diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2020-11-30 02:07:38 -0500 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:08:48 -0400 |
commit | d7b04163c2e6fbfb3befc047586c4c85069e8db3 (patch) | |
tree | ee9b54a5818712081971332177b76a6c8e27b22e /fs/bcachefs/btree_key_cache.c | |
parent | d0022290b81c15db3c81936cdb254663598ef35f (diff) |
bcachefs: Change a BUG_ON() to a fatal error
In the btree key cache code, failing to flush a dirty key is a serious
error, but it doesn't need to be a BUG_ON(), we can stop the filesystem
instead.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/btree_key_cache.c')
-rw-r--r-- | fs/bcachefs/btree_key_cache.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/bcachefs/btree_key_cache.c b/fs/bcachefs/btree_key_cache.c index ae3d5880f84e..ccb5f3cc7160 100644 --- a/fs/bcachefs/btree_key_cache.c +++ b/fs/bcachefs/btree_key_cache.c @@ -368,10 +368,11 @@ err: if (ret == -EINTR) goto retry; - BUG_ON(ret && !bch2_journal_error(j)); - - if (ret) + if (ret) { + bch2_fs_fatal_err_on(!bch2_journal_error(j), c, + "error flushing key cache: %i", ret); goto out; + } bch2_journal_pin_drop(j, &ck->journal); bch2_journal_preres_put(j, &ck->res); |