struct md_som ma_som;
struct lov_mds_md *ma_lmm;
union lmv_mds_md *ma_lmv;
+ struct lmv_user_md *ma_default_lmv;
void *ma_acl;
int ma_lmm_size;
int ma_lmv_size;
+ int ma_default_lmv_size;
int ma_acl_size;
};
void *sp_cr_file_secctx; /* xattr value */
size_t sp_cr_file_secctx_size; /* xattr value size */
+ /* Archive ID used for auto PCC attach when create newly files. */
+ __u32 sp_archive_id;
+
/** don't create lov objects or llog cookie - this replay */
unsigned int no_create:1,
sp_cr_lookup:1, /* do lookup sanity check or not. */
enum changelog_rec_flags clf_flags,
struct md_device *m, const struct lu_fid *fid);
- int (*moo_open)(const struct lu_env *env,
- struct md_object *obj, u64 open_flags);
+ int (*moo_open)(const struct lu_env *env, struct md_object *obj,
+ u64 open_flags, struct md_op_spec*);
int (*moo_close)(const struct lu_env *env, struct md_object *obj,
struct md_attr *ma, u64 open_flags);
}
static inline int mo_open(const struct lu_env *env, struct md_object *m,
- u64 open_flags)
+ u64 open_flags, struct md_op_spec *spec)
{
LASSERT(m->mo_ops->moo_open);
- return m->mo_ops->moo_open(env, m, open_flags);
+ return m->mo_ops->moo_open(env, m, open_flags, spec);
}
static inline int mo_close(const struct lu_env *env, struct md_object *m,
return m->md_ops->mdo_statfs(env, m, sfs);
}
-/**
- * Used in MDD/OUT layer for object lock rule
- **/
-enum mdd_object_role {
- MOR_SRC_PARENT,
- MOR_SRC_CHILD,
- MOR_TGT_PARENT,
- MOR_TGT_CHILD,
- MOR_TGT_ORPHAN
-};
-
struct dt_device;
void lustre_som_swab(struct lustre_som_attrs *attrs);