NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
nvmf_doca_io.c File Reference
#include "nvmf_doca_io.h"
#include "nvme_pci_type_config.h"
#include <doca_transport_common.h>
#include <spdk/util.h>
#include <doca_log.h>
Include dependency graph for nvmf_doca_io.c:

Go to the source code of this file.

Data Structures

struct  nvmf_doca_dpa_msgq_create_attr
 
struct  nvmf_doca_dpa_comch_create_attr
 
struct  nvmf_doca_queue_create_attr
 
struct  nvmf_doca_cq_create_attr
 
struct  nvmf_doca_dpa_thread_create_attr
 
struct  nvmf_doca_dma_pool_create_attr
 
struct  nvmf_doca_sq_create_attr
 

Macros

#define CACHELINE_SIZE_BYTES   64
 

Functions

 DOCA_LOG_REGISTER (NVME_PCI_COMMON)
 
static void nvmf_doca_io_handle_bind_sq_db_done_msg (const struct comch_msg *msg)
 
static void nvmf_doca_io_handle_unbind_sq_db_done_msg (const struct comch_msg *msg)
 
static void nvmf_doca_io_handle_host_db_msg (struct nvmf_doca_io *io, const struct comch_msg *msg)
 
static void nvmf_doca_dpa_comch_stop_continue (struct nvmf_doca_dpa_comch *comch)
 
static void nvmf_doca_io_stop_continue (struct nvmf_doca_io *io)
 
static void nvmf_doca_cq_stop_continue (struct nvmf_doca_cq *cq)
 
static void nvmf_doca_sq_stop_continue (struct nvmf_doca_sq *sq)
 
static void nvmf_doca_io_handle_dpa_msg (struct nvmf_doca_io *io, const struct comch_msg *msg)
 
static void nvmf_doca_dpa_msgq_recv_cb (struct doca_comch_consumer_task_post_recv *recv_task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_dpa_msgq_recv_error_cb (struct doca_comch_consumer_task_post_recv *recv_task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_dpa_msgq_send_cb (struct doca_comch_producer_task_send *send_task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_dpa_msgq_send_error_cb (struct doca_comch_producer_task_send *send_task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_dpa_comch_msgq_ctx_state_changed_cb (const union doca_data user_data, struct doca_ctx *ctx, enum doca_ctx_states prev_state, enum doca_ctx_states next_state)
 
static doca_error_t nvmf_doca_dpa_msgq_create (const struct nvmf_doca_dpa_msgq_create_attr *attr, struct nvmf_doca_dpa_msgq *msgq)
 
static void nvmf_doca_dpa_msgq_stop (struct nvmf_doca_dpa_msgq *msgq)
 
static void nvmf_doca_dpa_msgq_destroy (struct nvmf_doca_dpa_msgq *msgq)
 
static doca_error_t nvmf_doca_dpa_msgq_send (struct nvmf_doca_dpa_msgq *msgq, void *msg, uint32_t msg_size)
 
static doca_error_t nvmf_doca_dpa_comch_create (const struct nvmf_doca_dpa_comch_create_attr *attr, struct nvmf_doca_dpa_comch *comch)
 
static bool is_ctx_idle (struct doca_ctx *ctx)
 
static bool nvmf_doca_dpa_comch_idle (struct nvmf_doca_dpa_comch *comch)
 
static void nvmf_doca_dpa_comch_stop (struct nvmf_doca_dpa_comch *comch)
 
static void nvmf_doca_dpa_comch_destroy (struct nvmf_doca_dpa_comch *comch)
 
static doca_error_t nvmf_doca_queue_create (const struct nvmf_doca_queue_create_attr *attr, struct nvmf_doca_queue *queue)
 
static void nvmf_doca_queue_free_elements (struct nvmf_doca_queue *queue)
 
static bool is_ctx_running (struct doca_ctx *ctx)
 
static void nvmf_doca_queue_stop (struct nvmf_doca_queue *queue)
 
static void nvmf_doca_queue_destroy (struct nvmf_doca_queue *queue)
 
static void nvmf_doca_cq_update_ci (struct nvmf_doca_cq *cq, uint32_t new_ci)
 
static void nvmf_doca_io_raise_msix (struct nvmf_doca_io *io)
 
void nvmf_doca_io_post_cqe (struct nvmf_doca_io *io, const struct nvmf_doca_cqe *cqe, union doca_data user_data)
 
static void nvmf_doca_cq_cqe_post_cb (struct doca_dma_task_memcpy *task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_cq_cqe_post_error_cb (struct doca_dma_task_memcpy *task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_cq_queue_dma_state_changed_cb (const union doca_data user_data, struct doca_ctx *ctx, enum doca_ctx_states prev_state, enum doca_ctx_states next_state)
 
static doca_error_t nvmf_doca_cq_create (const struct nvmf_doca_cq_create_attr *attr, struct nvmf_doca_cq *cq)
 
static bool nvmf_doca_cq_idle (struct nvmf_doca_cq *cq)
 
static void nvmf_doca_cq_stop (struct nvmf_doca_cq *cq)
 
static void nvmf_doca_cq_destroy (struct nvmf_doca_cq *cq)
 
static doca_error_t nvmf_doca_dpa_thread_create (const struct nvmf_doca_dpa_thread_create_attr *attr, struct nvmf_doca_dpa_thread *dpa_thread)
 
static doca_error_t nvmf_doca_dpa_thread_run (struct nvmf_doca_dpa_thread *dpa_thread, void *arg, size_t arg_size)
 
static void nvmf_doca_dpa_thread_destroy (struct nvmf_doca_dpa_thread *dpa_thread)
 
static doca_error_t nvmf_doca_io_fill_thread_arg (struct nvmf_doca_io *io, struct io_thread_arg *arg)
 
static doca_error_t nvmf_doca_io_run_dpa_thread (struct nvmf_doca_io *io)
 
doca_error_t nvmf_doca_io_create (const struct nvmf_doca_io_create_attr *attr, struct nvmf_doca_io *io)
 
void nvmf_doca_io_destroy (struct nvmf_doca_io *io)
 
void nvmf_doca_io_stop (struct nvmf_doca_io *io)
 
struct doca_buf * nvmf_doca_sq_get_dpu_buffer (struct nvmf_doca_sq *sq)
 
struct doca_buf * nvmf_doca_sq_get_host_buffer (struct nvmf_doca_sq *sq, uintptr_t host_io_address)
 
void nvmf_doca_sq_copy_data (struct nvmf_doca_sq *sq, struct doca_buf *dst_buffer, struct doca_buf *src_buffer, size_t length, union doca_data user_data)
 
static void nvmf_doca_dma_pool_copy_cb (struct doca_dma_task_memcpy *task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_dma_pool_copy_error_cb (struct doca_dma_task_memcpy *task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_dma_pool_dma_state_changed_cb (const union doca_data user_data, struct doca_ctx *ctx, enum doca_ctx_states prev_state, enum doca_ctx_states next_state)
 
static doca_error_t nvmf_doca_dma_pool_create (const struct nvmf_doca_dma_pool_create_attr *attr, struct nvmf_doca_dma_pool *dma_pool)
 
static void nvmf_doca_dma_pool_stop (struct nvmf_doca_dma_pool *dma_pool)
 
static void nvmf_doca_dma_pool_destroy (struct nvmf_doca_dma_pool *dma_pool)
 
static void nvmf_doca_sq_update_pi (struct nvmf_doca_sq *sq, uint32_t new_pi)
 
static void nvmf_doca_sq_sqe_read_cb (struct doca_dma_task_memcpy *task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_sq_sqe_read_error_cb (struct doca_dma_task_memcpy *task, union doca_data task_user_data, union doca_data ctx_user_data)
 
static void nvmf_doca_sq_queue_dma_state_changed_cb (const union doca_data user_data, struct doca_ctx *ctx, enum doca_ctx_states prev_state, enum doca_ctx_states next_state)
 
static doca_error_t nvmf_doca_request_pool_create (struct nvmf_doca_sq *sq, size_t num_requests)
 
static doca_error_t nvmf_doca_request_pool_destroy (struct nvmf_doca_sq *sq)
 
struct nvmf_doca_requestnvmf_doca_request_get (struct nvmf_doca_sq *sq)
 
static void nvmf_doca_request_free_impl (struct nvmf_doca_sq *sq, struct nvmf_doca_request *request)
 
void nvmf_doca_request_complete (struct nvmf_doca_request *request)
 
void nvmf_doca_request_free (struct nvmf_doca_request *request)
 
static void nvmf_doca_sq_destroy (struct nvmf_doca_sq *sq)
 
static doca_error_t nvmf_doca_sq_create (const struct nvmf_doca_sq_create_attr *attr, struct nvmf_doca_sq *sq)
 
void nvmf_doca_io_rm_sq (struct nvmf_doca_sq *sq)
 
static void nvmf_doca_sq_add_continue (struct nvmf_doca_sq *sq)
 
void nvmf_doca_sq_stop (struct nvmf_doca_sq *sq)
 
void nvmf_doca_io_add_sq (struct nvmf_doca_io *io, const struct nvmf_doca_io_add_sq_attr *attr, struct nvmf_doca_sq *sq)
 

Variables

doca_dpa_func_t io_thread
 
doca_dpa_func_t io_thread_init_rpc
 

Macro Definition Documentation

◆ CACHELINE_SIZE_BYTES

#define CACHELINE_SIZE_BYTES   64

Definition at line 39 of file nvmf_doca_io.c.

Function Documentation

◆ DOCA_LOG_REGISTER()

DOCA_LOG_REGISTER ( NVME_PCI_COMMON  )

◆ is_ctx_idle()

static bool is_ctx_idle ( struct doca_ctx *  ctx)
static

Definition at line 697 of file nvmf_doca_io.c.

◆ is_ctx_running()

static bool is_ctx_running ( struct doca_ctx *  ctx)
static

Definition at line 1030 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_cqe_post_cb()

static void nvmf_doca_cq_cqe_post_cb ( struct doca_dma_task_memcpy *  task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 1200 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_cqe_post_error_cb()

static void nvmf_doca_cq_cqe_post_error_cb ( struct doca_dma_task_memcpy *  task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 1219 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_create()

static doca_error_t nvmf_doca_cq_create ( const struct nvmf_doca_cq_create_attr attr,
struct nvmf_doca_cq cq 
)
static

Definition at line 1278 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_destroy()

static void nvmf_doca_cq_destroy ( struct nvmf_doca_cq cq)
static

Definition at line 1372 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_idle()

static bool nvmf_doca_cq_idle ( struct nvmf_doca_cq cq)
static

Definition at line 1332 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_queue_dma_state_changed_cb()

static void nvmf_doca_cq_queue_dma_state_changed_cb ( const union doca_data  user_data,
struct doca_ctx *  ctx,
enum doca_ctx_states  prev_state,
enum doca_ctx_states  next_state 
)
static

Definition at line 1249 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_stop()

static void nvmf_doca_cq_stop ( struct nvmf_doca_cq cq)
static

Definition at line 1344 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_stop_continue()

static void nvmf_doca_cq_stop_continue ( struct nvmf_doca_cq cq)
static

Definition at line 1361 of file nvmf_doca_io.c.

◆ nvmf_doca_cq_update_ci()

static void nvmf_doca_cq_update_ci ( struct nvmf_doca_cq cq,
uint32_t  new_ci 
)
static

Definition at line 1142 of file nvmf_doca_io.c.

◆ nvmf_doca_dma_pool_copy_cb()

static void nvmf_doca_dma_pool_copy_cb ( struct doca_dma_task_memcpy *  task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 1838 of file nvmf_doca_io.c.

◆ nvmf_doca_dma_pool_copy_error_cb()

static void nvmf_doca_dma_pool_copy_error_cb ( struct doca_dma_task_memcpy *  task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 1858 of file nvmf_doca_io.c.

◆ nvmf_doca_dma_pool_create()

static doca_error_t nvmf_doca_dma_pool_create ( const struct nvmf_doca_dma_pool_create_attr attr,
struct nvmf_doca_dma_pool dma_pool 
)
static

Definition at line 1905 of file nvmf_doca_io.c.

◆ nvmf_doca_dma_pool_destroy()

static void nvmf_doca_dma_pool_destroy ( struct nvmf_doca_dma_pool dma_pool)
static

Definition at line 2055 of file nvmf_doca_io.c.

◆ nvmf_doca_dma_pool_dma_state_changed_cb()

static void nvmf_doca_dma_pool_dma_state_changed_cb ( const union doca_data  user_data,
struct doca_ctx *  ctx,
enum doca_ctx_states  prev_state,
enum doca_ctx_states  next_state 
)
static

Definition at line 1876 of file nvmf_doca_io.c.

◆ nvmf_doca_dma_pool_stop()

static void nvmf_doca_dma_pool_stop ( struct nvmf_doca_dma_pool dma_pool)
static

Definition at line 2035 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_comch_create()

static doca_error_t nvmf_doca_dpa_comch_create ( const struct nvmf_doca_dpa_comch_create_attr attr,
struct nvmf_doca_dpa_comch comch 
)
static

Definition at line 587 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_comch_destroy()

static void nvmf_doca_dpa_comch_destroy ( struct nvmf_doca_dpa_comch comch)
static

Definition at line 757 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_comch_idle()

static bool nvmf_doca_dpa_comch_idle ( struct nvmf_doca_dpa_comch comch)
static

Definition at line 718 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_comch_msgq_ctx_state_changed_cb()

static void nvmf_doca_dpa_comch_msgq_ctx_state_changed_cb ( const union doca_data  user_data,
struct doca_ctx *  ctx,
enum doca_ctx_states  prev_state,
enum doca_ctx_states  next_state 
)
static

Definition at line 209 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_comch_stop()

static void nvmf_doca_dpa_comch_stop ( struct nvmf_doca_dpa_comch comch)
static

Definition at line 746 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_comch_stop_continue()

static void nvmf_doca_dpa_comch_stop_continue ( struct nvmf_doca_dpa_comch comch)
static

Definition at line 729 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_create()

static doca_error_t nvmf_doca_dpa_msgq_create ( const struct nvmf_doca_dpa_msgq_create_attr attr,
struct nvmf_doca_dpa_msgq msgq 
)
static

Definition at line 253 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_destroy()

static void nvmf_doca_dpa_msgq_destroy ( struct nvmf_doca_dpa_msgq msgq)
static

Definition at line 487 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_recv_cb()

static void nvmf_doca_dpa_msgq_recv_cb ( struct doca_comch_consumer_task_post_recv *  recv_task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 122 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_recv_error_cb()

static void nvmf_doca_dpa_msgq_recv_error_cb ( struct doca_comch_consumer_task_post_recv *  recv_task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 151 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_send()

static doca_error_t nvmf_doca_dpa_msgq_send ( struct nvmf_doca_dpa_msgq msgq,
void *  msg,
uint32_t  msg_size 
)
static

Definition at line 542 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_send_cb()

static void nvmf_doca_dpa_msgq_send_cb ( struct doca_comch_producer_task_send *  send_task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 170 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_send_error_cb()

static void nvmf_doca_dpa_msgq_send_error_cb ( struct doca_comch_producer_task_send *  send_task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 189 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_msgq_stop()

static void nvmf_doca_dpa_msgq_stop ( struct nvmf_doca_dpa_msgq msgq)
static

Definition at line 465 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_thread_create()

static doca_error_t nvmf_doca_dpa_thread_create ( const struct nvmf_doca_dpa_thread_create_attr attr,
struct nvmf_doca_dpa_thread dpa_thread 
)
static

Definition at line 1404 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_thread_destroy()

static void nvmf_doca_dpa_thread_destroy ( struct nvmf_doca_dpa_thread dpa_thread)
static

Definition at line 1476 of file nvmf_doca_io.c.

◆ nvmf_doca_dpa_thread_run()

static doca_error_t nvmf_doca_dpa_thread_run ( struct nvmf_doca_dpa_thread dpa_thread,
void *  arg,
size_t  arg_size 
)
static

Definition at line 1450 of file nvmf_doca_io.c.

◆ nvmf_doca_io_add_sq()

void nvmf_doca_io_add_sq ( struct nvmf_doca_io io,
const struct nvmf_doca_io_add_sq_attr attr,
struct nvmf_doca_sq sq 
)

Definition at line 2602 of file nvmf_doca_io.c.

◆ nvmf_doca_io_create()

doca_error_t nvmf_doca_io_create ( const struct nvmf_doca_io_create_attr attr,
struct nvmf_doca_io io 
)

Definition at line 1622 of file nvmf_doca_io.c.

◆ nvmf_doca_io_destroy()

void nvmf_doca_io_destroy ( struct nvmf_doca_io io)

Definition at line 1720 of file nvmf_doca_io.c.

◆ nvmf_doca_io_fill_thread_arg()

static doca_error_t nvmf_doca_io_fill_thread_arg ( struct nvmf_doca_io io,
struct io_thread_arg arg 
)
static

Definition at line 1508 of file nvmf_doca_io.c.

◆ nvmf_doca_io_handle_bind_sq_db_done_msg()

static void nvmf_doca_io_handle_bind_sq_db_done_msg ( const struct comch_msg msg)
static

Definition at line 2646 of file nvmf_doca_io.c.

◆ nvmf_doca_io_handle_dpa_msg()

static void nvmf_doca_io_handle_dpa_msg ( struct nvmf_doca_io io,
const struct comch_msg msg 
)
static

Definition at line 97 of file nvmf_doca_io.c.

◆ nvmf_doca_io_handle_host_db_msg()

static void nvmf_doca_io_handle_host_db_msg ( struct nvmf_doca_io io,
const struct comch_msg msg 
)
static

Definition at line 2146 of file nvmf_doca_io.c.

◆ nvmf_doca_io_handle_unbind_sq_db_done_msg()

static void nvmf_doca_io_handle_unbind_sq_db_done_msg ( const struct comch_msg msg)
static

Definition at line 2512 of file nvmf_doca_io.c.

◆ nvmf_doca_io_post_cqe()

void nvmf_doca_io_post_cqe ( struct nvmf_doca_io io,
const struct nvmf_doca_cqe cqe,
union doca_data  user_data 
)

Update the phase bit according to the iteration For every even iteration the phase should be 1, while for odd should be 0

Definition at line 1163 of file nvmf_doca_io.c.

◆ nvmf_doca_io_raise_msix()

static void nvmf_doca_io_raise_msix ( struct nvmf_doca_io io)
static

Definition at line 1152 of file nvmf_doca_io.c.

◆ nvmf_doca_io_rm_sq()

void nvmf_doca_io_rm_sq ( struct nvmf_doca_sq sq)

Definition at line 2501 of file nvmf_doca_io.c.

◆ nvmf_doca_io_run_dpa_thread()

static doca_error_t nvmf_doca_io_run_dpa_thread ( struct nvmf_doca_io io)
static

Definition at line 1582 of file nvmf_doca_io.c.

◆ nvmf_doca_io_stop()

void nvmf_doca_io_stop ( struct nvmf_doca_io io)

Definition at line 1748 of file nvmf_doca_io.c.

◆ nvmf_doca_io_stop_continue()

static void nvmf_doca_io_stop_continue ( struct nvmf_doca_io io)
static

Definition at line 1768 of file nvmf_doca_io.c.

◆ nvmf_doca_queue_create()

static doca_error_t nvmf_doca_queue_create ( const struct nvmf_doca_queue_create_attr attr,
struct nvmf_doca_queue queue 
)
static

Definition at line 812 of file nvmf_doca_io.c.

◆ nvmf_doca_queue_destroy()

static void nvmf_doca_queue_destroy ( struct nvmf_doca_queue queue)
static

Definition at line 1084 of file nvmf_doca_io.c.

◆ nvmf_doca_queue_free_elements()

static void nvmf_doca_queue_free_elements ( struct nvmf_doca_queue queue)
static

Definition at line 990 of file nvmf_doca_io.c.

◆ nvmf_doca_queue_stop()

static void nvmf_doca_queue_stop ( struct nvmf_doca_queue queue)
static

Definition at line 1053 of file nvmf_doca_io.c.

◆ nvmf_doca_request_complete()

void nvmf_doca_request_complete ( struct nvmf_doca_request request)

Definition at line 2334 of file nvmf_doca_io.c.

◆ nvmf_doca_request_free()

void nvmf_doca_request_free ( struct nvmf_doca_request request)

Definition at line 2346 of file nvmf_doca_io.c.

◆ nvmf_doca_request_free_impl()

static void nvmf_doca_request_free_impl ( struct nvmf_doca_sq sq,
struct nvmf_doca_request request 
)
static

Definition at line 2310 of file nvmf_doca_io.c.

◆ nvmf_doca_request_get()

struct nvmf_doca_request* nvmf_doca_request_get ( struct nvmf_doca_sq sq)

Definition at line 2291 of file nvmf_doca_io.c.

◆ nvmf_doca_request_pool_create()

static doca_error_t nvmf_doca_request_pool_create ( struct nvmf_doca_sq sq,
size_t  num_requests 
)
static

Definition at line 2247 of file nvmf_doca_io.c.

◆ nvmf_doca_request_pool_destroy()

static doca_error_t nvmf_doca_request_pool_destroy ( struct nvmf_doca_sq sq)
static

Definition at line 2273 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_add_continue()

static void nvmf_doca_sq_add_continue ( struct nvmf_doca_sq sq)
static

Definition at line 2525 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_copy_data()

void nvmf_doca_sq_copy_data ( struct nvmf_doca_sq sq,
struct doca_buf *  dst_buffer,
struct doca_buf *  src_buffer,
size_t  length,
union doca_data  user_data 
)

Definition at line 1816 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_create()

static doca_error_t nvmf_doca_sq_create ( const struct nvmf_doca_sq_create_attr attr,
struct nvmf_doca_sq sq 
)
static

Definition at line 2424 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_destroy()

static void nvmf_doca_sq_destroy ( struct nvmf_doca_sq sq)
static

Definition at line 2384 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_get_dpu_buffer()

struct doca_buf* nvmf_doca_sq_get_dpu_buffer ( struct nvmf_doca_sq sq)

Definition at line 1794 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_get_host_buffer()

struct doca_buf* nvmf_doca_sq_get_host_buffer ( struct nvmf_doca_sq sq,
uintptr_t  host_io_address 
)

Definition at line 1803 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_queue_dma_state_changed_cb()

static void nvmf_doca_sq_queue_dma_state_changed_cb ( const union doca_data  user_data,
struct doca_ctx *  ctx,
enum doca_ctx_states  prev_state,
enum doca_ctx_states  next_state 
)
static

Definition at line 2217 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_sqe_read_cb()

static void nvmf_doca_sq_sqe_read_cb ( struct doca_dma_task_memcpy *  task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 2165 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_sqe_read_error_cb()

static void nvmf_doca_sq_sqe_read_error_cb ( struct doca_dma_task_memcpy *  task,
union doca_data  task_user_data,
union doca_data  ctx_user_data 
)
static

Definition at line 2187 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_stop()

void nvmf_doca_sq_stop ( struct nvmf_doca_sq sq)

Definition at line 2597 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_stop_continue()

static void nvmf_doca_sq_stop_continue ( struct nvmf_doca_sq sq)
static

Definition at line 2546 of file nvmf_doca_io.c.

◆ nvmf_doca_sq_update_pi()

static void nvmf_doca_sq_update_pi ( struct nvmf_doca_sq sq,
uint32_t  new_pi 
)
static

Definition at line 2110 of file nvmf_doca_io.c.

Variable Documentation

◆ io_thread

doca_dpa_func_t io_thread
extern

◆ io_thread_init_rpc

doca_dpa_func_t io_thread_init_rpc
extern