mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-24 01:09:38 -05:00
bcachefs: Logged op errors should be ignored
If something is wrong with a logged op, we just want to delete it - there's nothing to repair. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
13c1e583f9
commit
cecfed9b44
1 changed files with 3 additions and 4 deletions
|
@ -37,7 +37,6 @@ static int resume_logged_op(struct btree_trans *trans, struct btree_iter *iter,
|
||||||
const struct bch_logged_op_fn *fn = logged_op_fn(k.k->type);
|
const struct bch_logged_op_fn *fn = logged_op_fn(k.k->type);
|
||||||
struct bkey_buf sk;
|
struct bkey_buf sk;
|
||||||
u32 restart_count = trans->restart_count;
|
u32 restart_count = trans->restart_count;
|
||||||
int ret;
|
|
||||||
|
|
||||||
if (!fn)
|
if (!fn)
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -45,11 +44,11 @@ static int resume_logged_op(struct btree_trans *trans, struct btree_iter *iter,
|
||||||
bch2_bkey_buf_init(&sk);
|
bch2_bkey_buf_init(&sk);
|
||||||
bch2_bkey_buf_reassemble(&sk, c, k);
|
bch2_bkey_buf_reassemble(&sk, c, k);
|
||||||
|
|
||||||
ret = drop_locks_do(trans, (bch2_fs_lazy_rw(c), 0)) ?:
|
fn->resume(trans, sk.k);
|
||||||
fn->resume(trans, sk.k) ?: trans_was_restarted(trans, restart_count);
|
|
||||||
|
|
||||||
bch2_bkey_buf_exit(&sk, c);
|
bch2_bkey_buf_exit(&sk, c);
|
||||||
return ret;
|
|
||||||
|
return trans_was_restarted(trans, restart_count);
|
||||||
}
|
}
|
||||||
|
|
||||||
int bch2_resume_logged_ops(struct bch_fs *c)
|
int bch2_resume_logged_ops(struct bch_fs *c)
|
||||||
|
|
Loading…
Add table
Reference in a new issue