45 static const char NTC_ADDR[] =
"0@lo:12345:42:%d";
110 for (
i = 0;
i <
nr; ++
i) {
199 for (
i = 0;
i <
nr; ++
i)
212 for (
i = 0;
i <
nr; ++
i)
222 for (
i = 0;
i <
nr; ++
i)
256 if (ep_index ==
NULL) {
298 "0@lo:1:2:3", 64) == 0);
377 for (
i = 0;
i <
nr; ++
i) {
428 for (
i = 0;
i <
nr; ++
i) {
430 if (
rc == -ETIMEDOUT)
476 for (
i = 0;
i <
nr; ++
i) {
570 for (
i = 0;
i <
nr; ++
i) {
608 if (
rc == -ETIMEDOUT)
675 if (console_thread) {
680 strncat(
buf,
",", 2);
686 nodes[0].ntcn_addr,
'`');
695 if (console_thread) {
728 "cmd_ut #%d", (
int)
i);
static void commands_node_loop(struct net_test_cmd_node *node, struct m0_net_test_cmd *cmd)
struct m0_semaphore ntcn_signal
static int make_addr(char *s, size_t s_len, int svc_id, bool add_comma)
#define M0_ALLOC_ARR(arr, nr)
static m0_time_t timeout_get(void)
struct m0_net_test_slist ntci_ep
int m0_net_test_commands_init(struct m0_net_test_cmd_ctx *ctx, const char *cmd_ep, m0_time_t send_timeout, m0_net_test_commands_send_cb_t send_cb, struct m0_net_test_slist *ep_list)
static int(* diff[M0_PARITY_CAL_ALGO_NR])(struct m0_parity_math *math, struct m0_buf *old, struct m0_buf *new, struct m0_buf *parity, uint32_t index)
static struct m0_net_test_slist slist_console
bool ntcn_barriers_disabled
int m0_thread_join(struct m0_thread *q)
void m0_net_test_cmd_ut_single(void)
static void barrier_fini(struct net_test_cmd_node *node)
const m0_time_t M0_TIME_NEVER
static void commands_ut_send_all(size_t nr)
static char addr_node[NTC_ADDR_LEN_MAX *NTC_MULTIPLE_NODES]
static struct net_test_cmd_node * node
uint64_t m0_time_nanoseconds(const m0_time_t time)
static const char NTC_ADDR[]
int const char const void * value
static void commands_ut_recv_type(struct net_test_cmd_node *node, struct m0_net_test_cmd_ctx *ctx, m0_time_t deadline, enum m0_net_test_cmd_type type)
static m0_time_t timeout_get_abs(void)
int m0_net_test_commands_recv_enqueue(struct m0_net_test_cmd_ctx *ctx, size_t buf_index)
#define M0_THREAD_INIT(thread, TYPE, init, func, arg, namefmt,...)
int m0_net_test_slist_init(struct m0_net_test_slist *slist, const char *str, char delim)
m0_time_t m0_time(uint64_t secs, long ns)
static void commands_ut_recv(struct net_test_cmd_node *node, struct m0_net_test_cmd_ctx *ctx, m0_time_t deadline, ssize_t *ep_index)
static void commands_console_loop(struct net_test_cmd_node *node, struct m0_net_test_cmd *cmd)
m0_bcount_t ntci_msg_size
static struct m0_net_test_cmd_ctx console
bool m0_net_test_slist_unique(const struct m0_net_test_slist *slist)
static void net_test_command_ut(size_t nr)
static struct m0_net_test_slist slist_node
static bool commands_ut_assert(struct net_test_cmd_node *node, bool value)
static void commands_ut_send_all_type(size_t nr, enum m0_net_test_cmd_type type)
m0_time_t ntci_buf_send_timeout
void m0_net_test_commands_received_free(struct m0_net_test_cmd *cmd)
void m0_net_test_commands_fini(struct m0_net_test_cmd_ctx *ctx)
struct m0_net_test_cmd_init ntc_init
enum m0_net_test_role ntci_role
int m0_net_test_commands_send(struct m0_net_test_cmd_ctx *ctx, struct m0_net_test_cmd *cmd)
static void commands_ut_recv_all(size_t nr, m0_time_t deadline)
void m0_net_test_slist_fini(struct m0_net_test_slist *slist)
m0_time_t m0_time_now(void)
void m0_net_test_commands_send_wait_all(struct m0_net_test_cmd_ctx *ctx)
static struct net_test_cmd_node nodes[NTC_MULTIPLE_NODES]
static void commands_node_thread(struct net_test_cmd_node *node)
void m0_thread_fini(struct m0_thread *q)
static void commands_ut_send(struct net_test_cmd_node *node, struct m0_net_test_cmd_ctx *ctx)
int m0_net_test_commands_recv(struct m0_net_test_cmd_ctx *ctx, struct m0_net_test_cmd *cmd, m0_time_t deadline)
M0_INTERNAL int m0_semaphore_init(struct m0_semaphore *semaphore, unsigned value)
void * m0_alloc(size_t size)
static void flag_set(int index)
static void barrier_with_main(struct net_test_cmd_node *node)
static const size_t NTC_ADDR_LEN
uint64_t ntci_msg_concurrency
m0_time_t m0_time_add(const m0_time_t t1, const m0_time_t t2)
static struct fdmi_ctx ctx
uint64_t m0_time_seconds(const m0_time_t time)
enum m0_net_test_type ntci_type
static void commands_node_thread2(struct net_test_cmd_node *node)
static bool is_flags_set(size_t nr, bool set)
void m0_net_test_cmd_ut_multiple2(void)
static bool is_flags_set_odd(size_t nr)
static void barrier_with_nodes(void)
static void flags_reset(size_t nr)
static void send_all(size_t nr, struct m0_net_test_cmd *cmd)
static char addr_console[NTC_ADDR_LEN_MAX]
static const char NTC_DELIM
struct m0_net_test_cmd_done ntc_done
static void fill_addr(uint32_t nr)
#define M0_ALLOC_PTR(ptr)
M0_INTERNAL void m0_semaphore_fini(struct m0_semaphore *semaphore)
m0_time_t m0_time_from_now(uint64_t secs, long ns)
unsigned long ntcn_failures
enum m0_net_test_cmd_type ntc_type
void m0_net_test_cmd_ut_multiple(void)
#define M0_MKTIME(secs, ns)
struct m0_net_test_cmd_ctx ntcn_ctx
M0_INTERNAL void m0_semaphore_down(struct m0_semaphore *semaphore)
struct m0_semaphore ntcn_wait
M0_INTERNAL void m0_semaphore_up(struct m0_semaphore *semaphore)
struct m0_thread ntcn_thread
static struct m0_addb2_source * s
static void barrier_disable(struct net_test_cmd_node *node)
static void barrier_init(struct net_test_cmd_node *node)
#define M0_IMPOSSIBLE(fmt,...)