X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Fobdclass%2Fllog_internal.h;h=075214118d0040dc1dcc11d32e49713d83f976a0;hb=2120ef466f9748774086177a3119fe641067a53d;hp=99602372844e05047834f8a3d64edd9ec98da833;hpb=d14eabf637e32a541427e350d69d472adc76d261;p=fs%2Flustre-release.git diff --git a/lustre/obdclass/llog_internal.h b/lustre/obdclass/llog_internal.h index 9960237..0752141 100644 --- a/lustre/obdclass/llog_internal.h +++ b/lustre/obdclass/llog_internal.h @@ -26,6 +26,8 @@ /* * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. + * + * Copyright (c) 2012, 2013, Intel Corporation. */ /* * This file is part of Lustre, http://www.lustre.org/ @@ -43,8 +45,7 @@ struct llog_process_info { void *lpi_cbdata; void *lpi_catdata; int lpi_rc; - int lpi_flags; - cfs_completion_t lpi_completion; + struct completion lpi_completion; const struct lu_env *lpi_env; }; @@ -52,17 +53,11 @@ struct llog_process_info { struct llog_thread_info { struct lu_attr lgi_attr; struct lu_fid lgi_fid; - struct llog_logid lgi_logid; struct dt_object_format lgi_dof; - struct llog_process_data lgi_lpd; - struct lustre_mdt_attrs lgi_lma_attr; - struct lu_buf lgi_buf; loff_t lgi_off; - struct llog_rec_hdr lgi_lrh; struct llog_rec_tail lgi_tail; - struct llog_logid_rec lgi_lid; }; extern struct lu_context_key llog_thread_key; @@ -76,15 +71,28 @@ static inline struct llog_thread_info *llog_info(const struct lu_env *env) return lgi; } +static inline void +lustre_build_llog_lvfs_oid(struct llog_logid *logid, __u64 ino, __u32 gen) +{ + ostid_set_seq_llog(&logid->lgl_oi); + ostid_set_id(&logid->lgl_oi, ino); + logid->lgl_ogen = gen; +} + int llog_info_init(void); void llog_info_fini(void); -int llog_cat_id2handle(struct llog_handle *cathandle, struct llog_handle **res, - struct llog_logid *logid); +void llog_handle_get(struct llog_handle *loghandle); +void llog_handle_put(struct llog_handle *loghandle); +int llog_cat_id2handle(const struct lu_env *env, struct llog_handle *cathandle, + struct llog_handle **res, struct llog_logid *logid); int class_config_dump_handler(const struct lu_env *env, struct llog_handle *handle, struct llog_rec_hdr *rec, void *data); +int class_config_yaml_output(struct llog_rec_hdr *rec, char *buf, int size); int llog_process_or_fork(const struct lu_env *env, struct llog_handle *loghandle, llog_cb_t cb, void *data, void *catdata, bool fork); +int llog_cat_cleanup(const struct lu_env *env, struct llog_handle *cathandle, + struct llog_handle *loghandle, int index); #endif