X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Finclude%2Fmd_object.h;h=72e7719d021a7f2b06c4295d8d5e858b9be1a58b;hp=fb8c67f8bbb962b0eb1c19c4cfa3679d83845845;hb=8d27c92a66d63aaf8b8fbe1fc73e49263b5bed1e;hpb=2496089a0017f5b0ff94a7a7994f4c62c8f30d94 diff --git a/lustre/include/md_object.h b/lustre/include/md_object.h index fb8c67f..72e7719 100644 --- a/lustre/include/md_object.h +++ b/lustre/include/md_object.h @@ -130,9 +130,11 @@ struct md_attr { 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; }; @@ -156,6 +158,9 @@ struct md_op_spec { 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. */ @@ -234,8 +239,8 @@ struct md_object_operations { 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); @@ -507,10 +512,10 @@ static inline int mo_swap_layouts(const struct lu_env *env, } 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, @@ -656,17 +661,6 @@ static inline int mdo_statfs(const struct lu_env *env, 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);