/* * No permission check is needed. */ static int mdd_init_capa_ctxt(const struct lu_env *env, struct md_device *m, int mode, unsigned long timeout, __u32 alg, struct lustre_capa_key *keys) { struct mdd_device *mdd = lu2mdd_dev(&m->md_lu_dev); int rc; ENTRY; /* need barrier for mds_capa_keys access. */ rc = mdd_child_ops(mdd)->dt_init_capa_ctxt(env, mdd->mdd_child, mode, timeout, alg, keys); RETURN(rc); }
/* * No permission check is needed. */ static int mdd_statfs(const struct lu_env *env, struct md_device *m, struct obd_statfs *sfs) { struct mdd_device *mdd = lu2mdd_dev(&m->md_lu_dev); int rc; ENTRY; rc = mdd_child_ops(mdd)->dt_statfs(env, mdd->mdd_child, sfs); sfs->os_namelen = min_t(__u32, sfs->os_namelen, NAME_MAX); RETURN(rc); }
int mdd_trans_start(const struct lu_env *env, struct mdd_device *mdd, struct thandle *th) { return mdd_child_ops(mdd)->dt_trans_start(env, mdd->mdd_child, th); }
void mdd_trans_stop(const struct lu_env *env, struct mdd_device *mdd, int result, struct thandle *handle) { handle->th_result = result; mdd_child_ops(mdd)->dt_trans_stop(env, handle); }
struct thandle *mdd_trans_create(const struct lu_env *env, struct mdd_device *mdd) { return mdd_child_ops(mdd)->dt_trans_create(env, mdd->mdd_child); }