Motr
M0
|
#include <klnet_core.h>
Kernel core operations. The operations listed here implement the common code shared by both the core API implemented in the kernel and the core API support provided by the LNet transport driver.
Definition at line 268 of file klnet_core.h.
nlx_kcore_queue_op_t ko_buf_active_recv |
Performs kernel core tasks relating to adding a buffer to the bulk active receive queue.
Definition at line 349 of file klnet_core.h.
nlx_kcore_queue_op_t ko_buf_active_send |
Performs kernel core tasks relating to adding a buffer to the bulk active send queue.
Definition at line 355 of file klnet_core.h.
int(* ko_buf_del) (struct nlx_kcore_transfer_mc *ktm, struct nlx_kcore_buffer *kb) |
Performs kernel core tasks relating to canceling a buffer operation.
ktm | The kernel transfer machine private data. |
kb | The kernel buffer private data. |
Definition at line 374 of file klnet_core.h.
void(* ko_buf_deregister) (struct nlx_core_buffer *cb, struct nlx_kcore_buffer *kb) |
Performs common kernel core tasks related to de-registering a buffer.
cb | The core private data pointer for the buffer. |
kb | Kernel core private buffer pointer. |
Definition at line 304 of file klnet_core.h.
int(* ko_buf_event_wait) (struct nlx_core_transfer_mc *ctm, struct nlx_kcore_transfer_mc *ktm, m0_time_t timeout) |
Performs common kernel core tasks to wait for buffer events.
ctm | The transfer machine private data. |
ktm | The kernel transfer machine private data. |
timeout | Absolute time at which to stop waiting. |
Definition at line 383 of file klnet_core.h.
nlx_kcore_queue_op_t ko_buf_msg_recv |
Performs kernel core tasks relating to adding a buffer to the message receive queue.
Definition at line 337 of file klnet_core.h.
nlx_kcore_queue_op_t ko_buf_msg_send |
Performs kernel core tasks relating to adding a buffer to the message send queue.
Definition at line 343 of file klnet_core.h.
nlx_kcore_queue_op_t ko_buf_passive_recv |
Performs kernel core tasks relating to adding a buffer to the bulk passive receive queue.
Definition at line 361 of file klnet_core.h.
nlx_kcore_queue_op_t ko_buf_passive_send |
Performs kernel core tasks relating to adding a buffer to the bulk passive send queue.
Definition at line 367 of file klnet_core.h.
int(* ko_buf_register) (struct nlx_kcore_domain *kd, nlx_core_opaque_ptr_t buffer_id, struct nlx_core_buffer *cb, struct nlx_kcore_buffer *kb) |
Performs common kernel core tasks related to registering a network buffer. The nlx_kcore_buffer::kb_kiov is not set.
kd | Kernel core private domain pointer. |
buffer_id | Value to set in the cb_buffer_id field. |
cb | The core private data pointer for the buffer. |
kb | Kernel core private buffer pointer. |
Definition at line 294 of file klnet_core.h.
void(* ko_dom_fini) (struct nlx_kcore_domain *kd, struct nlx_core_domain *cd) |
Finilizes the core private data associated with a kernel core private data object.
kd | Kernel core private data pointer. |
cd | Core private data pointer. |
Definition at line 283 of file klnet_core.h.
int(* ko_dom_init) (struct nlx_kcore_domain *kd, struct nlx_core_domain *cd) |
Initializes the core private data given a previously initialized kernel core private data object.
kd | Kernel core private data pointer. |
cd | Core private data pointer. |
Definition at line 275 of file klnet_core.h.
int(* ko_tm_start) (struct nlx_kcore_domain *kd, struct nlx_core_transfer_mc *ctm, struct nlx_kcore_transfer_mc *ktm) |
Performs kernel core tasks related to starting a transfer machine. Internally this results in the creation of the LNet EQ associated with the transfer machine.
kd | The kernel domain for this transfer machine. |
ctm | The transfer machine private data to be initialized. The nlx_core_transfer_mc::ctm_addr must be set by the caller. If the lcpea_tmid field value is M0_NET_LNET_TMID_INVALID then a transfer machine identifier is dynamically assigned to the transfer machine and the nlx_core_transfer_mc::ctm_addr is modified in place. |
ktm | The kernel transfer machine private data to be initialized. |
Definition at line 320 of file klnet_core.h.
void(* ko_tm_stop) (struct nlx_core_transfer_mc *ctm, struct nlx_kcore_transfer_mc *ktm) |
Performs kernel core tasks relating to stopping a transfer machine. Kernel resources are released.
ctm | The transfer machine private data. |
ktm | The kernel transfer machine private data. |
Definition at line 330 of file klnet_core.h.