bcachefs: Don't set BCH_FS_error on transaction restart

This started showing up more when we started logging the error being
corrected in the journal - but __bch2_fsck_err() could return
transaction restarts before that.

Setting BCH_FS_error incorrectly causes recovery passes to not be
cleared, among other issues.

Fixes: b43f72492768 ("bcachefs: Log fsck errors in the journal")
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>

+3 -1
+3 -1
fs/bcachefs/error.c
··· 633 * log_fsck_err()s: that would require us to track for every error type 634 * which recovery pass corrects it, to get the fsck exit status correct: 635 */ 636 - if (bch2_err_matches(ret, BCH_ERR_fsck_fix)) { 637 set_bit(BCH_FS_errors_fixed, &c->flags); 638 } else { 639 set_bit(BCH_FS_errors_not_fixed, &c->flags);
··· 633 * log_fsck_err()s: that would require us to track for every error type 634 * which recovery pass corrects it, to get the fsck exit status correct: 635 */ 636 + if (bch2_err_matches(ret, BCH_ERR_transaction_restart)) { 637 + /* nothing */ 638 + } else if (bch2_err_matches(ret, BCH_ERR_fsck_fix)) { 639 set_bit(BCH_FS_errors_fixed, &c->flags); 640 } else { 641 set_bit(BCH_FS_errors_not_fixed, &c->flags);