linux/fs/bcachefs/logged_ops.h
Kent Overstreet 0f25eb4b60 bcachefs: Rework logged op error handling
Initially it was thought that we just wanted to ignore errors from
logged op replay, but it turns out we do need to catch -EROFS, or we'll
go into an infinite loop.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2024-10-04 20:25:32 -04:00

21 lines
557 B
C

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _BCACHEFS_LOGGED_OPS_H
#define _BCACHEFS_LOGGED_OPS_H
#include "bkey.h"
#define BCH_LOGGED_OPS() \
x(truncate) \
x(finsert)
static inline int bch2_logged_op_update(struct btree_trans *trans, struct bkey_i *op)
{
return bch2_btree_insert_nonextent(trans, BTREE_ID_logged_ops, op, 0);
}
int bch2_resume_logged_ops(struct bch_fs *);
int bch2_logged_op_start(struct btree_trans *, struct bkey_i *);
int bch2_logged_op_finish(struct btree_trans *, struct bkey_i *);
#endif /* _BCACHEFS_LOGGED_OPS_H */