Motr  M0
network.c File Reference
#include "lib/errno.h"
#include "lib/memory.h"
#include "lib/misc.h"
#include "lib/vec.h"
#include "motr/magic.h"
#include "net/net.h"
#include "net/test/network.h"
Include dependency graph for network.c:

Go to the source code of this file.

Data Structures

struct  net_test_network_bd
 
struct  net_test_network_bds_header
 

Functions

static struct m0_net_test_network_ctxcb_ctx_extract (const struct m0_net_buffer_event *ev)
 
static uint32_t cb_buf_index_extract (const struct m0_net_buffer_event *ev, struct m0_net_test_network_ctx *ctx, enum m0_net_queue_type q)
 
static void cb_default (const struct m0_net_buffer_event *ev)
 
static int net_test_buf_init (struct m0_net_buffer *buf, m0_bcount_t size, struct m0_net_test_network_ctx *ctx, bool is_pingbuf)
 
static void net_test_buf_fini (struct m0_net_buffer *buf, struct m0_net_domain *dom)
 
static void net_test_bufs_fini (struct m0_net_buffer *buf, uint32_t buf_nr, struct m0_net_domain *dom)
 
static int net_test_bufs_init (struct m0_net_buffer *buf, uint32_t buf_nr, m0_bcount_t size, struct m0_net_test_network_ctx *ctx)
 
static void net_test_tm_stop (struct m0_net_transfer_mc *tm)
 
bool m0_net_test_network_ctx_invariant (struct m0_net_test_network_ctx *ctx)
 
static int net_test_network_ctx_initfini (struct m0_net_test_network_ctx *ctx, struct m0_net_test_network_cfg *cfg, const char *tm_addr)
 
int m0_net_test_network_ctx_init (struct m0_net_test_network_ctx *ctx, struct m0_net_test_network_cfg *cfg, const char *tm_addr)
 
void m0_net_test_network_ctx_fini (struct m0_net_test_network_ctx *ctx)
 
int m0_net_test_network_ep_add (struct m0_net_test_network_ctx *ctx, const char *ep_addr)
 
int m0_net_test_network_ep_add_slist (struct m0_net_test_network_ctx *ctx, const struct m0_net_test_slist *eps)
 
static int net_test_buf_queue (struct m0_net_test_network_ctx *ctx, struct m0_net_buffer *nb, enum m0_net_queue_type q)
 
int m0_net_test_network_msg_send_ep (struct m0_net_test_network_ctx *ctx, uint32_t buf_ping_index, struct m0_net_end_point *ep)
 
int m0_net_test_network_msg_send (struct m0_net_test_network_ctx *ctx, uint32_t buf_ping_index, uint32_t ep_index)
 
int m0_net_test_network_msg_recv (struct m0_net_test_network_ctx *ctx, uint32_t buf_ping_index)
 
int m0_net_test_network_bulk_enqueue (struct m0_net_test_network_ctx *ctx, int32_t buf_bulk_index, int32_t ep_index, enum m0_net_queue_type q)
 
void m0_net_test_network_buffer_dequeue (struct m0_net_test_network_ctx *ctx, enum m0_net_test_network_buf_type buf_type, int32_t buf_index)
 
 TYPE_DESCR (net_test_network_bd)
 
 TYPE_DESCR (net_test_network_bds_header)
 
static m0_bcount_t network_bd_serialize (enum m0_net_test_serialize_op op, struct m0_net_buffer *buf, struct m0_bufvec *bv, m0_bcount_t bv_offset)
 
static m0_bcount_t network_bds_serialize (enum m0_net_test_serialize_op op, size_t *nr, struct m0_bufvec *bv)
 
static size_t network_bd_nr_add (struct m0_net_test_network_ctx *ctx, uint32_t buf_ping_index, int32_t value)
 
m0_bcount_t m0_net_test_network_bd_serialize (enum m0_net_test_serialize_op op, struct m0_net_test_network_ctx *ctx, uint32_t buf_bulk_index, uint32_t buf_ping_index, m0_bcount_t offset)
 
size_t m0_net_test_network_bd_nr (struct m0_net_test_network_ctx *ctx, uint32_t buf_ping_index)
 
void m0_net_test_network_bd_nr_dec (struct m0_net_test_network_ctx *ctx, uint32_t buf_ping_index)
 
struct m0_net_bufferm0_net_test_network_buf (struct m0_net_test_network_ctx *ctx, enum m0_net_test_network_buf_type buf_type, uint32_t buf_index)
 
int m0_net_test_network_buf_resize (struct m0_net_test_network_ctx *ctx, enum m0_net_test_network_buf_type buf_type, uint32_t buf_index, m0_bcount_t new_size)
 
void m0_net_test_network_buf_fill (struct m0_net_test_network_ctx *ctx, enum m0_net_test_network_buf_type buf_type, uint32_t buf_index, uint8_t fill)
 
struct m0_net_end_pointm0_net_test_network_ep (struct m0_net_test_network_ctx *ctx, size_t ep_index)
 
ssize_t m0_net_test_network_ep_search (struct m0_net_test_network_ctx *ctx, const char *ep_addr)
 
struct m0_net_test_network_timeouts m0_net_test_network_timeouts_never (void)
 

Variables

static struct m0_net_buffer_callbacks net_test_network_buf_cb