diff options
author | 2024-12-28 19:57:04 -0500 | |
---|---|---|
committer | 2025-01-09 23:38:42 -0500 | |
commit | 8b1f46bff38f075b8d4071e7ac1edecb441fd53c (patch) | |
tree | a5520eae116f1fe6fc850e85733e195a1a0e9d09 | |
parent | bcachefs: bch2_trans_node_drop() (diff) | |
download | wireguard-linux-8b1f46bff38f075b8d4071e7ac1edecb441fd53c.tar.xz wireguard-linux-8b1f46bff38f075b8d4071e7ac1edecb441fd53c.zip |
bcachefs: Dropped superblock write is no longer a fatal error
Just emit a warning if errors=continue or fix_safe.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
-rw-r--r-- | fs/bcachefs/super-io.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/fs/bcachefs/super-io.c b/fs/bcachefs/super-io.c index dbc09e305c27..8037ccbacf6a 100644 --- a/fs/bcachefs/super-io.c +++ b/fs/bcachefs/super-io.c @@ -1084,9 +1084,16 @@ int bch2_write_super(struct bch_fs *c) ": Superblock write was silently dropped! (seq %llu expected %llu)", le64_to_cpu(ca->sb_read_scratch->seq), ca->disk_sb.seq); - bch2_fs_fatal_error(c, "%s", buf.buf); + + if (c->opts.errors != BCH_ON_ERROR_continue && + c->opts.errors != BCH_ON_ERROR_fix_safe) { + ret = -BCH_ERR_erofs_sb_err; + bch2_fs_fatal_error(c, "%s", buf.buf); + } else { + bch_err(c, "%s", buf.buf); + } + printbuf_exit(&buf); - ret = -BCH_ERR_erofs_sb_err; } if (le64_to_cpu(ca->sb_read_scratch->seq) > ca->disk_sb.seq) { |