RETURN(result);
}
-int fld_server_init(struct lu_context *ctx, struct fld *fld,
+int fld_server_init(const struct lu_context *ctx, struct fld *fld,
struct dt_device *dt)
{
int result;
LUSTRE_FLD0_NAME);
else
result = -ENOMEM;
- if (result != 0) {
- fld_iam_fini(fld);
- fld_server_fini(fld);
- }
+ if (result != 0)
+ fld_server_fini(ctx, fld);
return result;
}
EXPORT_SYMBOL(fld_server_init);
-void fld_server_fini(struct fld *fld)
+void fld_server_fini(const struct lu_context *ctx, struct fld *fld)
{
struct list_head *pos, *n;
}
spin_unlock(&fld_list_head.fld_lock);
lu_device_put(&fld->fld_dt->dd_lu_dev);
- fld_iam_fini(fld);
+ fld_iam_fini(ctx, fld);
fld->fld_dt = NULL;
}
EXPORT_SYMBOL(fld_server_fini);
int fld_handle_lookup(const struct lu_context *ctx,
struct fld *fld, fidseq_t seq_num, mdsno_t *mds);
-int fld_iam_init(struct lu_context *ctx, struct fld *fld);
-void fld_iam_fini(struct fld *fld);
+int fld_iam_init(const struct lu_context *ctx, struct fld *fld);
+void fld_iam_fini(const struct lu_context *ctx, struct fld *fld);
#endif
int (*dio_probe)(const struct lu_context *ctxt, struct dt_object *dt,
const struct dt_index_features *feat);
- int (*dio_init)(struct lu_context *ctxt, struct dt_device *dt,
- struct dt_object *dt_obj, void *container, void *param);
-
- int (*dio_fini)(struct dt_object *dt_obj);
+ int (*dio_init)(const struct lu_context *ctxt, struct dt_object *obj,
+ void *container, void *param);
+
+ int (*dio_fini)(const struct lu_context *ctxt, struct dt_object *obj);
};
struct dt_device {
struct dt_index_operations *do_index_ops;
};
-struct dt_object *dt_object_find(struct lu_context *ctxt,
- struct dt_device *d,
- struct lu_fid *f);
int dt_object_init(struct dt_object *obj,
struct lu_object_header *h, struct lu_device *d);
int dt_txn_hook_commit(const struct lu_context *ctx,
struct dt_device *dev, struct thandle *txn);
+struct dt_object *dt_store_open(const struct lu_context *ctx,
+ struct dt_device *dt, const char *name,
+ struct lu_fid *fid);
+
#endif /* __LUSTRE_DT_OBJECT_H */
struct ptlrpc_service *fld_service;
struct dt_device *fld_dt;
struct dt_object *fld_obj;
- void *fld_container;
+ struct lu_fid fld_fid; /* used during initialization */
};
-int fld_server_init(struct lu_context *ctx, struct fld *fld,
+int fld_server_init(const struct lu_context *ctx, struct fld *fld,
struct dt_device *dt);
-void fld_server_fini(struct fld *fld);
+void fld_server_fini(const struct lu_context *ctx, struct fld *fld);
#endif /* __LINUX_OBD_CLASS_H */