Whamcloud - gitweb
LU-3590 lfsck: repair MDT-object with dangling reference
[fs/lustre-release.git] / lustre / lfsck / lfsck_internal.h
index a97947a..8862f83 100644 (file)
@@ -525,6 +525,7 @@ struct lfsck_thread_info {
        struct lu_fid           lti_fid;
        struct lu_fid           lti_fid2;
        struct lu_attr          lti_la;
+       struct lu_attr          lti_la2;
        struct ost_id           lti_oi;
        union {
                struct lustre_mdt_attrs lti_lma;
@@ -541,7 +542,11 @@ struct lfsck_thread_info {
        struct lfsck_stop       lti_stop;
        ldlm_policy_data_t      lti_policy;
        struct ldlm_res_id      lti_resid;
-       struct filter_fid_old   lti_pfid;
+       union {
+               struct filter_fid_old   lti_old_pfid;
+               struct filter_fid       lti_new_pfid;
+       };
+       struct dt_allocation_hint lti_hint;
 };
 
 /* lfsck_lib.c */
@@ -604,6 +609,11 @@ extern const char *lfsck_flags_names[];
 extern const char *lfsck_param_names[];
 extern struct lu_context_key lfsck_thread_key;
 
+static inline struct dt_device *lfsck_obj2dt_dev(struct dt_object *obj)
+{
+       return container_of0(obj->do_lu.lo_dev, struct dt_device, dd_lu_dev);
+}
+
 static inline struct lfsck_thread_info *
 lfsck_env_info(const struct lu_env *env)
 {