|
static void | rm_ctx_init (struct m0_rm_lock_ctx *ctx, struct m0_client *m0c, struct m0_fid *fid) |
|
static void | rm_ctx_fini (struct m0_ref *ref) |
|
static void | rm_lock_req_init (struct m0_clink *clink, struct m0_rm_owner *owner, struct m0_rm_lock_req *req, enum m0_rm_rwlock_req_type rw_type) |
|
static void | rm_lock_req_fini (struct m0_rm_lock_req *req) |
|
static void | obj_lock_incoming_complete (struct m0_rm_incoming *in, int32_t rc) |
|
static void | obj_lock_incoming_conflict (struct m0_rm_incoming *in) |
|
static bool | rm_key_eq (const void *key1, const void *key2) |
|
static uint64_t | rm_hash_func (const struct m0_htable *htable, const void *k) |
|
| M0_HT_DESCR_DEFINE (rm_ctx, "Hash-table for RM locks", M0_INTERNAL, struct m0_rm_lock_ctx, rmc_hlink, rmc_magic, M0_RM_MAGIC, M0_RM_HEAD_MAGIC, rmc_key, rm_hash_func, rm_key_eq) |
|
| M0_HT_DEFINE (rm_ctx, M0_INTERNAL, struct m0_rm_lock_ctx, struct m0_fid) |
|
int | m0_obj_lock_init (struct m0_obj *obj) |
|
void | m0_obj_lock_fini (struct m0_obj *obj) |
|
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) |
|
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) |
|
int | m0_obj_write_lock_get (struct m0_obj *obj, struct m0_rm_lock_req *req, struct m0_clink *clink) |
|
int | m0_obj_write_lock_get_sync (struct m0_obj *obj, struct m0_rm_lock_req *req) |
|
int | m0_obj_read_lock_get (struct m0_obj *obj, struct m0_rm_lock_req *req, struct m0_clink *clink) |
|
int | m0_obj_read_lock_get_sync (struct m0_obj *obj, struct m0_rm_lock_req *req) |
|
void | m0_obj_lock_put (struct m0_rm_lock_req *req) |
|