|
libmooshika
|
RDMA transport instance. More...
#include <mooshika.h>
Public Types | |
| enum | msk_state { MSK_INIT, MSK_LISTENING, MSK_ADDR_RESOLVED, MSK_ROUTE_RESOLVED, MSK_CONNECT_REQUEST, MSK_CONNECTED, MSK_CLOSING, MSK_CLOSED, MSK_ERROR } |
Data Fields | |
| enum msk_trans::msk_state | state |
| tracks the transport state machine for connection setup and tear down More... | |
| struct rdma_cm_id * | cm_id |
| The RDMA CM ID. More... | |
| struct rdma_event_channel * | event_channel |
| struct ibv_comp_channel * | comp_channel |
| struct msk_pd * | pd |
| Protection Domain pointer list. More... | |
| struct ibv_qp * | qp |
| Queue Pair pointer. More... | |
| struct ibv_srq * | srq |
| Shared Receive Queue pointer. More... | |
| struct ibv_cq * | cq |
| Completion Queue pointer. More... | |
| disconnect_callback_t | disconnect_callback |
| void * | private_data |
| long | timeout |
| Number of mSecs to wait for connection management events. More... | |
| int | sq_depth |
| The depth of the Send Queue. More... | |
| int | max_send_sge |
| Maximum number of s/g elements per send. More... | |
| int | rq_depth |
| The depth of the Receive Queue. More... | |
| int | max_recv_sge |
| Maximum number of s/g elements per recv. More... | |
| char * | node |
| The remote peer's hostname. More... | |
| char * | port |
| The service port (or name) More... | |
| int | conn_type |
| RDMA Port space, probably RDMA_PS_TCP. More... | |
| int | server |
| 0 if client, connection backlog on server, -1 (MSK_SERVER_CHILD) if server's accepted connection More... | |
| int | destroy_on_disconnect |
| set to 1 if mooshika should perform cleanup More... | |
| int | privport |
| set to 1 if mooshika should use a reserved port for client side More... | |
| uint32_t | debug |
| struct rdma_cm_id ** | conn_requests |
| temporary child cm_id, only used for server More... | |
| struct msk_ctx * | wctx |
| pointer to actual context data More... | |
| struct msk_ctx * | rctx |
| pointer to actual context data More... | |
| pthread_mutex_t | cm_lock |
| lock for connection events More... | |
| pthread_cond_t | cm_cond |
| cond for connection events More... | |
| struct ibv_recv_wr * | bad_recv_wr |
| struct ibv_send_wr * | bad_send_wr |
| struct msk_stats | stats |
| char * | stats_prefix |
| int | stats_sock |
RDMA transport instance.
| enum msk_trans::msk_state |
| struct ibv_recv_wr* msk_trans::bad_recv_wr |
| struct ibv_send_wr* msk_trans::bad_send_wr |
| pthread_cond_t msk_trans::cm_cond |
cond for connection events
Referenced by msk_destroy_trans().
| struct rdma_cm_id* msk_trans::cm_id |
The RDMA CM ID.
Referenced by msk_destroy_trans(), msk_getpd(), and msk_print_devinfo().
| pthread_mutex_t msk_trans::cm_lock |
lock for connection events
Referenced by msk_destroy_trans().
| struct ibv_comp_channel* msk_trans::comp_channel |
| struct rdma_cm_id** msk_trans::conn_requests |
temporary child cm_id, only used for server
| int msk_trans::conn_type |
RDMA Port space, probably RDMA_PS_TCP.
| struct ibv_cq* msk_trans::cq |
Completion Queue pointer.
| uint32_t msk_trans::debug |
Referenced by callback_error(), main(), msk_accept_one_timedwait(), msk_destroy_trans(), msk_post_n_write(), and msk_stats_thread().
| int msk_trans::destroy_on_disconnect |
set to 1 if mooshika should perform cleanup
| disconnect_callback_t msk_trans::disconnect_callback |
| struct rdma_event_channel* msk_trans::event_channel |
| int msk_trans::max_recv_sge |
Maximum number of s/g elements per recv.
| int msk_trans::max_send_sge |
Maximum number of s/g elements per send.
| char* msk_trans::node |
The remote peer's hostname.
| struct msk_pd* msk_trans::pd |
Protection Domain pointer list.
Referenced by msk_getpd().
| char* msk_trans::port |
The service port (or name)
| void* msk_trans::private_data |
Referenced by callback_disconnect(), callback_recv(), handle_trans(), and main().
| int msk_trans::privport |
set to 1 if mooshika should use a reserved port for client side
| struct ibv_qp* msk_trans::qp |
Queue Pair pointer.
| struct msk_ctx* msk_trans::rctx |
pointer to actual context data
| int msk_trans::rq_depth |
The depth of the Receive Queue.
| int msk_trans::server |
0 if client, connection backlog on server, -1 (MSK_SERVER_CHILD) if server's accepted connection
Referenced by handle_trans(), and main().
| int msk_trans::sq_depth |
The depth of the Send Queue.
| struct ibv_srq* msk_trans::srq |
Shared Receive Queue pointer.
Referenced by setup_recv().
| enum msk_trans::msk_state msk_trans::state |
tracks the transport state machine for connection setup and tear down
Referenced by callback_error(), callback_read(), handle_trans(), and msk_destroy_trans().
| struct msk_stats msk_trans::stats |
Referenced by handle_trans(), and msk_stats_thread().
| char* msk_trans::stats_prefix |
| int msk_trans::stats_sock |
Referenced by msk_stats_thread().
| long msk_trans::timeout |
Number of mSecs to wait for connection management events.
| struct msk_ctx* msk_trans::wctx |
pointer to actual context data
1.8.10