| NVIDIA DOCA SDK | Data Center on a Chip Framework Documentation |
Data Structures | |
| struct | doca_rdma_gid |
Typedefs | |
| typedef uint64_t | doca_dpa_dev_rdma_t |
| typedef void(* | doca_rdma_connection_request_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data ctx_user_data) |
| Function to execute on connection request event. More... | |
| typedef void(* | doca_rdma_connection_established_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data connection_user_data, union doca_data ctx_user_data) |
| Function to execute on connection established event. More... | |
| typedef void(* | doca_rdma_connection_failure_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data connection_user_data, union doca_data ctx_user_data) |
| Function to execute on connection failure event. More... | |
| typedef void(* | doca_rdma_connection_disconnection_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data connection_user_data, union doca_data ctx_user_data) |
| Function to execute on connection disconnection event. More... | |
| typedef void(* | doca_rdma_task_receive_completion_cb_t) (struct doca_rdma_task_receive *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a receive task. More... | |
| typedef void(* | doca_rdma_task_send_completion_cb_t) (struct doca_rdma_task_send *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a send task. More... | |
| typedef void(* | doca_rdma_task_send_imm_completion_cb_t) (struct doca_rdma_task_send_imm *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a send with immediate task. More... | |
| typedef void(* | doca_rdma_task_read_completion_cb_t) (struct doca_rdma_task_read *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a read task. More... | |
| typedef void(* | doca_rdma_task_write_completion_cb_t) (struct doca_rdma_task_write *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a write task. More... | |
| typedef void(* | doca_rdma_task_write_imm_completion_cb_t) (struct doca_rdma_task_write_imm *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a write with immediate task. More... | |
| typedef void(* | doca_rdma_task_atomic_cmp_swp_completion_cb_t) (struct doca_rdma_task_atomic_cmp_swp *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of an atomic compare and swap task. More... | |
| typedef void(* | doca_rdma_task_atomic_fetch_add_completion_cb_t) (struct doca_rdma_task_atomic_fetch_add *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of an atomic fetch and add task. More... | |
| typedef void(* | doca_rdma_task_remote_net_sync_event_get_completion_cb_t) (struct doca_rdma_task_remote_net_sync_event_get *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a remote_net_sync_event_get task. More... | |
| typedef void(* | doca_rdma_task_remote_net_sync_event_notify_set_completion_cb_t) (struct doca_rdma_task_remote_net_sync_event_notify_set *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a remote_net_sync_event_notify_set task. More... | |
| typedef void(* | doca_rdma_task_remote_net_sync_event_notify_add_completion_cb_t) (struct doca_rdma_task_remote_net_sync_event_notify_add *task, union doca_data task_user_data, union doca_data ctx_user_data) |
| Function to execute on completion of a remote_net_sync_event_notify_add task. More... | |
Functions | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_create (struct doca_dev *dev, struct doca_rdma **rdma) |
| Create a DOCA RDMA instance. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_destroy (struct doca_rdma *rdma) |
| Destroy a DOCA RDMA instance. More... | |
| DOCA_EXPERIMENTAL struct doca_ctx * | doca_rdma_as_ctx (struct doca_rdma *rdma) |
| Convert doca_rdma instance into a generalized context for use with doca core objects. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_export (struct doca_rdma *rdma, const void **local_rdma_conn_details, size_t *local_rdma_conn_details_size, struct doca_rdma_connection **rdma_connection) |
| Export doca_rdma connection details object The doca_rdma_conn_details are used in doca_rdma_connect(). Can only be called after calling doca_ctx_start(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connect (struct doca_rdma *rdma, const void *remote_rdma_conn_details, size_t remote_rdma_conn_details_size, struct doca_rdma_connection *rdma_connection) |
| Connect to remote doca_rdma peer. Can only be called when the ctx is in DOCA_CTX_STATE_STARTING state (after calling doca_ctx_start()). Once called, doca_pe_progress() should be called, in order to transition the ctx to DOCA_CTX_STATE_RUNNING state. Only after that can tasks be allocated and submitted. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_addr_create (enum doca_rdma_addr_type addr_type, const char *address, uint16_t port, struct doca_rdma_addr **addr) |
| Set connection address object for doca_rdma. The object can be queried using doca_rdma_connection_get_addr(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_addr_destroy (struct doca_rdma_addr *addr) |
| Destroy connection address object for doca_rdma. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_start_listen_to_port (struct doca_rdma *rdma, uint16_t port) |
| Start listening for a connection from a remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Once called, doca_pe_progress() should be called, in order to evaluate possible connections requests. Only after a connection is established can send tasks be allocated and submitted. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_stop_listen_to_port (struct doca_rdma *rdma, uint16_t port) |
| End the listen process for a connection from remote doca_rdma peers. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Once called, Server just stop listening for incoming connection requests and do not disconnect any remote doca_rdma peer. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connection_accept (struct doca_rdma_connection *rdma_connection, void *private_data, uint8_t private_data_len) |
| Accept an incoming connection request from remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Only after a connection is established can send tasks be allocated and submitted. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connection_reject (struct doca_rdma_connection *rdma_connection) |
| Reject an incoming connection request from remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connect_to_addr (struct doca_rdma *rdma, struct doca_rdma_addr *addr, union doca_data connection_user_data) |
| Connect to a remote doca_rdma peer listening for a connection. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Once called, doca_pe_progress() should be called, in order to evaluate connection response. Only after a connection is established can send tasks be allocated and submitted. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connection_disconnect (struct doca_rdma_connection *rdma_connection) |
| Finalize a connection with a remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_bridge_prepare_connection (struct doca_rdma *rdma, struct rdma_cm_id *cm_id, struct doca_rdma_connection **rdma_connection) |
| Prepare the connection and perform the doca connection to client side acting as a bridge. This method acts as a bridge to prepare and perform the doca connection to a connection request from an application that performs the listen process by itself. This function only prepare the DOCA connection, it is necessary to call doca_rdma_bridge_accept(), to continue the connection process. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_bridge_accept (struct doca_rdma *rdma, void *private_data, uint8_t private_data_len, struct doca_rdma_connection *rdma_connection) |
| Accept the connection from client side acting as a bridge. This method acts as a bridge to accept a connection request from an application that performs the listen process by itself. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Only after a connection is established can send tasks be allocated and submitted. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_bridge_established (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection) |
| Notify the server side of the successful established connection with client Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_get_max_recv_queue_size (const struct doca_devinfo *devinfo, uint32_t *max_recv_queue_size) |
| Get the maximal recv queue size for a specific device. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_get_max_send_queue_size (const struct doca_devinfo *devinfo, uint32_t *max_send_queue_size) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_get_max_send_buf_list_len (const struct doca_devinfo *devinfo, uint32_t *max_send_buf_list_len) |
| Get the maximal buffer list length property for buffers of tasks that are sent to the remote and in which linked list are supported (i.e. send, send_imm, read, write, write_imm). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_get_max_message_size (const struct doca_devinfo *devinfo, uint32_t *max_message_size) |
| Get the maximal message size for a specific device. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_get_gid_table_size (const struct doca_devinfo *devinfo, uint32_t *gid_table_size) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_get_gid (const struct doca_devinfo *devinfo, uint32_t start_index, uint32_t num_entries, struct doca_rdma_gid *gid_array) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_transport_type_is_supported (const struct doca_devinfo *devinfo, enum doca_rdma_transport_type transport_type) |
| Check if DOCA RDMA supports given transport type for a specific device. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_send_queue_size (struct doca_rdma *rdma, uint32_t send_queue_size) |
| Set send queue size property for doca_rdma. The value can be queried using doca_rdma_get_send_queue_size(). Queue size will be rounded to the next power of 2. can only be called before calling doca_ctx_start(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_recv_queue_size (struct doca_rdma *rdma, uint32_t recv_queue_size) |
| Set recv queue size property for doca_rdma. The value can be queried using doca_rdma_get_recv_queue_size(). Queue size will be rounded to the next power of 2. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_max_send_buf_list_len (struct doca_rdma *rdma, uint32_t max_send_buf_list_len) |
| Set the maximum buffer list length property for local buffers of tasks that are sent to the remote and in which linked list are supported (i.e. send, send_imm, read, write, write_imm). The value in use can be queried using doca_rdma_get_max_send_buf_list_len(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_transport_type (struct doca_rdma *rdma, enum doca_rdma_transport_type transport_type) |
| Set transport type for doca_rdma. The value can be queried using doca_rdma_get_transport_type(). Can only be called before calling doca_ctx_start(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_mtu (struct doca_rdma *rdma, enum doca_mtu_size mtu) |
| Set MTU for doca_rdma. The value can be queried using doca_rdma_get_mtu(). Can only be called before calling doca_ctx_start(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_permissions (struct doca_rdma *rdma, uint32_t permissions) |
| Set rdma permissions for doca_rdma. The value can be queried using doca_rdma_get_permissions(). Can only be called after calling doca_ctx_dev_add() and before calling doca_ctx_start(). The supported permissions are the RDMA access flags. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_grh_enabled (struct doca_rdma *rdma, uint8_t grh_enabled) |
| Set whether to use GRH in connection. The value can be queried using doca_rdma_get_grh_enabled(). Can only be called before calling doca_ctx_start(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_gid_index (struct doca_rdma *rdma, uint32_t gid_index) |
| Set GID index for doca_rdma. The value can be queried using doca_rdma_get_gid_index(). Can only be called before calling doca_ctx_start(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_sl (struct doca_rdma *rdma, uint32_t sl) |
| Set SL (service level) for doca_rdma. The value can be queried using doca_rdma_get_sl(). Can only be called before calling doca_ctx_start(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_connection_request_timeout (struct doca_rdma *rdma, uint16_t timeout) |
| Set timeout property for doca_rdma. The value can be queried using doca_rdma_get_connection_request_timeout(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connection_set_user_data (struct doca_rdma_connection *rdma_connection, union doca_data connection_user_data) |
| Set user data to include in each connection. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_max_num_connections (struct doca_rdma *rdma, uint16_t max_num_connections) |
| Set the maximum number of connections property for a context. The value can be queried using doca_rdma_get_max_num_connections(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_rnr_retry_count (struct doca_rdma *rdma, uint8_t rnr_retry_count) |
| Set the rnr retry count property for a context. The value can be queried using doca_rdma_get_rnr_retry_count(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_send_queue_size (const struct doca_rdma *rdma, uint32_t *send_queue_size) |
| Get send queue size property from doca_rdma. Returns the current send_queue_size set for the doca_rdma_context. The size returned is the actual size being used and might differ from the size set by the user, as the size may be increased. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_recv_queue_size (const struct doca_rdma *rdma, uint32_t *recv_queue_size) |
| Get recv queue size property from doca_rdma. Returns the current recv_queue_size set for the doca_rdma_context. The size returned is the actual size being used and might differ from the size set by the user, as the size may be increased. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_max_send_buf_list_len (const struct doca_rdma *rdma, uint32_t *max_send_buf_list_len) |
| Get the maximum buffer list length property for local buffers of tasks that are sent to the remote and in which linked list are supported (i.e. send, send_imm, read, write, write_imm). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_transport_type (const struct doca_rdma *rdma, enum doca_rdma_transport_type *transport_type) |
| Get transport_type property from doca_rdma. Returns the current transport_type set for the doca_rdma_context. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_mtu (const struct doca_rdma *rdma, enum doca_mtu_size *mtu) |
| Get the MTU property from doca_rdma. Returns the current MTU set for the doca_rdma context. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_permissions (struct doca_rdma *rdma, uint32_t *permissions) |
| Get permissions property from doca_rdma. Returns the current permissions set for the doca_rdma_context. Can only be called after calling doca_ctx_dev_add(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_grh_enabled (const struct doca_rdma *rdma, uint8_t *grh_enabled) |
| Get GRH setting from doca_rdma. Get the current GRH setting for doca_rdma. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_gid_index (const struct doca_rdma *rdma, uint32_t *gid_index) |
| Get GID index from doca_rdma. Get the current GID index set for doca_rdma. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_sl (const struct doca_rdma *rdma, uint32_t *sl) |
| Get SL (service level) from doca_rdma. Get the current SL set for doca_rdma. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_dpa_handle (struct doca_rdma *rdma, doca_dpa_dev_rdma_t *dpa_rdma) |
| Retrieve the handle in the dpa memory space of a doca_rdma. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_gpu_handle (struct doca_rdma *rdma, struct doca_gpu_dev_rdma **gpu_rdma) |
| Retrieve the handle in the gpu memory space of a doca_rdma. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_connection_request_timeout (const struct doca_rdma *rdma, uint16_t *timeout) |
| Get timeout property for doca_rdma. Returns the current timeout set for the connection resolve related functions. The size returned is the actual size being used and might differ from the size set by the user, as the size may be increased. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connection_get_addr (const struct doca_rdma_connection *rdma_connection, struct doca_rdma_addr **addr) |
| Get connection address object from a doca_rdma_connection. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_addr_get_params (struct doca_rdma_addr *addr, enum doca_rdma_addr_type *addr_type, const char **address, uint16_t *port) |
| Get address object parameters from an address object. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connection_get_user_data (const struct doca_rdma_connection *rdma_connection, union doca_data *connection_user_data) |
| Get user data included in a connection. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_connection_get_id (const struct doca_rdma_connection *rdma_connection, uint32_t *connection_id) |
| Get connection ID from an rdma connection. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_max_num_connections (struct doca_rdma *rdma, uint16_t *max_num_connections) |
| Get maximum number of connections property for doca_rdma. Returns the current maximum number of connections set for a context. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_get_rnr_retry_count (const struct doca_rdma *rdma, uint8_t *rnr_retry_count) |
| Get rnr retry count property for doca_rdma. Returns the current rnr retry count set for a context. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_set_connection_state_callbacks (struct doca_rdma *rdma, doca_rdma_connection_request_cb_t doca_rdma_connect_request_cb, doca_rdma_connection_established_cb_t doca_rdma_connect_established_cb, doca_rdma_connection_failure_cb_t doca_rdma_connect_failure_cb, doca_rdma_connection_disconnection_cb_t doca_rdma_disconnect_cb) |
| This method set the function executed on RDMA connection events. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_receive_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_receive_get_max_dst_buf_list_len (const struct doca_devinfo *devinfo, enum doca_rdma_transport_type transport_type, uint32_t *max_buf_list_len) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_receive_set_conf (struct doca_rdma *rdma, doca_rdma_task_receive_completion_cb_t successful_task_completion_cb, doca_rdma_task_receive_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the receive tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_receive_set_dst_buf_list_len (struct doca_rdma *rdma, uint32_t buf_list_len) |
| Set the maximal destination buffer list length property for receive tasks. After starting the DOCA RDMA context the length may be increased and the value in use can be queried using doca_rdma_get_recv_buf_list_len(). More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_receive_get_dst_buf_list_len (const struct doca_rdma *rdma, uint32_t *buf_list_len) |
| Get the maximal destination buffer list length property for receive tasks. The returned value is the actual value being used and might differ from the size set by the user, as it may be increased. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_receive_allocate_init (struct doca_rdma *rdma, struct doca_buf *dst_buf, union doca_data user_data, struct doca_rdma_task_receive **task) |
| This method allocates and initializes a receive task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_receive_as_task (struct doca_rdma_task_receive *task) |
| This method converts a receive task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_receive_set_dst_buf (struct doca_rdma_task_receive *task, struct doca_buf *dst_buf) |
| This method sets the destination buffer of a receive task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_receive_get_dst_buf (const struct doca_rdma_task_receive *task) |
| This method gets the destination buffer of a receive task. More... | |
| DOCA_EXPERIMENTAL enum doca_rdma_opcode | doca_rdma_task_receive_get_result_opcode (const struct doca_rdma_task_receive *task) |
| This method gets the opcode of the operation executed by the peer and received by the task. More... | |
| DOCA_EXPERIMENTAL uint32_t | doca_rdma_task_receive_get_result_len (const struct doca_rdma_task_receive *task) |
| This method gets the length of data received by the task. More... | |
| DOCA_EXPERIMENTAL doca_be32_t | doca_rdma_task_receive_get_result_immediate_data (const struct doca_rdma_task_receive *task) |
| This method gets the immediate data received by the task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_receive_get_result_rdma_connection (const struct doca_rdma_task_receive *task) |
| This method gets the rdma connection of a receive task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_send_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_send_set_conf (struct doca_rdma *rdma, doca_rdma_task_send_completion_cb_t successful_task_completion_cb, doca_rdma_task_send_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the send tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_send_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, const struct doca_buf *src_buf, union doca_data user_data, struct doca_rdma_task_send **task) |
| This method allocates and initializes a send task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_send_as_task (struct doca_rdma_task_send *task) |
| This method converts a send task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_send_set_src_buf (struct doca_rdma_task_send *task, const struct doca_buf *src_buf) |
| This method sets the source buffer of a send task. More... | |
| DOCA_EXPERIMENTAL const struct doca_buf * | doca_rdma_task_send_get_src_buf (const struct doca_rdma_task_send *task) |
| This method gets the source buffer of a send task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_send_set_rdma_connection (struct doca_rdma_task_send *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a send task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_send_get_rdma_connection (const struct doca_rdma_task_send *task) |
| This method gets the rdma connection of a send task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_send_imm_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_send_imm_set_conf (struct doca_rdma *rdma, doca_rdma_task_send_imm_completion_cb_t successful_task_completion_cb, doca_rdma_task_send_imm_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the send with immediate tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_send_imm_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, const struct doca_buf *src_buf, doca_be32_t immediate_data, union doca_data user_data, struct doca_rdma_task_send_imm **task) |
| This method allocates and initializes a send with immediate task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_send_imm_as_task (struct doca_rdma_task_send_imm *task) |
| This method converts a send with immediate task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_send_imm_set_src_buf (struct doca_rdma_task_send_imm *task, const struct doca_buf *src_buf) |
| This method sets the source buffer of a send with immediate task. More... | |
| DOCA_EXPERIMENTAL const struct doca_buf * | doca_rdma_task_send_imm_get_src_buf (const struct doca_rdma_task_send_imm *task) |
| This method gets the source buffer of a send with immediate task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_send_imm_set_immediate_data (struct doca_rdma_task_send_imm *task, doca_be32_t immediate_data) |
| This method sets the immediate data of a send with immediate task. More... | |
| DOCA_EXPERIMENTAL doca_be32_t | doca_rdma_task_send_imm_get_immediate_data (const struct doca_rdma_task_send_imm *task) |
| This method gets the immediate data of a send with immediate task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_send_imm_set_rdma_connection (struct doca_rdma_task_send_imm *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a send with immediate task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_send_imm_get_rdma_connection (const struct doca_rdma_task_send_imm *task) |
| This method gets the rdma connection of a send with immediate task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_read_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_read_set_conf (struct doca_rdma *rdma, doca_rdma_task_read_completion_cb_t successful_task_completion_cb, doca_rdma_task_read_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the read tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_read_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, const struct doca_buf *src_buf, struct doca_buf *dst_buf, union doca_data user_data, struct doca_rdma_task_read **task) |
| This method allocates and initializes a read task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_read_as_task (struct doca_rdma_task_read *task) |
| This method converts a read task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_read_set_src_buf (struct doca_rdma_task_read *task, const struct doca_buf *src_buf) |
| This method sets the source buffer of a read task. More... | |
| DOCA_EXPERIMENTAL const struct doca_buf * | doca_rdma_task_read_get_src_buf (const struct doca_rdma_task_read *task) |
| This method gets the source buffer of a read task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_read_set_dst_buf (struct doca_rdma_task_read *task, struct doca_buf *dst_buf) |
| This method sets the destination buffer of a read task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_read_get_dst_buf (const struct doca_rdma_task_read *task) |
| This method gets the destination buffer of a read task. More... | |
| DOCA_EXPERIMENTAL uint32_t | doca_rdma_task_read_get_result_len (const struct doca_rdma_task_read *task) |
| This method gets the length of data read by the task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_read_set_rdma_connection (struct doca_rdma_task_read *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a read task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_read_get_rdma_connection (const struct doca_rdma_task_read *task) |
| This method gets the rdma connection of a read task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_write_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_write_set_conf (struct doca_rdma *rdma, doca_rdma_task_write_completion_cb_t successful_task_completion_cb, doca_rdma_task_write_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the write tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_write_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, const struct doca_buf *src_buf, struct doca_buf *dst_buf, union doca_data user_data, struct doca_rdma_task_write **task) |
| This method allocates and initializes a write task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_write_as_task (struct doca_rdma_task_write *task) |
| This method converts a write task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_write_set_src_buf (struct doca_rdma_task_write *task, const struct doca_buf *src_buf) |
| This method sets the source buffer of a write task. More... | |
| DOCA_EXPERIMENTAL const struct doca_buf * | doca_rdma_task_write_get_src_buf (const struct doca_rdma_task_write *task) |
| This method gets the source buffer of a write task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_write_set_dst_buf (struct doca_rdma_task_write *task, struct doca_buf *dst_buf) |
| This method sets the destination buffer of a write task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_write_get_dst_buf (const struct doca_rdma_task_write *task) |
| This method gets the destination buffer of a write task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_write_set_rdma_connection (struct doca_rdma_task_write *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a write task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_write_get_rdma_connection (const struct doca_rdma_task_write *task) |
| This method gets the rdma connection of a write task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_write_imm_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_write_imm_set_conf (struct doca_rdma *rdma, doca_rdma_task_write_imm_completion_cb_t successful_task_completion_cb, doca_rdma_task_write_imm_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the write with immediate tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_write_imm_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, const struct doca_buf *src_buf, struct doca_buf *dst_buf, doca_be32_t immediate_data, union doca_data user_data, struct doca_rdma_task_write_imm **task) |
| This method allocates and initializes a write with immediate task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_write_imm_as_task (struct doca_rdma_task_write_imm *task) |
| This method converts a write with immediate task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_write_imm_set_src_buf (struct doca_rdma_task_write_imm *task, const struct doca_buf *src_buf) |
| This method sets the source buffer of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL const struct doca_buf * | doca_rdma_task_write_imm_get_src_buf (const struct doca_rdma_task_write_imm *task) |
| This method gets the source buffer of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_write_imm_set_dst_buf (struct doca_rdma_task_write_imm *task, struct doca_buf *dst_buf) |
| This method sets the destination buffer of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_write_imm_get_dst_buf (const struct doca_rdma_task_write_imm *task) |
| This method gets the destination buffer of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_write_imm_set_immediate_data (struct doca_rdma_task_write_imm *task, doca_be32_t immediate_data) |
| This method sets the immediate data of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL doca_be32_t | doca_rdma_task_write_imm_get_immediate_data (const struct doca_rdma_task_write_imm *task) |
| This method gets the immediate data of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_write_imm_set_rdma_connection (struct doca_rdma_task_write_imm *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma connection of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_write_imm_get_rdma_connection (const struct doca_rdma_task_write_imm *task) |
| This method gets the rdma connection of a write with immediate task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_atomic_cmp_swp_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_atomic_cmp_swp_set_conf (struct doca_rdma *rdma, doca_rdma_task_atomic_cmp_swp_completion_cb_t successful_task_completion_cb, doca_rdma_task_atomic_cmp_swp_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the atomic compare and swap tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_atomic_cmp_swp_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, struct doca_buf *dst_buf, struct doca_buf *result_buf, uint64_t cmp_data, uint64_t swap_data, union doca_data user_data, struct doca_rdma_task_atomic_cmp_swp **task) |
| This method allocates and initializes an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_atomic_cmp_swp_as_task (struct doca_rdma_task_atomic_cmp_swp *task) |
| This method converts an atomic compare and swap task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_cmp_swp_set_dst_buf (struct doca_rdma_task_atomic_cmp_swp *task, struct doca_buf *dst_buf) |
| This method sets the destination buffer of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_atomic_cmp_swp_get_dst_buf (const struct doca_rdma_task_atomic_cmp_swp *task) |
| This method gets the destination buffer of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_cmp_swp_set_result_buf (struct doca_rdma_task_atomic_cmp_swp *task, struct doca_buf *result_buf) |
| This method sets the result buffer of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_atomic_cmp_swp_get_result_buf (const struct doca_rdma_task_atomic_cmp_swp *task) |
| This method gets the result buffer of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_cmp_swp_set_cmp_data (struct doca_rdma_task_atomic_cmp_swp *task, uint64_t cmp_data) |
| This method sets the compare data of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL uint64_t | doca_rdma_task_atomic_cmp_swp_get_cmp_data (const struct doca_rdma_task_atomic_cmp_swp *task) |
| This method gets the compare data of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_cmp_swp_set_swap_data (struct doca_rdma_task_atomic_cmp_swp *task, uint64_t swap_data) |
| This method sets the swap data of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL uint64_t | doca_rdma_task_atomic_cmp_swp_get_swap_data (const struct doca_rdma_task_atomic_cmp_swp *task) |
| This method gets the swap data of an atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_cmp_swp_set_rdma_connection (struct doca_rdma_task_atomic_cmp_swp *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_atomic_cmp_swp_get_rdma_connection (const struct doca_rdma_task_atomic_cmp_swp *task) |
| This method gets the rdma connection of a atomic compare and swap task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_atomic_fetch_add_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_atomic_fetch_add_set_conf (struct doca_rdma *rdma, doca_rdma_task_atomic_fetch_add_completion_cb_t successful_task_completion_cb, doca_rdma_task_atomic_fetch_add_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the atomic fetch and add tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_atomic_fetch_add_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, struct doca_buf *dst_buf, struct doca_buf *result_buf, uint64_t add_data, union doca_data user_data, struct doca_rdma_task_atomic_fetch_add **task) |
| This method allocates and initializes an atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_atomic_fetch_add_as_task (struct doca_rdma_task_atomic_fetch_add *task) |
| This method converts an atomic fetch and add task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_fetch_add_set_dst_buf (struct doca_rdma_task_atomic_fetch_add *task, struct doca_buf *dst_buf) |
| This method sets the destination buffer of an atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_atomic_fetch_add_get_dst_buf (const struct doca_rdma_task_atomic_fetch_add *task) |
| This method gets the destination buffer of an atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_fetch_add_set_result_buf (struct doca_rdma_task_atomic_fetch_add *task, struct doca_buf *result_buf) |
| This method sets the result buffer of an atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_atomic_fetch_add_get_result_buf (const struct doca_rdma_task_atomic_fetch_add *task) |
| This method gets the result buffer of an atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_fetch_add_set_add_data (struct doca_rdma_task_atomic_fetch_add *task, uint64_t add_data) |
| This method sets the add data of an atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL uint64_t | doca_rdma_task_atomic_fetch_add_get_add_data (const struct doca_rdma_task_atomic_fetch_add *task) |
| This method gets the add data of an atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_atomic_fetch_add_set_rdma_connection (struct doca_rdma_task_atomic_fetch_add *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_atomic_fetch_add_get_rdma_connection (const struct doca_rdma_task_atomic_fetch_add *task) |
| This method gets the rdma connection of a atomic fetch and add task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_remote_net_sync_event_get_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_remote_net_sync_event_get_set_conf (struct doca_rdma *rdma, doca_rdma_task_remote_net_sync_event_get_completion_cb_t successful_task_completion_cb, doca_rdma_task_remote_net_sync_event_get_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the remote_net_sync_event_get tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_remote_net_sync_event_get_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, const struct doca_sync_event_remote_net *event, struct doca_buf *dst_buf, union doca_data user_data, struct doca_rdma_task_remote_net_sync_event_get **task) |
| This method allocates and initializes a remote_net_sync_event_get task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_remote_net_sync_event_get_as_task (struct doca_rdma_task_remote_net_sync_event_get *task) |
| This method converts a remote_net_sync_event_get task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_get_set_sync_event (struct doca_rdma_task_remote_net_sync_event_get *task, const struct doca_sync_event_remote_net *event) |
| This method sets the remote net sync event of a remote_net_sync_event_get task. More... | |
| DOCA_EXPERIMENTAL const struct doca_sync_event_remote_net * | doca_rdma_task_remote_net_sync_event_get_get_sync_event (const struct doca_rdma_task_remote_net_sync_event_get *task) |
| This method gets the remote net sync event of a remote_net_sync_event_get task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_get_set_dst_buf (struct doca_rdma_task_remote_net_sync_event_get *task, struct doca_buf *dst_buf) |
| This method sets the destination buffer of a remote_net_sync_event_get task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_remote_net_sync_event_get_get_dst_buf (const struct doca_rdma_task_remote_net_sync_event_get *task) |
| This method gets the destination buffer of a remote_net_sync_event_get task. More... | |
| DOCA_EXPERIMENTAL uint32_t | doca_rdma_task_remote_net_sync_event_get_get_result_len (const struct doca_rdma_task_remote_net_sync_event_get *task) |
| This method gets the length of data read by the task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_get_set_rdma_connection (struct doca_rdma_task_remote_net_sync_event_get *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a remote_net_sync_event_get task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_remote_net_sync_event_get_get_rdma_connection (const struct doca_rdma_task_remote_net_sync_event_get *task) |
| This method gets the rdma connection of a remote_net_sync_event_get task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_remote_net_sync_event_notify_set_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_remote_net_sync_event_notify_set_set_conf (struct doca_rdma *rdma, doca_rdma_task_remote_net_sync_event_notify_set_completion_cb_t successful_task_completion_cb, doca_rdma_task_remote_net_sync_event_notify_set_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the remote_net_sync_event_notify_set tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_remote_net_sync_event_notify_set_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, struct doca_sync_event_remote_net *event, const struct doca_buf *src_buf, union doca_data user_data, struct doca_rdma_task_remote_net_sync_event_notify_set **task) |
| This method allocates and initializes a remote_net_sync_event_notify_set task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_remote_net_sync_event_notify_set_as_task (struct doca_rdma_task_remote_net_sync_event_notify_set *task) |
| This method converts a remote_net_sync_event_notify_set task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_notify_set_set_sync_event (struct doca_rdma_task_remote_net_sync_event_notify_set *task, struct doca_sync_event_remote_net *event) |
| This method sets the remote net sync event of a remote_net_sync_event_notify_set task. More... | |
| DOCA_EXPERIMENTAL struct doca_sync_event_remote_net * | doca_rdma_task_remote_net_sync_event_notify_set_get_sync_event (const struct doca_rdma_task_remote_net_sync_event_notify_set *task) |
| This method gets the remote net sync event of a remote_net_sync_event_notify_set task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_notify_set_set_rdma_connection (struct doca_rdma_task_remote_net_sync_event_notify_set *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a remote_net_sync_event_notify_set task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_remote_net_sync_event_notify_set_get_rdma_connection (const struct doca_rdma_task_remote_net_sync_event_notify_set *task) |
| This method gets the rdma connection of a remote_net_sync_event_notify_set task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_notify_set_set_src_buf (struct doca_rdma_task_remote_net_sync_event_notify_set *task, const struct doca_buf *src_buf) |
| This method sets the source buffer of a remote_net_sync_event_notify_set task. More... | |
| DOCA_EXPERIMENTAL const struct doca_buf * | doca_rdma_task_remote_net_sync_event_notify_set_get_src_buf (const struct doca_rdma_task_remote_net_sync_event_notify_set *task) |
| This method gets the source buffer of a remote_net_sync_event_notify_set task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_cap_task_remote_net_sync_event_notify_add_is_supported (const struct doca_devinfo *devinfo) |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_remote_net_sync_event_notify_add_set_conf (struct doca_rdma *rdma, doca_rdma_task_remote_net_sync_event_notify_add_completion_cb_t successful_task_completion_cb, doca_rdma_task_remote_net_sync_event_notify_add_completion_cb_t error_task_completion_cb, uint32_t num_tasks) |
| This method sets the remote_net_sync_event_notify_add tasks configuration. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_task_remote_net_sync_event_notify_add_allocate_init (struct doca_rdma *rdma, struct doca_rdma_connection *rdma_connection, struct doca_sync_event_remote_net *event, struct doca_buf *result_buf, uint64_t add_data, union doca_data user_data, struct doca_rdma_task_remote_net_sync_event_notify_add **task) |
| This method allocates and initializes a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL struct doca_task * | doca_rdma_task_remote_net_sync_event_notify_add_as_task (struct doca_rdma_task_remote_net_sync_event_notify_add *task) |
| This method converts a remote_net_sync_event_notify_add task to a doca_task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_notify_add_set_sync_event (struct doca_rdma_task_remote_net_sync_event_notify_add *task, struct doca_sync_event_remote_net *event) |
| This method sets the remote sync event of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL struct doca_sync_event_remote_net * | doca_rdma_task_remote_net_sync_event_notify_add_get_sync_event (const struct doca_rdma_task_remote_net_sync_event_notify_add *task) |
| This method gets the remote sync event of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_notify_add_set_result_buf (struct doca_rdma_task_remote_net_sync_event_notify_add *task, struct doca_buf *result_buf) |
| This method sets the result buffer of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL struct doca_buf * | doca_rdma_task_remote_net_sync_event_notify_add_get_result_buf (const struct doca_rdma_task_remote_net_sync_event_notify_add *task) |
| This method gets the result buffer of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_notify_add_set_add_data (struct doca_rdma_task_remote_net_sync_event_notify_add *task, uint64_t add_data) |
| This method sets the add data of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL uint64_t | doca_rdma_task_remote_net_sync_event_notify_add_get_add_data (const struct doca_rdma_task_remote_net_sync_event_notify_add *task) |
| This method gets the add data of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL void | doca_rdma_task_remote_net_sync_event_notify_add_set_rdma_connection (struct doca_rdma_task_remote_net_sync_event_notify_add *task, struct doca_rdma_connection *rdma_connection) |
| This method sets the rdma_connection of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection * | doca_rdma_task_remote_net_sync_event_notify_add_get_rdma_connection (const struct doca_rdma_task_remote_net_sync_event_notify_add *task) |
| This method gets the rdma connection of a remote_net_sync_event_notify_add task. More... | |
| DOCA_EXPERIMENTAL doca_error_t | doca_rdma_dpa_completion_attach (struct doca_rdma *rdma, struct doca_dpa_completion *dpa_comp) |
| Attach DOCA RDMA to DPA completion context. More... | |
DOCA RDMA library. For more details please refer to the user guide on DOCA devzone.
| typedef uint64_t doca_dpa_dev_rdma_t |
Typedef representing a DOCA RDMA DPA handle instance.
Definition at line 84 of file doca_rdma.h.
| typedef void(* doca_rdma_connection_disconnection_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data connection_user_data, union doca_data ctx_user_data) |
Function to execute on connection disconnection event.
This function is called by doca_pe_progress() when a connection is disconnected either by server or client. When this function is called the user (acting as a client) will receive notification of disconnection from an established connection. Inside this callback the user may decide to account for the issue to decide whether to re-try or re-evaluate. Inside this callback the user shouldn't call doca_pe_progress(). Please see doca_pe_progress() for details.
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | connection_user_data | The doca_data supplied to the connection by the application (during connection or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1272 of file doca_rdma.h.
| typedef void(* doca_rdma_connection_established_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data connection_user_data, union doca_data ctx_user_data) |
Function to execute on connection established event.
This function is called by doca_pe_progress() when a connection successfully established with a server. When this function is called the user (acting as a client) will receive notification of a connection established. Inside this callback the user may decide to account for the established. Inside this callback the user shouldn't call doca_pe_progress(). Please see doca_pe_progress() for details.
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | connection_user_data | The doca_data supplied to the connection by the application (during connection or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1224 of file doca_rdma.h.
| typedef void(* doca_rdma_connection_failure_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data connection_user_data, union doca_data ctx_user_data) |
Function to execute on connection failure event.
This function is called by doca_pe_progress() when a connection fails to be established. When this function is called the user (acting as a client) will receive notification of a connection failure. Inside this callback the user may decide to account for the issue to decide whether to re-try or re-evaluate. Inside this callback the user shouldn't call doca_pe_progress(). Please see doca_pe_progress() for details.
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | connection_user_data | The doca_data supplied to the connection by the application (during connection or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1248 of file doca_rdma.h.
| typedef void(* doca_rdma_connection_request_cb_t) (struct doca_rdma_connection *rdma_connection, union doca_data ctx_user_data) |
Function to execute on connection request event.
This function is called by doca_pe_progress() when a connection request is received by a server. When this function is called the user (acting as a server) will receive notification of a connection request. Inside this callback the user may decide whether to accept or reject this connection. Inside this callback the user shouldn't call doca_pe_progress(). Please see doca_pe_progress() for details.
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1201 of file doca_rdma.h.
| typedef void(* doca_rdma_task_atomic_cmp_swp_completion_cb_t) (struct doca_rdma_task_atomic_cmp_swp *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of an atomic compare and swap task.
This function is called by doca_pe_progress() when an atomic compare and swap task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed atomic compare and swap task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 2647 of file doca_rdma.h.
| typedef void(* doca_rdma_task_atomic_fetch_add_completion_cb_t) (struct doca_rdma_task_atomic_fetch_add *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of an atomic fetch and add task.
This function is called by doca_pe_progress() when an atomic fetch and add task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed atomic fetch and add task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 2908 of file doca_rdma.h.
| typedef void(* doca_rdma_task_read_completion_cb_t) (struct doca_rdma_task_read *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a read task.
This function is called by doca_pe_progress() when a read task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed read task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1987 of file doca_rdma.h.
| typedef void(* doca_rdma_task_receive_completion_cb_t) (struct doca_rdma_task_receive *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a receive task.
This function is called by doca_pe_progress() when a receive task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed receive task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1349 of file doca_rdma.h.
| typedef void(* doca_rdma_task_remote_net_sync_event_get_completion_cb_t) (struct doca_rdma_task_remote_net_sync_event_get *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a remote_net_sync_event_get task.
This function is called by doca_pe_progress() when a remote_net_sync_event_get task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed remote_net_sync_event_get task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 3138 of file doca_rdma.h.
| typedef void(* doca_rdma_task_remote_net_sync_event_notify_add_completion_cb_t) (struct doca_rdma_task_remote_net_sync_event_notify_add *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a remote_net_sync_event_notify_add task.
This function is called by doca_pe_progress() when a remote_net_sync_event_notify_add task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed remote_net_sync_event_notify_add task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 3564 of file doca_rdma.h.
| typedef void(* doca_rdma_task_remote_net_sync_event_notify_set_completion_cb_t) (struct doca_rdma_task_remote_net_sync_event_notify_set *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a remote_net_sync_event_notify_set task.
This function is called by doca_pe_progress() when a remote_net_sync_event_notify_set task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed remote_net_sync_event_notify_set task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 3357 of file doca_rdma.h.
| typedef void(* doca_rdma_task_send_completion_cb_t) (struct doca_rdma_task_send *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a send task.
This function is called by doca_pe_progress() when a send task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed send task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1614 of file doca_rdma.h.
| typedef void(* doca_rdma_task_send_imm_completion_cb_t) (struct doca_rdma_task_send_imm *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a send with immediate task.
This function is called by doca_pe_progress() when a send with immediate task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed send with immediate task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 1787 of file doca_rdma.h.
| typedef void(* doca_rdma_task_write_completion_cb_t) (struct doca_rdma_task_write *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a write task.
This function is called by doca_pe_progress() when a write task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed write task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 2203 of file doca_rdma.h.
| typedef void(* doca_rdma_task_write_imm_completion_cb_t) (struct doca_rdma_task_write_imm *task, union doca_data task_user_data, union doca_data ctx_user_data) |
Function to execute on completion of a write with immediate task.
This function is called by doca_pe_progress() when a write with immediate task is successfully identified as completed. When this function is called the ownership of the task object passes from DOCA back to user. Inside this callback the user may decide on the task object:
Any failure/error inside this function should be handled internally or deferred; Since this function is nested in the execution of doca_pe_progress(), this callback doesn't return an error.
| [in] | task | The completed write with immediate task. |
| [in] | task_user_data | The doca_data supplied to the task by the application (during task allocation or by a setter). |
| [in] | ctx_user_data | The doca_data supplied to the doca_ctx by the application (using a setter). |
Definition at line 2409 of file doca_rdma.h.
| enum doca_rdma_addr_type |
DOCA RDMA addr type
| Enumerator | |
|---|---|
| DOCA_RDMA_ADDR_TYPE_IPv4 | IPv4 type |
| DOCA_RDMA_ADDR_TYPE_IPv6 | IPv6 type |
| DOCA_RDMA_ADDR_TYPE_GID | GID type |
Definition at line 56 of file doca_rdma.h.
| enum doca_rdma_opcode |
Task receive result opcodes
| Enumerator | |
|---|---|
| DOCA_RDMA_OPCODE_RECV_SEND | |
| DOCA_RDMA_OPCODE_RECV_SEND_WITH_IMM | |
| DOCA_RDMA_OPCODE_RECV_WRITE_WITH_IMM | |
Definition at line 1318 of file doca_rdma.h.
Available transport types for RDMA
| Enumerator | |
|---|---|
| DOCA_RDMA_TRANSPORT_TYPE_RC | RC transport type |
| DOCA_RDMA_TRANSPORT_TYPE_DC | DC transport type, supported only in export/connect flow and CPU datapath |
Definition at line 45 of file doca_rdma.h.
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_addr_create | ( | enum doca_rdma_addr_type | addr_type, |
| const char * | address, | ||
| uint16_t | port, | ||
| struct doca_rdma_addr ** | addr | ||
| ) |
Set connection address object for doca_rdma. The object can be queried using doca_rdma_connection_get_addr().
| [in] | addr_type | According to doca_rdma_addr_type enum. |
| [in] | address | Address to set the connection rdma_connection to. |
| [in] | port | Port to set the connection rdma_connection to. |
| [out] | addr | Address object to use in context for connection. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_addr_destroy | ( | struct doca_rdma_addr * | addr | ) |
Destroy connection address object for doca_rdma.
| [in] | addr | Address object to be destroyed use in context for connection. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_addr_get_params | ( | struct doca_rdma_addr * | addr, |
| enum doca_rdma_addr_type * | addr_type, | ||
| const char ** | address, | ||
| uint16_t * | port | ||
| ) |
Get address object parameters from an address object.
| [in] | addr | A pointer to the address object to retrieve the parameters from. |
| [out] | addr_type | Address type to retrieve from address object. |
| [out] | address | Address to retrieve from address object. |
| [out] | port | Port to retrieve from address object. |
| DOCA_EXPERIMENTAL struct doca_ctx* doca_rdma_as_ctx | ( | struct doca_rdma * | rdma | ) |
Convert doca_rdma instance into a generalized context for use with doca core objects.
| [in] | rdma | RDMA instance. This must remain valid until after the context is no longer required. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_bridge_accept | ( | struct doca_rdma * | rdma, |
| void * | private_data, | ||
| uint8_t | private_data_len, | ||
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
Accept the connection from client side acting as a bridge. This method acts as a bridge to accept a connection request from an application that performs the listen process by itself. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Only after a connection is established can send tasks be allocated and submitted.
| [in] | rdma | Pointer to doca_rdma to connect. |
| [in] | private_data | The RDMA connection private data to be sent in RDMA CM ACCEPT. |
| [in] | private_data_len | The RDMA connection size of the private data that is sent in RDMA CM ACCEPT. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_bridge_established | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
Notify the server side of the successful established connection with client Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state.
| [in] | rdma | Pointer to doca_rdma to connect. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_bridge_prepare_connection | ( | struct doca_rdma * | rdma, |
| struct rdma_cm_id * | cm_id, | ||
| struct doca_rdma_connection ** | rdma_connection | ||
| ) |
Prepare the connection and perform the doca connection to client side acting as a bridge. This method acts as a bridge to prepare and perform the doca connection to a connection request from an application that performs the listen process by itself. This function only prepare the DOCA connection, it is necessary to call doca_rdma_bridge_accept(), to continue the connection process. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state.
| [in] | rdma | Pointer to doca_rdma to connect. |
| [in] | cm_id | RDMA CM ID object that carries the connection details. |
| [out] | rdma_connection | Connection related data required for doca_rdma to connect. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_get_gid | ( | const struct doca_devinfo * | devinfo, |
| uint32_t | start_index, | ||
| uint32_t | num_entries, | ||
| struct doca_rdma_gid * | gid_array | ||
| ) |
Get gids for a specific device by index and number of entries.
| [in] | devinfo | The DOCA device information |
| [in] | start_index | The first gid index of interest |
| [in] | num_entries | The number of desired gid indices |
| [in,out] | gid_array | A 'struct doca_rdma_gid' array of size 'num_entries', that on success will hold the desired gids. Note that it is the user's responsibility to provide an array with enough entries to prevent data corruption |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_get_gid_table_size | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | gid_table_size | ||
| ) |
Get the gid table size for a specific device.
| [in] | devinfo | The DOCA device information |
| [out] | gid_table_size | The gid table size for the given devinfo. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_get_max_message_size | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_message_size | ||
| ) |
Get the maximal message size for a specific device.
| [in] | devinfo | The DOCA device information |
| [out] | max_message_size | The maximal message size for the given devinfo. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_get_max_recv_queue_size | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_recv_queue_size | ||
| ) |
Get the maximal recv queue size for a specific device.
| [in] | devinfo | The DOCA device information |
| [out] | max_recv_queue_size | The maximal recv queue size for the given devinfo. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_get_max_send_buf_list_len | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_send_buf_list_len | ||
| ) |
Get the maximal buffer list length property for buffers of tasks that are sent to the remote and in which linked list are supported (i.e. send, send_imm, read, write, write_imm).
| [in] | devinfo | The DOCA device information |
| [out] | max_send_buf_list_len | Maximal buffer list length to used for buffers that support linked list in relevant tasks, for the given devinfo. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_get_max_send_queue_size | ( | const struct doca_devinfo * | devinfo, |
| uint32_t * | max_send_queue_size | ||
| ) |
Get the maximal send queue size for a specific device.
| [in] | devinfo | The DOCA device information |
| [out] | max_send_queue_size | The of the maximal send queue size for the given devinfo. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_atomic_cmp_swp_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing an atomic compare and swap task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_atomic_fetch_add_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing an atomic fetch and add task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_read_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a read task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_receive_get_max_dst_buf_list_len | ( | const struct doca_devinfo * | devinfo, |
| enum doca_rdma_transport_type | transport_type, | ||
| uint32_t * | max_buf_list_len | ||
| ) |
Get the maximal buffer list length for a destination buffer of a receive task, for the given devinfo and transport type.
| [in] | devinfo | The DOCA device information. |
| [in] | transport_type | The relevant transport type. |
| [out] | max_buf_list_len | The maximal number of local buffers that can be chained with a destination buffer of a receive task, for the given devinfo and transport type. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_receive_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a receive task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_remote_net_sync_event_get_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a remote_net_sync_event_get task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_remote_net_sync_event_notify_add_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a remote_net_sync_event_notify_add task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_remote_net_sync_event_notify_set_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a remote_net_sync_event_notify_set task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_send_imm_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a send with immediate task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_send_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a send task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_write_imm_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a write with immediate task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_task_write_is_supported | ( | const struct doca_devinfo * | devinfo | ) |
Check if a given device supports executing a write task.
| [in] | devinfo | The DOCA device information that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_cap_transport_type_is_supported | ( | const struct doca_devinfo * | devinfo, |
| enum doca_rdma_transport_type | transport_type | ||
| ) |
Check if DOCA RDMA supports given transport type for a specific device.
| [in] | devinfo | The DOCA device information |
| [in] | transport_type | Transport type to query support for. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connect | ( | struct doca_rdma * | rdma, |
| const void * | remote_rdma_conn_details, | ||
| size_t | remote_rdma_conn_details_size, | ||
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
Connect to remote doca_rdma peer. Can only be called when the ctx is in DOCA_CTX_STATE_STARTING state (after calling doca_ctx_start()). Once called, doca_pe_progress() should be called, in order to transition the ctx to DOCA_CTX_STATE_RUNNING state. Only after that can tasks be allocated and submitted.
| [in] | rdma | Pointer to doca_rdma to connect. |
| [in] | remote_rdma_conn_details | Exported doca_rdma_conn_details object from remote peer. |
| [in] | remote_rdma_conn_details_size | Size of remote doca_rdma_conn_details object. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connect_to_addr | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_addr * | addr, | ||
| union doca_data | connection_user_data | ||
| ) |
Connect to a remote doca_rdma peer listening for a connection. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Once called, doca_pe_progress() should be called, in order to evaluate connection response. Only after a connection is established can send tasks be allocated and submitted.
| [in] | rdma | Pointer to doca_rdma to connect. |
| [in] | addr | Address to connect to listening for connection requests. |
| [in] | connection_user_data | The doca_data supplied to the connection by the application (during connection or by a setter). |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connection_accept | ( | struct doca_rdma_connection * | rdma_connection, |
| void * | private_data, | ||
| uint8_t | private_data_len | ||
| ) |
Accept an incoming connection request from remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Only after a connection is established can send tasks be allocated and submitted.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | private_data | The RDMA connection private data to be sent in RDMA CM ACCEPT. |
| [in] | private_data_len | The RDMA connection size of the private data that is sent in RDMA CM ACCEPT. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connection_disconnect | ( | struct doca_rdma_connection * | rdma_connection | ) |
Finalize a connection with a remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connection_get_addr | ( | const struct doca_rdma_connection * | rdma_connection, |
| struct doca_rdma_addr ** | addr | ||
| ) |
Get connection address object from a doca_rdma_connection.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [out] | addr | A pointer to the address object used for this connection. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connection_get_id | ( | const struct doca_rdma_connection * | rdma_connection, |
| uint32_t * | connection_id | ||
| ) |
Get connection ID from an rdma connection.
This method retrieves connection ID from an rdma connection object
| [in] | rdma_connection | The connection to get the property from. |
| [out] | connection_id | The connection ID |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connection_get_user_data | ( | const struct doca_rdma_connection * | rdma_connection, |
| union doca_data * | connection_user_data | ||
| ) |
Get user data included in a connection.
This method retrieves connection user data from a rdma connection (previously set using doca_rdma_connection_set_user_data).
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [out] | connection_user_data | Connection user data to get |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connection_reject | ( | struct doca_rdma_connection * | rdma_connection | ) |
Reject an incoming connection request from remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_connection_set_user_data | ( | struct doca_rdma_connection * | rdma_connection, |
| union doca_data | connection_user_data | ||
| ) |
Set user data to include in each connection.
This method sets a connection user data to a context. The connection user data will be returned as a parameter to connection state callbacks.
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | connection_user_data | doca_data to attach to the connection. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_create | ( | struct doca_dev * | dev, |
| struct doca_rdma ** | rdma | ||
| ) |
Create a DOCA RDMA instance.
| [in] | dev | The device to attach to the RDMA instance. |
| [out] | rdma | Pointer to pointer to be set to point to the created doca_rdma instance. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_destroy | ( | struct doca_rdma * | rdma | ) |
Destroy a DOCA RDMA instance.
| [in] | rdma | Pointer to instance to be destroyed. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_dpa_completion_attach | ( | struct doca_rdma * | rdma, |
| struct doca_dpa_completion * | dpa_comp | ||
| ) |
Attach DOCA RDMA to DPA completion context.
This function must be called before DOCA RDMA context is started
| [in] | rdma | doca_rdma context |
| [in] | dpa_comp | DPA completion context |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_export | ( | struct doca_rdma * | rdma, |
| const void ** | local_rdma_conn_details, | ||
| size_t * | local_rdma_conn_details_size, | ||
| struct doca_rdma_connection ** | rdma_connection | ||
| ) |
Export doca_rdma connection details object The doca_rdma_conn_details are used in doca_rdma_connect(). Can only be called after calling doca_ctx_start().
| [in] | rdma | Pointer doca_rdma to export connection details for. |
| [out] | local_rdma_conn_details | Exported doca_rdma_conn_details object. |
| [out] | local_rdma_conn_details_size | Size of exported doca_rdma_conn_details object. |
| [out] | rdma_connection | Connection related data required for doca_rdma to connect. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_connection_request_timeout | ( | const struct doca_rdma * | rdma, |
| uint16_t * | timeout | ||
| ) |
Get timeout property for doca_rdma. Returns the current timeout set for the connection resolve related functions. The size returned is the actual size being used and might differ from the size set by the user, as the size may be increased.
| [in] | rdma | doca_rdma context to set the property for. |
| [out] | timeout | Timeout value (in milliseconds) to use in context for connection. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_dpa_handle | ( | struct doca_rdma * | rdma, |
| doca_dpa_dev_rdma_t * | dpa_rdma | ||
| ) |
Retrieve the handle in the dpa memory space of a doca_rdma.
| [in] | rdma | doca_rdma context to get the dpa handle from. |
| [out] | dpa_rdma | A pointer to the handle in the dpa memory space. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_gid_index | ( | const struct doca_rdma * | rdma, |
| uint32_t * | gid_index | ||
| ) |
Get GID index from doca_rdma. Get the current GID index set for doca_rdma.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | gid_index | GID index used in doca_rdma. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_gpu_handle | ( | struct doca_rdma * | rdma, |
| struct doca_gpu_dev_rdma ** | gpu_rdma | ||
| ) |
Retrieve the handle in the gpu memory space of a doca_rdma.
| [in] | rdma | doca_rdma context to get the gpu handle from. |
| [out] | gpu_rdma | A pointer to the handle in the gpu memory space. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_grh_enabled | ( | const struct doca_rdma * | rdma, |
| uint8_t * | grh_enabled | ||
| ) |
Get GRH setting from doca_rdma. Get the current GRH setting for doca_rdma.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | grh_enabled | 1 if GRH setting was used in doca_rdma, 0 otherwise. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_max_num_connections | ( | struct doca_rdma * | rdma, |
| uint16_t * | max_num_connections | ||
| ) |
Get maximum number of connections property for doca_rdma. Returns the current maximum number of connections set for a context.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | max_num_connections | The maximum amount of connections allowed in this context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_max_send_buf_list_len | ( | const struct doca_rdma * | rdma, |
| uint32_t * | max_send_buf_list_len | ||
| ) |
Get the maximum buffer list length property for local buffers of tasks that are sent to the remote and in which linked list are supported (i.e. send, send_imm, read, write, write_imm).
| [in] | rdma | The RDMA instance to get the property from. |
| [out] | max_send_buf_list_len | Maximum buffer list length to used for local buffer in relevant tasks. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_mtu | ( | const struct doca_rdma * | rdma, |
| enum doca_mtu_size * | mtu | ||
| ) |
Get the MTU property from doca_rdma. Returns the current MTU set for the doca_rdma context.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | mtu | MTU set in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_permissions | ( | struct doca_rdma * | rdma, |
| uint32_t * | permissions | ||
| ) |
Get permissions property from doca_rdma. Returns the current permissions set for the doca_rdma_context. Can only be called after calling doca_ctx_dev_add().
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | permissions | Bitwise combination of RDMA access flags set in context - see enum doca_access_flag |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_recv_queue_size | ( | const struct doca_rdma * | rdma, |
| uint32_t * | recv_queue_size | ||
| ) |
Get recv queue size property from doca_rdma. Returns the current recv_queue_size set for the doca_rdma_context. The size returned is the actual size being used and might differ from the size set by the user, as the size may be increased.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | recv_queue_size | Recv queue size set in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_rnr_retry_count | ( | const struct doca_rdma * | rdma, |
| uint8_t * | rnr_retry_count | ||
| ) |
Get rnr retry count property for doca_rdma. Returns the current rnr retry count set for a context.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | rnr_retry_count | rnr retry count used in doca_rdma. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_send_queue_size | ( | const struct doca_rdma * | rdma, |
| uint32_t * | send_queue_size | ||
| ) |
Get send queue size property from doca_rdma. Returns the current send_queue_size set for the doca_rdma_context. The size returned is the actual size being used and might differ from the size set by the user, as the size may be increased.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | send_queue_size | Send queue size set in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_sl | ( | const struct doca_rdma * | rdma, |
| uint32_t * | sl | ||
| ) |
Get SL (service level) from doca_rdma. Get the current SL set for doca_rdma.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | sl | SL used in doca_rdma. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_get_transport_type | ( | const struct doca_rdma * | rdma, |
| enum doca_rdma_transport_type * | transport_type | ||
| ) |
Get transport_type property from doca_rdma. Returns the current transport_type set for the doca_rdma_context.
| [in] | rdma | doca_rdma context to get the property from. |
| [out] | transport_type | Transport_type set in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_connection_request_timeout | ( | struct doca_rdma * | rdma, |
| uint16_t | timeout | ||
| ) |
Set timeout property for doca_rdma. The value can be queried using doca_rdma_get_connection_request_timeout().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | timeout | The timeout (in milliseconds) to be used for connection resolve related functions. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_connection_state_callbacks | ( | struct doca_rdma * | rdma, |
| doca_rdma_connection_request_cb_t | doca_rdma_connect_request_cb, | ||
| doca_rdma_connection_established_cb_t | doca_rdma_connect_established_cb, | ||
| doca_rdma_connection_failure_cb_t | doca_rdma_connect_failure_cb, | ||
| doca_rdma_connection_disconnection_cb_t | doca_rdma_disconnect_cb | ||
| ) |
This method set the function executed on RDMA connection events.
| [in] | rdma | The RDMA instance to config. |
| [in] | doca_rdma_connect_request_cb | A callback function for connection request event. This parameter can be NULL in case application is only a client |
| [in] | doca_rdma_connect_established_cb | A callback function for connection established event. |
| [in] | doca_rdma_connect_failure_cb | A callback function for connection failure event. |
| [in] | doca_rdma_disconnect_cb | A callback function for connection disconnection event. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_gid_index | ( | struct doca_rdma * | rdma, |
| uint32_t | gid_index | ||
| ) |
Set GID index for doca_rdma. The value can be queried using doca_rdma_get_gid_index(). Can only be called before calling doca_ctx_start().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | gid_index | GID index to use in doca_rdma. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_grh_enabled | ( | struct doca_rdma * | rdma, |
| uint8_t | grh_enabled | ||
| ) |
Set whether to use GRH in connection. The value can be queried using doca_rdma_get_grh_enabled(). Can only be called before calling doca_ctx_start().
If using IB device: If GRH is disabled, the address will rely on LID only. If GRH is enabled, the other side must also use GRH.
If using ETH device, GRH must be enabled.
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | grh_enabled | 1 if GRH is used in doca_rdma, 0 otherwise. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_max_num_connections | ( | struct doca_rdma * | rdma, |
| uint16_t | max_num_connections | ||
| ) |
Set the maximum number of connections property for a context. The value can be queried using doca_rdma_get_max_num_connections().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | max_num_connections | The maximum amount of connections allowed. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_max_send_buf_list_len | ( | struct doca_rdma * | rdma, |
| uint32_t | max_send_buf_list_len | ||
| ) |
Set the maximum buffer list length property for local buffers of tasks that are sent to the remote and in which linked list are supported (i.e. send, send_imm, read, write, write_imm). The value in use can be queried using doca_rdma_get_max_send_buf_list_len().
| [in] | rdma | The RDMA instance to set the property for. |
| [in] | max_send_buf_list_len | Maximum buffer list length to use for local buffer in relevant tasks. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_mtu | ( | struct doca_rdma * | rdma, |
| enum doca_mtu_size | mtu | ||
| ) |
Set MTU for doca_rdma. The value can be queried using doca_rdma_get_mtu(). Can only be called before calling doca_ctx_start().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | mtu | MTU to use in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_permissions | ( | struct doca_rdma * | rdma, |
| uint32_t | permissions | ||
| ) |
Set rdma permissions for doca_rdma. The value can be queried using doca_rdma_get_permissions(). Can only be called after calling doca_ctx_dev_add() and before calling doca_ctx_start(). The supported permissions are the RDMA access flags.
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | permissions | Bitwise combination of RDMA access flags - see enum doca_access_flag |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_recv_queue_size | ( | struct doca_rdma * | rdma, |
| uint32_t | recv_queue_size | ||
| ) |
Set recv queue size property for doca_rdma. The value can be queried using doca_rdma_get_recv_queue_size(). Queue size will be rounded to the next power of 2.
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | recv_queue_size | Recv queue size to use in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_rnr_retry_count | ( | struct doca_rdma * | rdma, |
| uint8_t | rnr_retry_count | ||
| ) |
Set the rnr retry count property for a context. The value can be queried using doca_rdma_get_rnr_retry_count().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | rnr_retry_count | rnr retry count index to use in doca_rdma. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_send_queue_size | ( | struct doca_rdma * | rdma, |
| uint32_t | send_queue_size | ||
| ) |
Set send queue size property for doca_rdma. The value can be queried using doca_rdma_get_send_queue_size(). Queue size will be rounded to the next power of 2. can only be called before calling doca_ctx_start().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | send_queue_size | Send queue size to use in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_sl | ( | struct doca_rdma * | rdma, |
| uint32_t | sl | ||
| ) |
Set SL (service level) for doca_rdma. The value can be queried using doca_rdma_get_sl(). Can only be called before calling doca_ctx_start().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | sl | SL to use in doca_rdma. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_set_transport_type | ( | struct doca_rdma * | rdma, |
| enum doca_rdma_transport_type | transport_type | ||
| ) |
Set transport type for doca_rdma. The value can be queried using doca_rdma_get_transport_type(). Can only be called before calling doca_ctx_start().
| [in] | rdma | doca_rdma context to set the property for. |
| [in] | transport_type | Transport type to use in context. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_start_listen_to_port | ( | struct doca_rdma * | rdma, |
| uint16_t | port | ||
| ) |
Start listening for a connection from a remote doca_rdma peer. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Once called, doca_pe_progress() should be called, in order to evaluate possible connections requests. Only after a connection is established can send tasks be allocated and submitted.
| [in] | rdma | Pointer to doca_rdma to connect. |
| [in] | port | Port to listen to for connection requests. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_stop_listen_to_port | ( | struct doca_rdma * | rdma, |
| uint16_t | port | ||
| ) |
End the listen process for a connection from remote doca_rdma peers. Can be called when the ctx is in DOCA_CTX_STATE_RUNNING state. Once called, Server just stop listening for incoming connection requests and do not disconnect any remote doca_rdma peer.
| [in] | rdma | Pointer to doca_rdma to connect. |
| [in] | port | Port to stop listening to for connection requests. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_atomic_cmp_swp_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| struct doca_buf * | dst_buf, | ||
| struct doca_buf * | result_buf, | ||
| uint64_t | cmp_data, | ||
| uint64_t | swap_data, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_atomic_cmp_swp ** | task | ||
| ) |
This method allocates and initializes an atomic compare and swap task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | dst_buf | Remote destination buffer, on which the atomic 8-byte operation will be executed. |
| [in] | result_buf | Local buffer, to which the original remote 8-byte value (before the swap, if occurred) will be written. |
| [in] | cmp_data | An 8-byte value that will be compared to the remote 8-byte value. |
| [in] | swap_data | An 8-byte value that will be written to dst_buf, overwriting it's previous data, in case cmp_data is equal to the original remote 8-byte value. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized an atomic compare and swap task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_atomic_cmp_swp_as_task | ( | struct doca_rdma_task_atomic_cmp_swp * | task | ) |
This method converts an atomic compare and swap task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL uint64_t doca_rdma_task_atomic_cmp_swp_get_cmp_data | ( | const struct doca_rdma_task_atomic_cmp_swp * | task | ) |
This method gets the compare data of an atomic compare and swap task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_atomic_cmp_swp_get_dst_buf | ( | const struct doca_rdma_task_atomic_cmp_swp * | task | ) |
This method gets the destination buffer of an atomic compare and swap task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_atomic_cmp_swp_get_rdma_connection | ( | const struct doca_rdma_task_atomic_cmp_swp * | task | ) |
This method gets the rdma connection of a atomic compare and swap task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_atomic_cmp_swp_get_result_buf | ( | const struct doca_rdma_task_atomic_cmp_swp * | task | ) |
This method gets the result buffer of an atomic compare and swap task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL uint64_t doca_rdma_task_atomic_cmp_swp_get_swap_data | ( | const struct doca_rdma_task_atomic_cmp_swp * | task | ) |
This method gets the swap data of an atomic compare and swap task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_cmp_swp_set_cmp_data | ( | struct doca_rdma_task_atomic_cmp_swp * | task, |
| uint64_t | cmp_data | ||
| ) |
This method sets the compare data of an atomic compare and swap task.
| [in] | task | The task to set. |
| [in] | cmp_data | An 8-byte value that will be compared to the remote 8-byte value. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_atomic_cmp_swp_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_atomic_cmp_swp_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_atomic_cmp_swp_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the atomic compare and swap tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for atomic compare and swap tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for atomic compare and swap tasks that were completed with an error. |
| [in] | num_tasks | Number of atomic compare and swap tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_cmp_swp_set_dst_buf | ( | struct doca_rdma_task_atomic_cmp_swp * | task, |
| struct doca_buf * | dst_buf | ||
| ) |
This method sets the destination buffer of an atomic compare and swap task.
| [in] | task | The task to set. |
| [in] | dst_buf | Remote destination buffer, on which the atomic 8-byte operation will be executed. |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_cmp_swp_set_rdma_connection | ( | struct doca_rdma_task_atomic_cmp_swp * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a atomic compare and swap task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_cmp_swp_set_result_buf | ( | struct doca_rdma_task_atomic_cmp_swp * | task, |
| struct doca_buf * | result_buf | ||
| ) |
This method sets the result buffer of an atomic compare and swap task.
| [in] | task | The task to set. |
| [in] | result_buf | Local buffer, to which the original remote 8-byte value (before the swap, if occurred) will be written. |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_cmp_swp_set_swap_data | ( | struct doca_rdma_task_atomic_cmp_swp * | task, |
| uint64_t | swap_data | ||
| ) |
This method sets the swap data of an atomic compare and swap task.
| [in] | task | The task to set. |
| [in] | swap_data | An 8-byte value that will be written to dst_buf, overwriting it's previous data, in case cmp_data is equal to the original remote 8-byte value. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_atomic_fetch_add_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| struct doca_buf * | dst_buf, | ||
| struct doca_buf * | result_buf, | ||
| uint64_t | add_data, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_atomic_fetch_add ** | task | ||
| ) |
This method allocates and initializes an atomic fetch and add task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | dst_buf | Remote destination buffer, on which the atomic 8-byte operation will be executed. |
| [in] | result_buf | Local buffer, to which the original remote 8-byte value (before the addition) will be written. |
| [in] | add_data | An 8-byte value that will be added to the remote 8-byte value in dst_buf. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized an atomic fetch and add task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_atomic_fetch_add_as_task | ( | struct doca_rdma_task_atomic_fetch_add * | task | ) |
This method converts an atomic fetch and add task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL uint64_t doca_rdma_task_atomic_fetch_add_get_add_data | ( | const struct doca_rdma_task_atomic_fetch_add * | task | ) |
This method gets the add data of an atomic fetch and add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_atomic_fetch_add_get_dst_buf | ( | const struct doca_rdma_task_atomic_fetch_add * | task | ) |
This method gets the destination buffer of an atomic fetch and add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_atomic_fetch_add_get_rdma_connection | ( | const struct doca_rdma_task_atomic_fetch_add * | task | ) |
This method gets the rdma connection of a atomic fetch and add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_atomic_fetch_add_get_result_buf | ( | const struct doca_rdma_task_atomic_fetch_add * | task | ) |
This method gets the result buffer of an atomic fetch and add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_fetch_add_set_add_data | ( | struct doca_rdma_task_atomic_fetch_add * | task, |
| uint64_t | add_data | ||
| ) |
This method sets the add data of an atomic fetch and add task.
| [in] | task | The task to set. |
| [in] | add_data | An 8-byte value that will be added to the remote 8-byte value in dst_buf. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_atomic_fetch_add_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_atomic_fetch_add_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_atomic_fetch_add_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the atomic fetch and add tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for atomic fetch and add tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for atomic fetch and add tasks that were completed with an error. |
| [in] | num_tasks | Number of atomic fetch and add tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_fetch_add_set_dst_buf | ( | struct doca_rdma_task_atomic_fetch_add * | task, |
| struct doca_buf * | dst_buf | ||
| ) |
This method sets the destination buffer of an atomic fetch and add task.
| [in] | task | The task to set. |
| [in] | dst_buf | Remote destination buffer, on which the atomic 8-byte operation will be executed. |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_fetch_add_set_rdma_connection | ( | struct doca_rdma_task_atomic_fetch_add * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a atomic fetch and add task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_atomic_fetch_add_set_result_buf | ( | struct doca_rdma_task_atomic_fetch_add * | task, |
| struct doca_buf * | result_buf | ||
| ) |
This method sets the result buffer of an atomic fetch and add task.
| [in] | task | The task to set. |
| [in] | result_buf | Local buffer, to which the original remote 8-byte value (before the addition) will be written. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_read_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| const struct doca_buf * | src_buf, | ||
| struct doca_buf * | dst_buf, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_read ** | task | ||
| ) |
This method allocates and initializes a read task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | src_buf | Remote source buffer, holding the data that should be read. May be NULL when wishing to read no data. |
| [in] | dst_buf | Local destination buffer, to which the read data will be written. May be NULL when src_buf is NULL. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a read task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_read_as_task | ( | struct doca_rdma_task_read * | task | ) |
This method converts a read task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_read_get_dst_buf | ( | const struct doca_rdma_task_read * | task | ) |
This method gets the destination buffer of a read task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_read_get_rdma_connection | ( | const struct doca_rdma_task_read * | task | ) |
This method gets the rdma connection of a read task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL uint32_t doca_rdma_task_read_get_result_len | ( | const struct doca_rdma_task_read * | task | ) |
This method gets the length of data read by the task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_buf* doca_rdma_task_read_get_src_buf | ( | const struct doca_rdma_task_read * | task | ) |
This method gets the source buffer of a read task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_read_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_read_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_read_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the read tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for read tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for read tasks that were completed with an error. |
| [in] | num_tasks | Number of read tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_read_set_dst_buf | ( | struct doca_rdma_task_read * | task, |
| struct doca_buf * | dst_buf | ||
| ) |
This method sets the destination buffer of a read task.
| [in] | task | The task to set. |
| [in] | dst_buf | Local destination buffer, to which the read data will be written. May be NULL when src_buf is NULL. If the destination buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL void doca_rdma_task_read_set_rdma_connection | ( | struct doca_rdma_task_read * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a read task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_read_set_src_buf | ( | struct doca_rdma_task_read * | task, |
| const struct doca_buf * | src_buf | ||
| ) |
This method sets the source buffer of a read task.
| [in] | task | The task to set. |
| [in] | src_buf | Local source buffer, with the data to be sent. May be NULL when wishing to send an empty message (without data). If the source buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_receive_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_buf * | dst_buf, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_receive ** | task | ||
| ) |
This method allocates and initializes a receive task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | dst_buf | Local destination buffer, for the received data. May be NULL when receiving an empty message (without data), with or without immediate. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a receive task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_receive_as_task | ( | struct doca_rdma_task_receive * | task | ) |
This method converts a receive task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_receive_get_dst_buf | ( | const struct doca_rdma_task_receive * | task | ) |
This method gets the destination buffer of a receive task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_receive_get_dst_buf_list_len | ( | const struct doca_rdma * | rdma, |
| uint32_t * | buf_list_len | ||
| ) |
Get the maximal destination buffer list length property for receive tasks. The returned value is the actual value being used and might differ from the size set by the user, as it may be increased.
| [in] | rdma | The RDMA instance to get the property from. |
| [out] | buf_list_len | buf_list_len used in doca_rdma. |
| DOCA_EXPERIMENTAL doca_be32_t doca_rdma_task_receive_get_result_immediate_data | ( | const struct doca_rdma_task_receive * | task | ) |
This method gets the immediate data received by the task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL uint32_t doca_rdma_task_receive_get_result_len | ( | const struct doca_rdma_task_receive * | task | ) |
This method gets the length of data received by the task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL enum doca_rdma_opcode doca_rdma_task_receive_get_result_opcode | ( | const struct doca_rdma_task_receive * | task | ) |
This method gets the opcode of the operation executed by the peer and received by the task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_receive_get_result_rdma_connection | ( | const struct doca_rdma_task_receive * | task | ) |
This method gets the rdma connection of a receive task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_receive_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_receive_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_receive_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the receive tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for receive tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for receive tasks that were completed with an error. |
| [in] | num_tasks | Number of receive tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_receive_set_dst_buf | ( | struct doca_rdma_task_receive * | task, |
| struct doca_buf * | dst_buf | ||
| ) |
This method sets the destination buffer of a receive task.
| [in] | task | The task to set. |
| [in] | dst_buf | Local destination buffer, for the received data. May be NULL when receiving an empty message (without data), with or without immediate. If the destination buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_receive_set_dst_buf_list_len | ( | struct doca_rdma * | rdma, |
| uint32_t | buf_list_len | ||
| ) |
Set the maximal destination buffer list length property for receive tasks. After starting the DOCA RDMA context the length may be increased and the value in use can be queried using doca_rdma_get_recv_buf_list_len().
| [in] | rdma | The RDMA instance to set the property for. |
| [in] | buf_list_len | buf_list_len to use in doca_rdma. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_remote_net_sync_event_get_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| const struct doca_sync_event_remote_net * | event, | ||
| struct doca_buf * | dst_buf, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_remote_net_sync_event_get ** | task | ||
| ) |
This method allocates and initializes a remote_net_sync_event_get task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | event | Remote net sync event to read its value. |
| [in] | dst_buf | Local destination buffer, to which the read data will be written. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a remote_net_sync_event_get task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_remote_net_sync_event_get_as_task | ( | struct doca_rdma_task_remote_net_sync_event_get * | task | ) |
This method converts a remote_net_sync_event_get task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_remote_net_sync_event_get_get_dst_buf | ( | const struct doca_rdma_task_remote_net_sync_event_get * | task | ) |
This method gets the destination buffer of a remote_net_sync_event_get task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_remote_net_sync_event_get_get_rdma_connection | ( | const struct doca_rdma_task_remote_net_sync_event_get * | task | ) |
This method gets the rdma connection of a remote_net_sync_event_get task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL uint32_t doca_rdma_task_remote_net_sync_event_get_get_result_len | ( | const struct doca_rdma_task_remote_net_sync_event_get * | task | ) |
This method gets the length of data read by the task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_sync_event_remote_net* doca_rdma_task_remote_net_sync_event_get_get_sync_event | ( | const struct doca_rdma_task_remote_net_sync_event_get * | task | ) |
This method gets the remote net sync event of a remote_net_sync_event_get task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_remote_net_sync_event_get_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_remote_net_sync_event_get_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_remote_net_sync_event_get_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the remote_net_sync_event_get tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for remote_net_sync_event_get tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for remote_net_sync_event_get tasks that were completed with an error. |
| [in] | num_tasks | Number of remote_net_sync_event_get tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_get_set_dst_buf | ( | struct doca_rdma_task_remote_net_sync_event_get * | task, |
| struct doca_buf * | dst_buf | ||
| ) |
This method sets the destination buffer of a remote_net_sync_event_get task.
| [in] | task | The task to set. |
| [in] | dst_buf | Local destination buffer, to which the remote_net_sync_event_get data will be written. |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_get_set_rdma_connection | ( | struct doca_rdma_task_remote_net_sync_event_get * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a remote_net_sync_event_get task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_get_set_sync_event | ( | struct doca_rdma_task_remote_net_sync_event_get * | task, |
| const struct doca_sync_event_remote_net * | event | ||
| ) |
This method sets the remote net sync event of a remote_net_sync_event_get task.
| [in] | task | The task to set. |
| [in] | event | Remote net sync event to read its value. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_remote_net_sync_event_notify_add_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| struct doca_sync_event_remote_net * | event, | ||
| struct doca_buf * | result_buf, | ||
| uint64_t | add_data, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_remote_net_sync_event_notify_add ** | task | ||
| ) |
This method allocates and initializes a remote_net_sync_event_notify_add task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | event | Remote sync event to atomically increment by a given value. |
| [in] | result_buf | Local buffer, to which the original remote sync event value (before the addition) will be written. |
| [in] | add_data | An 8-byte value that will be added to the remote sync event value. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a remote_net_sync_event_notify_add task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_remote_net_sync_event_notify_add_as_task | ( | struct doca_rdma_task_remote_net_sync_event_notify_add * | task | ) |
This method converts a remote_net_sync_event_notify_add task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL uint64_t doca_rdma_task_remote_net_sync_event_notify_add_get_add_data | ( | const struct doca_rdma_task_remote_net_sync_event_notify_add * | task | ) |
This method gets the add data of a remote_net_sync_event_notify_add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_remote_net_sync_event_notify_add_get_rdma_connection | ( | const struct doca_rdma_task_remote_net_sync_event_notify_add * | task | ) |
This method gets the rdma connection of a remote_net_sync_event_notify_add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_remote_net_sync_event_notify_add_get_result_buf | ( | const struct doca_rdma_task_remote_net_sync_event_notify_add * | task | ) |
This method gets the result buffer of a remote_net_sync_event_notify_add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL struct doca_sync_event_remote_net* doca_rdma_task_remote_net_sync_event_notify_add_get_sync_event | ( | const struct doca_rdma_task_remote_net_sync_event_notify_add * | task | ) |
This method gets the remote sync event of a remote_net_sync_event_notify_add task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_notify_add_set_add_data | ( | struct doca_rdma_task_remote_net_sync_event_notify_add * | task, |
| uint64_t | add_data | ||
| ) |
This method sets the add data of a remote_net_sync_event_notify_add task.
| [in] | task | The task to set. |
| [in] | add_data | An 8-byte value that will be atomically added to the remote sync event. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_remote_net_sync_event_notify_add_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_remote_net_sync_event_notify_add_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_remote_net_sync_event_notify_add_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the remote_net_sync_event_notify_add tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for remote_net_sync_event_notify_add tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for remote_net_sync_event_notify_add tasks that were completed with an error. |
| [in] | num_tasks | Number of remote_net_sync_event_notify_add tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_notify_add_set_rdma_connection | ( | struct doca_rdma_task_remote_net_sync_event_notify_add * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a remote_net_sync_event_notify_add task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_notify_add_set_result_buf | ( | struct doca_rdma_task_remote_net_sync_event_notify_add * | task, |
| struct doca_buf * | result_buf | ||
| ) |
This method sets the result buffer of a remote_net_sync_event_notify_add task.
| [in] | task | The task to set. |
| [in] | result_buf | Local buffer, to which the original remote sync event value (before the addition) will be written. |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_notify_add_set_sync_event | ( | struct doca_rdma_task_remote_net_sync_event_notify_add * | task, |
| struct doca_sync_event_remote_net * | event | ||
| ) |
This method sets the remote sync event of a remote_net_sync_event_notify_add task.
| [in] | task | The task to set. |
| [in] | event | The remote sync event to increment atomically. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_remote_net_sync_event_notify_set_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| struct doca_sync_event_remote_net * | event, | ||
| const struct doca_buf * | src_buf, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_remote_net_sync_event_notify_set ** | task | ||
| ) |
This method allocates and initializes a remote_net_sync_event_notify_set task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | event | The remote sync event to set. |
| [in] | src_buf | Local source buffer, holding the value to set the remote net sync event to. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a remote_net_sync_event_notify_set task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_remote_net_sync_event_notify_set_as_task | ( | struct doca_rdma_task_remote_net_sync_event_notify_set * | task | ) |
This method converts a remote_net_sync_event_notify_set task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_remote_net_sync_event_notify_set_get_rdma_connection | ( | const struct doca_rdma_task_remote_net_sync_event_notify_set * | task | ) |
This method gets the rdma connection of a remote_net_sync_event_notify_set task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_buf* doca_rdma_task_remote_net_sync_event_notify_set_get_src_buf | ( | const struct doca_rdma_task_remote_net_sync_event_notify_set * | task | ) |
This method gets the source buffer of a remote_net_sync_event_notify_set task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL struct doca_sync_event_remote_net* doca_rdma_task_remote_net_sync_event_notify_set_get_sync_event | ( | const struct doca_rdma_task_remote_net_sync_event_notify_set * | task | ) |
This method gets the remote net sync event of a remote_net_sync_event_notify_set task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_remote_net_sync_event_notify_set_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_remote_net_sync_event_notify_set_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_remote_net_sync_event_notify_set_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the remote_net_sync_event_notify_set tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for remote_net_sync_event_notify_set tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for remote_net_sync_event_notify_set tasks that were completed with an error. |
| [in] | num_tasks | Number of remote_net_sync_event_notify_set tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_notify_set_set_rdma_connection | ( | struct doca_rdma_task_remote_net_sync_event_notify_set * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a remote_net_sync_event_notify_set task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_notify_set_set_src_buf | ( | struct doca_rdma_task_remote_net_sync_event_notify_set * | task, |
| const struct doca_buf * | src_buf | ||
| ) |
This method sets the source buffer of a remote_net_sync_event_notify_set task.
| [in] | task | The task to set. |
| [in] | src_buf | Local source buffer, holding the value to set the remote net sync event to. |
| DOCA_EXPERIMENTAL void doca_rdma_task_remote_net_sync_event_notify_set_set_sync_event | ( | struct doca_rdma_task_remote_net_sync_event_notify_set * | task, |
| struct doca_sync_event_remote_net * | event | ||
| ) |
This method sets the remote net sync event of a remote_net_sync_event_notify_set task.
| [in] | task | The task to set. |
| [in] | event | The remote net sync event to set. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_send_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| const struct doca_buf * | src_buf, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_send ** | task | ||
| ) |
This method allocates and initializes a send task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | src_buf | Local source buffer, with the data to be sent. May be NULL when wishing to send an empty message (without data). |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a send task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_send_as_task | ( | struct doca_rdma_task_send * | task | ) |
This method converts a send task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_send_get_rdma_connection | ( | const struct doca_rdma_task_send * | task | ) |
This method gets the rdma connection of a send task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_buf* doca_rdma_task_send_get_src_buf | ( | const struct doca_rdma_task_send * | task | ) |
This method gets the source buffer of a send task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_send_imm_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| const struct doca_buf * | src_buf, | ||
| doca_be32_t | immediate_data, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_send_imm ** | task | ||
| ) |
This method allocates and initializes a send with immediate task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | src_buf | Local source buffer, with the data to be sent. May be NULL when wishing to send an empty message (without data). |
| [in] | immediate_data | A 32-bit value, in Big-Endian, to be sent OOB to the peer along with the message. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a send with immediate task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_send_imm_as_task | ( | struct doca_rdma_task_send_imm * | task | ) |
This method converts a send with immediate task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL doca_be32_t doca_rdma_task_send_imm_get_immediate_data | ( | const struct doca_rdma_task_send_imm * | task | ) |
This method gets the immediate data of a send with immediate task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_send_imm_get_rdma_connection | ( | const struct doca_rdma_task_send_imm * | task | ) |
This method gets the rdma connection of a send with immediate task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_buf* doca_rdma_task_send_imm_get_src_buf | ( | const struct doca_rdma_task_send_imm * | task | ) |
This method gets the source buffer of a send with immediate task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_send_imm_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_send_imm_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_send_imm_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the send with immediate tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for send with immediate tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for send with immediate tasks that were completed with an error. |
| [in] | num_tasks | Number of send with immediate tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_send_imm_set_immediate_data | ( | struct doca_rdma_task_send_imm * | task, |
| doca_be32_t | immediate_data | ||
| ) |
This method sets the immediate data of a send with immediate task.
| [in] | task | The task to set. |
| [in] | immediate_data | A 32-bit value, in Big-Endian, to be sent OOB to the peer along with the message. |
| DOCA_EXPERIMENTAL void doca_rdma_task_send_imm_set_rdma_connection | ( | struct doca_rdma_task_send_imm * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a send with immediate task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_send_imm_set_src_buf | ( | struct doca_rdma_task_send_imm * | task, |
| const struct doca_buf * | src_buf | ||
| ) |
This method sets the source buffer of a send with immediate task.
| [in] | task | The task to set. |
| [in] | src_buf | Local source buffer, with the data to be sent. May be NULL when wishing to send an empty message (without data). If the source buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_send_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_send_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_send_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the send tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for send tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for send tasks that were completed with an error. |
| [in] | num_tasks | Number of send tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_send_set_rdma_connection | ( | struct doca_rdma_task_send * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a send task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_send_set_src_buf | ( | struct doca_rdma_task_send * | task, |
| const struct doca_buf * | src_buf | ||
| ) |
This method sets the source buffer of a send task.
| [in] | task | The task to set. |
| [in] | src_buf | Local source buffer, with the data to be sent. May be NULL when wishing to send an empty message (without data). If the source buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_write_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| const struct doca_buf * | src_buf, | ||
| struct doca_buf * | dst_buf, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_write ** | task | ||
| ) |
This method allocates and initializes a write task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | src_buf | Local source buffer, holding the data that should be written to the remote memory. May be NULL when wishing to write no data. |
| [in] | dst_buf | Remote destination buffer, to which the data will be written. May be NULL when src_buf is NULL. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a write task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_write_as_task | ( | struct doca_rdma_task_write * | task | ) |
This method converts a write task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_write_get_dst_buf | ( | const struct doca_rdma_task_write * | task | ) |
This method gets the destination buffer of a write task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_write_get_rdma_connection | ( | const struct doca_rdma_task_write * | task | ) |
This method gets the rdma connection of a write task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_buf* doca_rdma_task_write_get_src_buf | ( | const struct doca_rdma_task_write * | task | ) |
This method gets the source buffer of a write task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_write_imm_allocate_init | ( | struct doca_rdma * | rdma, |
| struct doca_rdma_connection * | rdma_connection, | ||
| const struct doca_buf * | src_buf, | ||
| struct doca_buf * | dst_buf, | ||
| doca_be32_t | immediate_data, | ||
| union doca_data | user_data, | ||
| struct doca_rdma_task_write_imm ** | task | ||
| ) |
This method allocates and initializes a write with immediate task.
| [in] | rdma | The RDMA instance to allocate the task for. |
| [in] | rdma_connection | Connection related data required for doca_rdma to connect. |
| [in] | src_buf | Local source buffer, holding the data that should be written to the remote memory. May be NULL when wishing to write no data. |
| [in] | dst_buf | Remote destination buffer, to which the data will be written. May be NULL when src_buf is NULL. |
| [in] | immediate_data | A 32-bit value, in Big-Endian, to be sent OOB to the peer along with the write data. |
| [in] | user_data | doca_data to attach to the task. |
| [out] | task | On success, an allocated and initialized a write with immediate task. |
| DOCA_EXPERIMENTAL struct doca_task* doca_rdma_task_write_imm_as_task | ( | struct doca_rdma_task_write_imm * | task | ) |
This method converts a write with immediate task to a doca_task.
| [in] | task | The task that should be converted. |
| DOCA_EXPERIMENTAL struct doca_buf* doca_rdma_task_write_imm_get_dst_buf | ( | const struct doca_rdma_task_write_imm * | task | ) |
This method gets the destination buffer of a write with immediate task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_be32_t doca_rdma_task_write_imm_get_immediate_data | ( | const struct doca_rdma_task_write_imm * | task | ) |
This method gets the immediate data of a write with immediate task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_rdma_connection* doca_rdma_task_write_imm_get_rdma_connection | ( | const struct doca_rdma_task_write_imm * | task | ) |
This method gets the rdma connection of a write with immediate task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL const struct doca_buf* doca_rdma_task_write_imm_get_src_buf | ( | const struct doca_rdma_task_write_imm * | task | ) |
This method gets the source buffer of a write with immediate task.
| [in] | task | The task that should be queried. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_write_imm_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_write_imm_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_write_imm_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the write with immediate tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for write with immediate tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for write with immediate tasks that were completed with an error. |
| [in] | num_tasks | Number of write with immediate tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_write_imm_set_dst_buf | ( | struct doca_rdma_task_write_imm * | task, |
| struct doca_buf * | dst_buf | ||
| ) |
This method sets the destination buffer of a write with immediate task.
| [in] | task | The task to set. |
| [in] | dst_buf | Remote destination buffer, to which the data will be written. May be NULL when src_buf is NULL. If the destination buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL void doca_rdma_task_write_imm_set_immediate_data | ( | struct doca_rdma_task_write_imm * | task, |
| doca_be32_t | immediate_data | ||
| ) |
This method sets the immediate data of a write with immediate task.
| [in] | task | The task to set. |
| [in] | immediate_data | A 32-bit value, in Big-Endian, to be sent OOB to the peer along with the write data. |
| DOCA_EXPERIMENTAL void doca_rdma_task_write_imm_set_rdma_connection | ( | struct doca_rdma_task_write_imm * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma connection of a write with immediate task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_write_imm_set_src_buf | ( | struct doca_rdma_task_write_imm * | task, |
| const struct doca_buf * | src_buf | ||
| ) |
This method sets the source buffer of a write with immediate task.
| [in] | task | The task to set. |
| [in] | src_buf | Local source buffer, holding the data that should be written to the remote memory. May be NULL when wishing to write no data. If the source buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL doca_error_t doca_rdma_task_write_set_conf | ( | struct doca_rdma * | rdma, |
| doca_rdma_task_write_completion_cb_t | successful_task_completion_cb, | ||
| doca_rdma_task_write_completion_cb_t | error_task_completion_cb, | ||
| uint32_t | num_tasks | ||
| ) |
This method sets the write tasks configuration.
| [in] | rdma | The RDMA instance to config. |
| [in] | successful_task_completion_cb | A callback function for write tasks that were completed successfully. |
| [in] | error_task_completion_cb | A callback function for write tasks that were completed with an error. |
| [in] | num_tasks | Number of write tasks. |
| DOCA_EXPERIMENTAL void doca_rdma_task_write_set_dst_buf | ( | struct doca_rdma_task_write * | task, |
| struct doca_buf * | dst_buf | ||
| ) |
This method sets the destination buffer of a write task.
| [in] | task | The task to set. |
| [in] | dst_buf | Remote destination buffer, to which the data will be written. May be NULL when src_buf is NULL. If the destination buffer is not set by the user, it will have a default value - NULL. |
| DOCA_EXPERIMENTAL void doca_rdma_task_write_set_rdma_connection | ( | struct doca_rdma_task_write * | task, |
| struct doca_rdma_connection * | rdma_connection | ||
| ) |
This method sets the rdma_connection of a write task.
| [in] | task | The task to set. |
| [in] | rdma_connection | RDMA Connection to use on this task |
| DOCA_EXPERIMENTAL void doca_rdma_task_write_set_src_buf | ( | struct doca_rdma_task_write * | task, |
| const struct doca_buf * | src_buf | ||
| ) |
This method sets the source buffer of a write task.
| [in] | task | The task to set. |
| [in] | src_buf | Local source buffer, holding the data that should be written to the remote memory. May be NULL when wishing to write no data. If the source buffer is not set by the user, it will have a default value - NULL. |