Whamcloud - gitweb
LU-4826 lmv: Ensure lmv_intent_lookup cleans up reqp
[fs/lustre-release.git] / lustre / lod / lod_object.c
index 5462d79..acdd4d0 100644 (file)
@@ -43,7 +43,6 @@
 #include <lustre_param.h>
 #include <lustre_fid.h>
 #include <lustre_lmv.h>
-#include <obd_lov.h>
 #include <md_object.h>
 
 #include "lod_internal.h"
@@ -838,9 +837,9 @@ static int lod_prep_md_striped_create(const struct lu_env *env,
                        memset(v3, 0, sizeof(*v3));
                        v3->lmm_magic = cpu_to_le32(LOV_USER_MAGIC_V3);
                        v3->lmm_stripe_count =
-                               cpu_to_le32(lo->ldo_def_stripenr);
+                               cpu_to_le16(lo->ldo_def_stripenr);
                        v3->lmm_stripe_offset =
-                               cpu_to_le32(lo->ldo_def_stripe_offset);
+                               cpu_to_le16(lo->ldo_def_stripe_offset);
                        v3->lmm_stripe_size =
                                cpu_to_le32(lo->ldo_def_stripe_size);
                        if (lo->ldo_pool)
@@ -1184,9 +1183,9 @@ static int lod_xattr_set_lmv(const struct lu_env *env, struct dt_object *dt,
                        memset(v3, 0, sizeof(*v3));
                        v3->lmm_magic = cpu_to_le32(LOV_USER_MAGIC_V3);
                        v3->lmm_stripe_count =
-                               cpu_to_le32(lo->ldo_def_stripenr);
+                               cpu_to_le16(lo->ldo_def_stripenr);
                        v3->lmm_stripe_offset =
-                               cpu_to_le32(lo->ldo_def_stripe_offset);
+                               cpu_to_le16(lo->ldo_def_stripe_offset);
                        v3->lmm_stripe_size =
                                cpu_to_le32(lo->ldo_def_stripe_size);
                        if (lo->ldo_pool)
@@ -2206,6 +2205,12 @@ static int lod_object_lock(const struct lu_env *env,
        /* striped directory lock */
        for (i = 0; i < lo->ldo_stripenr; i++) {
                struct lustre_handle    lockh;
+               struct ldlm_res_id      *res_id;
+
+               res_id = &lod_env_info(env)->lti_res_id;
+               fid_build_reg_res_name(lu_object_fid(&lo->ldo_stripe[i]->do_lu),
+                                      res_id);
+               einfo->ei_res_id = res_id;
 
                LASSERT(lo->ldo_stripe[i]);
                rc = dt_object_lock(env, lo->ldo_stripe[i], &lockh, einfo,