/* The latest object has been processed (failed) during double scan. */
struct lu_fid ln_fid_latest_scanned_phase2;
- /* For further using. 256-bytes aligned now. */
- __u64 ln_reserved[2];
+ /* How many FID-in-dirent entries have been repaired. */
+ __u64 ln_dirent_repaired;
+
+ /* How many linkEA entries have been repaired. */
+ __u64 ln_linkea_repaired;
};
enum lfsck_layout_inconsistency_type {
/* How many objects failed to be processed during double scan. */
__u64 ll_objs_failed_phase2;
- /* kinds of inconsistency have been repaired.
+ /* kinds of inconsistency have been or to be repaired.
* ll_objs_repaired[type - 1] is the count for the given @type. */
__u64 ll_objs_repaired[LLIT_MAX];
};
struct dt_allocation_hint lti_hint;
struct lu_orphan_rec lti_rec;
+ struct lov_user_md lti_lum;
};
/* lfsck_lib.c */
const char *prefix);
void lfsck_pos_fill(const struct lu_env *env, struct lfsck_instance *lfsck,
struct lfsck_position *pos, bool init);
+bool __lfsck_set_speed(struct lfsck_instance *lfsck, __u32 limit);
void lfsck_control_speed(struct lfsck_instance *lfsck);
void lfsck_control_speed_by_self(struct lfsck_component *com);
int lfsck_reset(const struct lu_env *env, struct lfsck_instance *lfsck,
struct lfsck_instance *lfsck);
int lfsck_bookmark_setup(const struct lu_env *env,
struct lfsck_instance *lfsck);
+int lfsck_set_param(const struct lu_env *env, struct lfsck_instance *lfsck,
+ struct lfsck_start *start, bool reset);
/* lfsck_namespace.c */
int lfsck_namespace_setup(const struct lu_env *env,