29 #define SERVER_ENDPOINT_ADDR "0@lo:12345:34:1" 30 #define SERVER_ENDPOINT M0_NET_XPRT_PREFIX_DEFAULT":"SERVER_ENDPOINT_ADDR 31 #define SERVER_DB "server_db" 32 #define SERVER_STOB "server_stob" 33 #define SERVER_ADDB_STOB "linuxstob:server_addb_stob" 34 #define SERVER_LOG "rmserver.log" 236 for (
rc = 0;
rc < 2; ++
rc) {
255 for (
rc = 0;
rc <= 1; ++
rc) {
struct m0_rm_resource_type * r_type
M0_INTERNAL void m0_chan_wait(struct m0_clink *link)
struct m0_reqh_service * rmservice[SERVER_NR]
M0_INTERNAL void m0_ut_rpc_mach_init_and_add(struct m0_ut_rpc_mach_ctx *ctx)
enum m0_rm_remote_state rem_state
static struct rm_ctx * server_ctx
M0_INTERNAL void m0_clink_init(struct m0_clink *link, m0_chan_cb_t cb)
static struct m0_rm_remote creditor
struct rm_ctx rm_ctxs[SERVER_NR]
M0_INTERNAL void m0_clink_del_lock(struct m0_clink *link)
int m0_thread_join(struct m0_thread *q)
struct rm_ut_data rm_test_data
const m0_time_t M0_TIME_NEVER
static struct m0_rpc_server_ctx sctx
int m0_rpc_server_start(struct m0_rpc_server_ctx *sctx)
struct m0_ut_rpc_mach_ctx rc_rmach_ctx
struct m0_cob_domain_id rmc_cob_id
M0_INTERNAL void m0_file_lock(struct m0_rm_owner *owner, struct m0_rm_incoming *req)
struct m0_rm_resource_type * rd_rt
void flock_client_utdata_ops_set(struct rm_ut_data *data)
M0_INTERNAL void m0_rm_remote_init(struct m0_rm_remote *rem, struct m0_rm_resource *res)
#define M0_THREAD_INIT(thread, TYPE, init, func, arg, namefmt,...)
struct m0_rpc_session * rem_session
M0_INTERNAL int m0_rm_owner_timedwait(struct m0_rm_owner *owner, uint64_t state, const m0_time_t abs_timeout)
M0_INTERNAL int m0_sm_timedwait(struct m0_sm *mach, uint64_t states, m0_time_t deadline)
struct m0_chan rm_ut_tests_chan
static void test_flock(struct m0_rm_owner *owner, struct m0_file *file, struct m0_fid *fid, struct m0_rm_remote *creditor, bool unwind)
const struct m0_uint128 m0_rm_no_group
M0_INTERNAL void m0_chan_init(struct m0_chan *chan, struct m0_mutex *ch_guard)
static enum m0_rm_incoming_state incoming_state(const struct m0_rm_incoming *in)
static void rm_client(const int tid)
#define SERVER_ENDPOINT_ADDR
void m0_thread_fini(struct m0_thread *q)
M0_INTERNAL void m0_file_owner_init(struct m0_rm_owner *owner, const struct m0_uint128 *grp_id, struct m0_file *file, struct m0_rm_remote *creditor)
struct m0_net_xprt ** rsx_xprts
M0_INTERNAL void m0_mutex_init(struct m0_mutex *mutex)
static void rm_svc_server(const int tid)
static const struct m0_fid fids[]
void rm_utdata_init(struct rm_ut_data *data, enum obj_type type)
struct m0_rm_domain rd_dom
M0_INTERNAL int m0_reqh_service_setup(struct m0_reqh_service **out, struct m0_reqh_service_type *stype, struct m0_reqh *reqh, struct m0_reqh_context *rctx, const struct m0_fid *fid)
M0_INTERNAL void m0_chan_signal_lock(struct m0_chan *chan)
static struct rm_ctx * client_ctx
void rm_ctx_disconnect(struct rm_ctx *src, const struct rm_ctx *dest)
void m0_clink_add_lock(struct m0_chan *chan, struct m0_clink *link)
struct m0_reqh_service_type m0_rms_type
static void rm_service_start(struct m0_rpc_server_ctx *sctx)
M0_INTERNAL void m0_file_unlock(struct m0_rm_incoming *req)
M0_INTERNAL void m0_rm_remote_fini(struct m0_rm_remote *rem)
#define M0_ALLOC_PTR(ptr)
#define M0_UT_CONF_PROCESS
struct m0_net_xprt ** m0_net_all_xprt_get(void)
static void rm_service_stop(struct m0_rpc_server_ctx *sctx)
M0_INTERNAL void m0_ut_rpc_mach_fini(struct m0_ut_rpc_mach_ctx *ctx)
M0_INTERNAL void m0_rm_owner_windup(struct m0_rm_owner *owner)
static char * server_argv[]
M0_INTERNAL void m0_mutex_fini(struct m0_mutex *mutex)
M0_INTERNAL void m0_clink_fini(struct m0_clink *link)
M0_INTERNAL void m0_rm_owner_unlock(struct m0_rm_owner *owner)
M0_INTERNAL void m0_file_fini(struct m0_file *file)
void m0_rpc_server_stop(struct m0_rpc_server_ctx *sctx)
M0_INTERNAL void m0_rm_owner_lock(struct m0_rm_owner *owner)
M0_INTERNAL void m0_file_owner_fini(struct m0_rm_owner *owner)
struct m0_rpc_session rc_sess[SERVER_NR]
M0_INTERNAL void m0_chan_fini_lock(struct m0_chan *chan)
static struct m0_clink tests_clink[TEST_NR]
struct m0_mutex rm_ut_tests_chan_mutex
struct m0_motr rsx_motr_ctx
void rm_ctx_connect(struct rm_ctx *src, const struct rm_ctx *dest)
M0_INTERNAL void m0_file_init(struct m0_file *file, const struct m0_fid *fid, struct m0_rm_domain *dom, enum m0_di_types di_type)
void rm_utdata_fini(struct rm_ut_data *data, enum obj_type type)