NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
worker_rdmo.c File Reference
#include <stdint.h>
#include <stdlib.h>
#include "worker_rdmo.h"
#include "urom_rdmo.h"
Include dependency graph for worker_rdmo.c:

Go to the source code of this file.

Functions

 DOCA_LOG_REGISTER (UROM::WORKER::RDMO)
 
static ucs_status_t urom_worker_rdmo_am_cb (void *ctx, const void *header, size_t header_length, void *data, size_t length, const ucp_am_recv_param_t *param)
 
static void urom_worker_rdmo_close (struct urom_worker_ctx *worker_ctx)
 
static doca_error_t urom_worker_rdmo_open (struct urom_worker_ctx *ctx)
 
static doca_error_t urom_worker_rdmo_ep_get (struct urom_worker_rdmo *rdmo_worker, void *peer_addr, struct urom_worker_rdmo_ep **rdmo_ep)
 
static struct urom_worker_rdmo_clienturom_worker_rdmo_dest_to_client (struct urom_worker_rdmo *rdmo_worker, uint64_t dest_id)
 
static doca_error_t urom_worker_rdmo_client_init_cmd (struct urom_worker_rdmo *rdmo_worker, struct urom_worker_cmd_desc *cmd_desc)
 
static doca_error_t urom_worker_rdmo_mr_dereg_cmd (struct urom_worker_rdmo *rdmo_worker, struct urom_worker_cmd_desc *cmd_desc)
 
static doca_error_t urom_worker_rdmo_rq_create_cmd (struct urom_worker_rdmo *rdmo_worker, struct urom_worker_cmd_desc *cmd_desc)
 
static doca_error_t urom_worker_rdmo_ep_del (struct urom_worker_rdmo *rdmo_worker, struct urom_worker_rdmo_ep *rdmo_ep)
 
static doca_error_t urom_worker_rdmo_rq_destroy_cmd (struct urom_worker_rdmo *rdmo_worker, struct urom_worker_cmd_desc *cmd_desc)
 
static doca_error_t urom_worker_rdmo_mr_reg_cmd (struct urom_worker_rdmo *rdmo_worker, struct urom_worker_cmd_desc *cmd_desc)
 
static doca_error_t urom_worker_rdmo_cmd_unpack (void *packed_cmd, size_t packed_cmd_len, struct urom_worker_cmd **cmd)
 
static doca_error_t urom_worker_rdmo_worker_cmd (struct urom_worker_ctx *ctx, ucs_list_link_t *cmd_list)
 
static doca_error_t urom_worker_rdmo_progress (struct urom_worker_ctx *ctx, ucs_list_link_t *notif_list)
 
static doca_error_t urom_worker_rdmo_notif_pack (struct urom_worker_notify *notif, size_t *packed_notif_len, void *packed_notif)
 
static doca_error_t urom_worker_rdmo_addr (struct urom_worker_ctx *worker_ctx, void *addr, uint64_t *addr_len)
 
doca_error_t urom_plugin_get_iface (struct urom_plugin_iface *iface)
 
doca_error_t urom_plugin_get_version (uint64_t *version)
 

Variables

static uint64_t plugin_version = 0x01
 
static ucs_mpool_ops_t urom_rdmo_req_mpool_ops
 
static struct urom_worker_rdmo_iface urom_worker_rdmo
 

Function Documentation

◆ DOCA_LOG_REGISTER()

DOCA_LOG_REGISTER ( UROM::WORKER::RDMO  )

◆ urom_plugin_get_iface()

doca_error_t urom_plugin_get_iface ( struct urom_plugin_iface iface)

Definition at line 987 of file worker_rdmo.c.

◆ urom_plugin_get_version()

doca_error_t urom_plugin_get_version ( uint64_t *  version)

Definition at line 997 of file worker_rdmo.c.

◆ urom_worker_rdmo_addr()

static doca_error_t urom_worker_rdmo_addr ( struct urom_worker_ctx worker_ctx,
void *  addr,
uint64_t *  addr_len 
)
static

Definition at line 961 of file worker_rdmo.c.

◆ urom_worker_rdmo_am_cb()

static ucs_status_t urom_worker_rdmo_am_cb ( void *  ctx,
const void *  header,
size_t  header_length,
void *  data,
size_t  length,
const ucp_am_recv_param_t *  param 
)
static

Definition at line 53 of file worker_rdmo.c.

◆ urom_worker_rdmo_client_init_cmd()

static doca_error_t urom_worker_rdmo_client_init_cmd ( struct urom_worker_rdmo rdmo_worker,
struct urom_worker_cmd_desc cmd_desc 
)
static

Definition at line 326 of file worker_rdmo.c.

◆ urom_worker_rdmo_close()

static void urom_worker_rdmo_close ( struct urom_worker_ctx worker_ctx)
static

Definition at line 116 of file worker_rdmo.c.

◆ urom_worker_rdmo_cmd_unpack()

static doca_error_t urom_worker_rdmo_cmd_unpack ( void *  packed_cmd,
size_t  packed_cmd_len,
struct urom_worker_cmd **  cmd 
)
static

Definition at line 799 of file worker_rdmo.c.

◆ urom_worker_rdmo_dest_to_client()

static struct urom_worker_rdmo_client* urom_worker_rdmo_dest_to_client ( struct urom_worker_rdmo rdmo_worker,
uint64_t  dest_id 
)
static

Definition at line 302 of file worker_rdmo.c.

◆ urom_worker_rdmo_ep_del()

static doca_error_t urom_worker_rdmo_ep_del ( struct urom_worker_rdmo rdmo_worker,
struct urom_worker_rdmo_ep rdmo_ep 
)
static

Definition at line 593 of file worker_rdmo.c.

◆ urom_worker_rdmo_ep_get()

static doca_error_t urom_worker_rdmo_ep_get ( struct urom_worker_rdmo rdmo_worker,
void *  peer_addr,
struct urom_worker_rdmo_ep **  rdmo_ep 
)
static

Definition at line 252 of file worker_rdmo.c.

◆ urom_worker_rdmo_mr_dereg_cmd()

static doca_error_t urom_worker_rdmo_mr_dereg_cmd ( struct urom_worker_rdmo rdmo_worker,
struct urom_worker_cmd_desc cmd_desc 
)
static

Definition at line 439 of file worker_rdmo.c.

◆ urom_worker_rdmo_mr_reg_cmd()

static doca_error_t urom_worker_rdmo_mr_reg_cmd ( struct urom_worker_rdmo rdmo_worker,
struct urom_worker_cmd_desc cmd_desc 
)
static

Definition at line 690 of file worker_rdmo.c.

◆ urom_worker_rdmo_notif_pack()

static doca_error_t urom_worker_rdmo_notif_pack ( struct urom_worker_notify notif,
size_t packed_notif_len,
void *  packed_notif 
)
static

Definition at line 924 of file worker_rdmo.c.

◆ urom_worker_rdmo_open()

static doca_error_t urom_worker_rdmo_open ( struct urom_worker_ctx ctx)
static

Definition at line 138 of file worker_rdmo.c.

◆ urom_worker_rdmo_progress()

static doca_error_t urom_worker_rdmo_progress ( struct urom_worker_ctx ctx,
ucs_list_link_t *  notif_list 
)
static

Definition at line 898 of file worker_rdmo.c.

◆ urom_worker_rdmo_rq_create_cmd()

static doca_error_t urom_worker_rdmo_rq_create_cmd ( struct urom_worker_rdmo rdmo_worker,
struct urom_worker_cmd_desc cmd_desc 
)
static

Definition at line 517 of file worker_rdmo.c.

◆ urom_worker_rdmo_rq_destroy_cmd()

static doca_error_t urom_worker_rdmo_rq_destroy_cmd ( struct urom_worker_rdmo rdmo_worker,
struct urom_worker_cmd_desc cmd_desc 
)
static

Definition at line 621 of file worker_rdmo.c.

◆ urom_worker_rdmo_worker_cmd()

static doca_error_t urom_worker_rdmo_worker_cmd ( struct urom_worker_ctx ctx,
ucs_list_link_t *  cmd_list 
)
static

Definition at line 846 of file worker_rdmo.c.

Variable Documentation

◆ plugin_version

uint64_t plugin_version = 0x01
static

Definition at line 34 of file worker_rdmo.c.

◆ urom_rdmo_req_mpool_ops

ucs_mpool_ops_t urom_rdmo_req_mpool_ops
static
Initial value:
= {.chunk_alloc = ucs_mpool_chunk_malloc,
.chunk_release = ucs_mpool_chunk_free,
.obj_init = NULL,
.obj_cleanup = NULL,
.obj_str = NULL}
#define NULL
Definition: __stddef_null.h:26

Definition at line 37 of file worker_rdmo.c.

◆ urom_worker_rdmo

Initial value:
= {
.super.open = urom_worker_rdmo_open,
.super.close = urom_worker_rdmo_close,
.super.addr = urom_worker_rdmo_addr,
.super.worker_cmd = urom_worker_rdmo_worker_cmd,
.super.progress = urom_worker_rdmo_progress,
.super.notif_pack = urom_worker_rdmo_notif_pack,
}
static doca_error_t urom_worker_rdmo_progress(struct urom_worker_ctx *ctx, ucs_list_link_t *notif_list)
Definition: worker_rdmo.c:898
static doca_error_t urom_worker_rdmo_notif_pack(struct urom_worker_notify *notif, size_t *packed_notif_len, void *packed_notif)
Definition: worker_rdmo.c:924
static doca_error_t urom_worker_rdmo_open(struct urom_worker_ctx *ctx)
Definition: worker_rdmo.c:138
static void urom_worker_rdmo_close(struct urom_worker_ctx *worker_ctx)
Definition: worker_rdmo.c:116
static doca_error_t urom_worker_rdmo_addr(struct urom_worker_ctx *worker_ctx, void *addr, uint64_t *addr_len)
Definition: worker_rdmo.c:961
static doca_error_t urom_worker_rdmo_worker_cmd(struct urom_worker_ctx *ctx, ucs_list_link_t *cmd_list)
Definition: worker_rdmo.c:846

Definition at line 961 of file worker_rdmo.c.