M0_INTERNAL int m0_rm_owner_selfadd(struct m0_rm_owner *owner, struct m0_rm_credit *r)
struct m0_rm_resource_type * r_type
M0_INTERNAL void m0_mutex_unlock(struct m0_mutex *mutex)
static struct m0_list list
enum m0_rm_incoming_type rin_type
struct m0_rm_remote * ro_creditor
bool res_tlist_is_empty(const struct m0_tl *list)
struct rm_ut_data rm_test_data
const m0_time_t M0_TIME_NEVER
enum m0_rm_incoming_policy rin_policy
const struct m0_rm_incoming_ops rings_incoming_ops
struct m0_rm_owner * rd_owner
struct m0_rm_resource_type * rd_rt
struct m0_rm_resource_type * rd_types[M0_RM_RESOURCE_TYPE_ID_MAX]
M0_INTERNAL void m0_rm_domain_init(struct m0_rm_domain *dom)
struct m0_rm_credit rin_want
M0_INTERNAL void m0_mutex_lock(struct m0_mutex *mutex)
bool m0_rm_ur_tlist_contains(const struct m0_tl *list, const struct m0_rm_credit *credit)
struct m0_rm_domain * rt_dom
struct m0_rm_credit rd_credit
struct m0_rm_owner * cr_owner
M0_INTERNAL int m0_rm_owner_timedwait(struct m0_rm_owner *owner, uint64_t state, const m0_time_t abs_timeout)
M0_INTERNAL void m0_rm_incoming_init(struct m0_rm_incoming *in, struct m0_rm_owner *owner, enum m0_rm_incoming_type type, enum m0_rm_incoming_policy policy, uint64_t flags)
bool res_tlist_contains(const struct m0_tl *list, const struct m0_rm_resource *res)
M0_INTERNAL void m0_rm_owner_fini(struct m0_rm_owner *owner)
const struct m0_rm_incoming_ops * rin_ops
static void dom_api_test(void)
static void rt_api_test(void)
void rm_utdata_init(struct rm_ut_data *data, enum obj_type type)
struct m0_rm_domain rd_dom
void(* rtype_unset)(struct rm_ut_data *self)
#define m0_forall(var, nr,...)
const struct rm_ut_data_ops * rd_ops
M0_INTERNAL void m0_rm_credit_put(struct m0_rm_incoming *in)
M0_INTERNAL void m0_rm_credit_init(struct m0_rm_credit *credit, struct m0_rm_owner *owner)
void(* resource_unset)(struct rm_ut_data *self)
bool m0_rm_ur_tlist_is_empty(const struct m0_tl *list)
M0_INTERNAL void m0_rm_owner_windup(struct m0_rm_owner *owner)
struct m0_tl ro_owned[OWOS_NR]
static void m0_fi_enable_once(const char *func, const char *tag)
M0_INTERNAL void m0_rm_incoming_fini(struct m0_rm_incoming *in)
struct m0_rm_incoming rd_in
void rings_utdata_ops_set(struct rm_ut_data *data)
struct m0_rm_resource * rd_res
static void res_api_test(void)
static void owner_api_test(void)
M0_INTERNAL void m0_rm_domain_fini(struct m0_rm_domain *dom)
static void credits_api_test(void)
M0_INTERNAL void m0_rm_credit_get(struct m0_rm_incoming *in)
struct m0_rm_resource * ro_resource
struct m0_tl rt_resources
void rm_utdata_fini(struct rm_ut_data *data, enum obj_type type)