+/**
+ * Return lov_layout_entry_type associated with a given composite layout
+ * entry.
+ */
+static inline __u32 lov_entry_type(struct lov_stripe_md_entry *lsme)
+{
+ if ((lov_pattern(lsme->lsme_pattern) == LOV_PATTERN_RAID0) ||
+ (lov_pattern(lsme->lsme_pattern) == LOV_PATTERN_MDT))
+ return lov_pattern(lsme->lsme_pattern);
+ return 0;
+}
+
+struct lov_layout_entry;
+struct lov_object;
+struct lov_lock_sub;
+
+struct lov_comp_layout_entry_ops {
+ int (*lco_init)(const struct lu_env *env, struct lov_device *dev,
+ struct lov_object *lov, unsigned int index,
+ const struct cl_object_conf *conf,
+ struct lov_layout_entry *lle);
+ void (*lco_fini)(const struct lu_env *env,
+ struct lov_layout_entry *lle);
+ int (*lco_getattr)(const struct lu_env *env, struct lov_object *obj,
+ unsigned int index, struct lov_layout_entry *lle,
+ struct cl_attr **attr);
+};
+