bcachefs: Don't error out of recovery process on journal read error

We don't want to fail the recovery/mount because of a single error
reading from the journal - the relevant journal entry may still be found
on other devices, and missing or no journal entries found is already
handled later in the recovery process.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
Kent Overstreet 2021-01-06 18:49:35 -05:00 committed by Kent Overstreet
parent c859430b17
commit 29d90f61eb

View File

@ -576,8 +576,15 @@ static int journal_read_bucket(struct bch_dev *ca,
if (bch2_dev_io_err_on(ret, ca,
"journal read error: sector %llu",
offset) ||
bch2_meta_read_fault("journal"))
return -EIO;
bch2_meta_read_fault("journal")) {
/*
* We don't error out of the recovery process
* here, since the relevant journal entry may be
* found on a different device, and missing or
* no journal entries will be handled later
*/
return 0;
}
j = buf->data;
}