25 #ifndef __MOTR_CLIENT_INTERNAL_H__ 26 #define __MOTR_CLIENT_INTERNAL_H__ 29 #define M0_CLIENT_THREAD_ENTER M0_THREAD_ENTER 31 #define M0_CLIENT_THREAD_ENTER 34 #define OP_OBJ2CODE(op_obj) op_obj->oo_oc.oc_op.op_code 36 #define OP_IDX2CODE(op_idx) op_idx->oi_oc.oc_op.op_code 39 #define CLIENT_FOR_M0T1FS 72 #ifdef CLIENT_FOR_M0T1FS 78 #define MOTR_MDCOB_LOOKUP_SKIP 3 257 #ifdef CLIENT_FOR_M0T1FS 471 M0_DEFAULT_BUF_SHIFT = 12,
472 #elif defined (CONFIG_AARCH64) 473 M0_DEFAULT_BUF_SHIFT = 16,
475 #error "The platform is not supported" 499 M0_NETBUF_MASK = 4096 - 1,
500 M0_NETBUF_SHIFT = 12,
501 #elif defined (CONFIG_AARCH64) 502 M0_NETBUF_MASK = 65536 - 1,
503 M0_NETBUF_SHIFT = 16,
505 #error "The platform is not supported" 594 #ifdef CLIENT_FOR_M0T1FS 756 M0_INTERNAL
struct m0_op *
835 uint64_t container_id);
962 M0_INTERNAL
struct m0_obj*
struct m0_mutex rlr_mutex
struct m0_sm_group * os_sm_grp
struct m0_fid m0c_root_fid
M0_INTERNAL bool m0__is_oostore(struct m0_client *instance)
struct m0_htable m0c_mock_entities
bool m0c_astthread_active
struct m0_fid m0c_profile_fid
struct m0_bufvec * ia_data
M0_INTERNAL struct m0_rpc_session * m0_obj_container_id_to_session(struct m0_pool_version *pv, uint64_t container_id)
struct m0_htable m0c_rm_ctxs
M0_INTERNAL bool m0__obj_is_di_enabled(struct m0_op_io *ioo)
uint64_t * ioo_failed_nodes
M0_INTERNAL int m0_layout_mds_lookup(struct m0_client *m0c, uint64_t lid, struct m0_client_layout **l_out)
M0_INTERNAL struct m0_op * m0__ioo_to_op(struct m0_op_io *ioo)
void m0_op_fini(struct m0_op *op)
M0_INTERNAL struct m0_fid m0__obj_pver(struct m0_obj *obj)
static struct io_request req
struct m0_pool_version * pv
struct m0_op_common mdo_oc
struct dix_req * oi_dix_req
const struct m0_op_io_ops * ioo_ops
M0_INTERNAL int m0__cob_poolversion_get(struct m0_obj *obj)
struct m0_chan m0c_io_wait
struct m0_sm_group * oo_sm_grp
struct m0_clink m0c_conf_ready
M0_INTERNAL int obj_fid_make_name(char *name, size_t name_len, const struct m0_fid *fid)
struct m0_net_buffer_pool m0c_buffer_pool
M0_INTERNAL int m0_op_get(struct m0_op **op, size_t size)
struct m0_clink m0c_conf_exp
static struct m0_clovis * m0c
enum m0_obj_opcode ia_opcode
struct m0_sm_group m0c_sm_group
struct m0_rm_remote rmc_creditor
struct m0_sm_timer oc_sm_timer
struct sync_request * os_req
struct m0_reqh_service_ctx * m0c_ha_rsctx
M0_INTERNAL int m0__obj_pool_version_get(struct m0_obj *obj, struct m0_pool_version **pv)
int(* lo_io_build)(struct m0_io_args *io_args, struct m0_op **op)
struct m0_op_common oi_oc
M0_INTERNAL bool m0__is_update_op(struct m0_op *op)
struct m0_bufvec * oi_keys
M0_INTERNAL int m0__obj_namei_send(struct m0_op_obj *oo)
M0_INTERNAL int m0_op_executed(struct m0_op *op)
M0_INTERNAL int m0__obj_attr_get_sync(struct m0_obj *obj)
M0_INTERNAL uint64_t m0__obj_lid(struct m0_obj *obj)
struct m0_rm_owner rmc_owner
M0_INTERNAL bool m0__obj_pool_version_is_valid(const struct m0_obj *obj)
M0_INTERNAL struct m0_client * m0__entity_instance(const struct m0_entity *entity)
M0_INTERNAL struct m0_obj * m0__obj_entity(struct m0_entity *entity)
struct m0_net_domain m0c_ndom
M0_INTERNAL int m0__obj_namei_cancel(struct m0_op *op)
M0_INTERNAL int m0__io_ref_get(struct m0_client *m0c)
struct m0_semaphore cpus_sem
M0_INTERNAL struct m0_file * m0_client_fop_to_file(struct m0_fop *fop)
uint64_t * ioo_failed_session
struct m0_rm_incoming rlr_in
M0_INTERNAL bool m0_op_obj_invariant(struct m0_op_obj *oo)
M0_INTERNAL bool m0__obj_is_parity_verify_mode(struct m0_client *instance)
struct m0_pools_common m0c_pools_common
struct nw_xfer_request ioo_nwxfer
M0_INTERNAL bool entity_id_is_valid(const struct m0_uint128 *id)
void(* oc_cb_free)(struct m0_op_common *oc)
struct m0_idx_service_ctx m0c_idx_svc_ctx
struct m0_chan m0c_conf_ready_chan
M0_INTERNAL uint64_t m0__obj_layout_id_get(struct m0_op_obj *oo)
M0_INTERNAL bool m0__obj_poolversion_is_valid(const struct m0_obj *obj)
struct m0_chan ioo_completion
enum sns_repair_state ioo_sns_state
const struct m0_bob_type op_bobtype
struct m0_indexvec ioo_ext
struct m0_motr_ha m0c_motr_ha
M0_HT_DECLARE(rm_ctx, M0_INTERNAL, struct m0_rm_lock_ctx, struct m0_fid)
M0_INTERNAL struct m0_confc * m0_confc(struct m0_client *m0c)
M0_INTERNAL struct m0_client * m0__oo_instance(struct m0_op_obj *oo)
M0_INTERNAL void m0__io_ref_put(struct m0_client *m0c)
struct m0_indexvec * ia_ext
struct m0_bufvec * ia_attr
const struct m0_bob_type ar_bobtype
M0_INTERNAL enum m0_client_layout_type m0__obj_layout_type(struct m0_obj *obj)
struct m0_bufvec ioo_data
struct m0_sm_ast ioo_done_ast
M0_INTERNAL int m0_op_alloc(struct m0_op **op, size_t op_size)
uint64_t ioo_rmw_read_pages
enum m0_pbuf_type ioo_pbuf_type
struct m0_rw_lockable rmc_rw_file
M0_INTERNAL int m0__idx_cancel(struct m0_op_idx *oi)
int(* lo_alloc)(struct m0_client_layout **)
M0_INTERNAL int m0_op_init(struct m0_op *op, const struct m0_sm_conf *conf, struct m0_entity *entity)
void(* oc_cb_fini)(struct m0_op_common *oc)
M0_INTERNAL bool m0__is_read_op(struct m0_op *op)
struct m0_confc_update_state m0c_confc_state
struct m0_hlink rmc_hlink
struct m0_sm_conf entity_conf
struct m0_op_obj * icr_oo
static struct m0_clink clink[RDWR_REQUEST_MAX]
struct m0_op_common oo_oc
M0_BOB_DECLARE(M0_INTERNAL, m0_op_common)
void(* lo_put)(struct m0_client_layout *)
void(* oc_cb_stable)(void *args)
struct m0_fid m0c_process_fid
M0_INTERNAL int m0_client_global_init(void)
M0_INTERNAL int m0_obj_lock_get_sync(struct m0_obj *obj, struct m0_rm_lock_req *req, enum m0_rm_rwlock_req_type rw_type)
static struct m0_client cinst
M0_INTERNAL void m0__obj_attr_set(struct m0_obj *obj, struct m0_fid pver, uint64_t lid)
struct m0_clink m0c_conf_ready_async
struct m0_sm_group * oi_sm_grp
struct m0_ref m0c_ongoing_io
void(* oc_cb_executed)(void *args)
struct m0_net_xprt * m0c_xprt
M0_INTERNAL void m0_entity_init(struct m0_entity *entity, struct m0_realm *parent, const struct m0_uint128 *id, const enum m0_entity_type type)
M0_INTERNAL bool m0_op_obj_ast_rc_invariant(struct m0_ast_rc *ar)
M0_INTERNAL struct m0_client * m0__idx_instance(const struct m0_idx *idx)
M0_INTERNAL struct m0_client * m0__obj_instance(const struct m0_obj *obj)
M0_INTERNAL bool m0__obj_is_cksum_validation_allowed(struct m0_op_io *ioo)
struct m0_bufvec * oi_vals
struct m0_dtm0_domain m0c_dtm0_domain
M0_INTERNAL struct m0_client * m0__op_instance(const struct m0_op *op)
void(* oc_cb_cancel)(struct m0_op_common *oc)
struct m0_thread m0c_astthread
struct m0_htable * rmc_htable
M0_INTERNAL void m0__obj_op_done(struct m0_op *op)
enum initlift_direction m0c_initlift_direction
struct m0_rpc_machine m0c_rpc_machine
static struct m0_fop * fop
M0_INTERNAL int m0_obj_lock_get(struct m0_obj *obj, struct m0_rm_lock_req *req, struct m0_clink *clink, enum m0_rm_rwlock_req_type rw_type)
static struct m0 instance
M0_INTERNAL int m0_op_stable(struct m0_op *op)
M0_INTERNAL bool entity_invariant_locked(const struct m0_entity *ent)
enum m0_cob_req_states M0_XCA_ENUM
struct m0_fop * oo_mds_fop
M0_INTERNAL int m0__obj_io_build(struct m0_io_args *args, struct m0_op **op)
#define M0_MKTIME(secs, ns)
M0_INTERNAL int m0_op_failed(struct m0_op *op)
void(* oc_cb_failed)(void *args)
void(* oc_cb_replied)(struct m0_op_common *oc)
M0_INTERNAL struct m0_locality * m0__locality_pick(struct m0_client *cinst)
M0_INTERNAL void m0_client_init_io_op(void)
struct m0_layout_instance * oo_layout_instance
int(* lo_get)(struct m0_client_layout *)
const struct m0_bob_type oo_bobtype
void(* oc_cb_launch)(struct m0_op_common *oc)
M0_INTERNAL int m0__obj_layout_instance_build(struct m0_client *cinst, const uint64_t layout_id, const struct m0_fid *fid, struct m0_layout_instance **linst)
const struct m0_bob_type oc_bobtype
struct m0_fid rmc_own_fid
struct m0_clink ioo_clink
struct m0_bufvec ioo_attr
struct m0_sm m0c_initlift_sm
struct m0_atomic64 m0c_pending_io_nr
struct m0_sm_conf m0_op_conf
bool m0_op_md_invariant(const struct m0_op_md *mop)
struct pargrp_iomap ** ioo_iomaps
M0_INTERNAL bool entity_invariant_full(struct m0_entity *ent)
M0_INTERNAL bool m0_op_io_invariant(const struct m0_op_io *iop)
M0_INTERNAL void m0_client_global_fini(void)
struct m0_dtm0_service * m0c_dtms
struct m0_config * m0c_config
struct m0_op_common os_oc