Internal packet wrapper. More...
#include <nm_pkt_wrap.h>
Public Member Functions | |
PUK_LIST_LINK (nm_pkt_wrap) | |
link to insert the pw into a nm_pkt_wrap_list. More... | |
Data Fields | |
struct nm_core_task_s | core_task |
nm_drv_t | p_drv |
link to insert the pw as a core task More... | |
nm_trk_id_t | trk_id |
assignated track ID. More... | |
nm_gate_t | p_gate |
assignated gate, if relevant. More... | |
struct nm_trk_s * | p_trk |
assignated track, if relevant. More... | |
nm_pw_flag_t | flags |
packet flags. More... | |
nm_len_t | length |
cumulated amount of data (everything included) referenced by this wrap. More... | |
nm_len_t | max_len |
maximum usable length More... | |
struct nm_data_s * | p_data |
data represented as datatype (if non-NULL, v must be empty) More... | |
struct iovec * | v |
IO vector. More... | |
int | v_size |
number of allocated entries in the iovec. More... | |
int | v_nb |
number of used entries in the iovec More... | |
struct iovec | prealloc_v [NM_PREALLOC_IOV_LEN] |
pre-allcoated iovec More... | |
nm_prio_t | prio |
priority, used for sending (all trks) and recv (large only) More... | |
int | ref_count |
number of references pointing to the header More... | |
void(* | destructor )(struct nm_pkt_wrap_s *p_pw) |
destructor called uppon packet destroy More... | |
void * | destructor_key |
key for destructor to store private data More... | |
struct nm_req_chunk_list_s | req_chunks |
list of req chunks contained in this pw (sending) More... | |
struct nm_pw_pending_rtr_list_s | pending_rtrs |
pending RTRs attached to this pw More... | |
struct nm_req_s * | p_unpack |
user-level unpack request (large message only) More... | |
nm_len_t | chunk_offset |
offset of this chunk in the message (for large message) More... | |
char | rdv_data [NM_HEADER_RTR_DATA_SIZE] |
rdv data given by the driver More... | |
struct nm_data_properties_s | data_props |
pre-computed properties for the chunk of data More... | |
NM_ALIGN_TYPE | buf [1] |
Internal packet wrapper.
Definition at line 116 of file nm_pkt_wrap.h.
nm_pkt_wrap_s::PUK_LIST_LINK | ( | nm_pkt_wrap | ) |
link to insert the pw into a nm_pkt_wrap_list.
A pw may be stored either in: out_list in strategy, pending_large_send in sender, pending_large_recv in receiver, pending_send_list, pending_recv_list in driver, post_sched_out_list, post_recv_list in driver
NM_ALIGN_TYPE nm_pkt_wrap_s::buf[1] |
Definition at line 177 of file nm_pkt_wrap.h.
nm_len_t nm_pkt_wrap_s::chunk_offset |
offset of this chunk in the message (for large message)
Definition at line 164 of file nm_pkt_wrap.h.
struct nm_core_task_s nm_pkt_wrap_s::core_task |
Definition at line 125 of file nm_pkt_wrap.h.
Referenced by nm_pw_completed_enqueue().
struct nm_data_properties_s nm_pkt_wrap_s::data_props |
pre-computed properties for the chunk of data
Definition at line 166 of file nm_pkt_wrap.h.
void(* nm_pkt_wrap_s::destructor) (struct nm_pkt_wrap_s *p_pw) |
destructor called uppon packet destroy
Definition at line 151 of file nm_pkt_wrap.h.
void* nm_pkt_wrap_s::destructor_key |
key for destructor to store private data
Definition at line 152 of file nm_pkt_wrap.h.
nm_pw_flag_t nm_pkt_wrap_s::flags |
packet flags.
Definition at line 139 of file nm_pkt_wrap.h.
Referenced by nm_header_global_v0len(), and nm_pw_completed_enqueue().
nm_len_t nm_pkt_wrap_s::length |
cumulated amount of data (everything included) referenced by this wrap.
Definition at line 140 of file nm_pkt_wrap.h.
Referenced by nm_pw_remaining_buf().
nm_len_t nm_pkt_wrap_s::max_len |
maximum usable length
Definition at line 141 of file nm_pkt_wrap.h.
Referenced by nm_pw_remaining_buf().
struct nm_data_s* nm_pkt_wrap_s::p_data |
data represented as datatype (if non-NULL, v must be empty)
Definition at line 142 of file nm_pkt_wrap.h.
nm_drv_t nm_pkt_wrap_s::p_drv |
link to insert the pw as a core task
assignated driver.
Definition at line 132 of file nm_pkt_wrap.h.
Referenced by nm_pw_assign(), and nm_pw_ref_dec().
nm_gate_t nm_pkt_wrap_s::p_gate |
assignated gate, if relevant.
Definition at line 134 of file nm_pkt_wrap.h.
Referenced by nm_pw_assign().
struct nm_trk_s* nm_pkt_wrap_s::p_trk |
assignated track, if relevant.
Definition at line 135 of file nm_pkt_wrap.h.
Referenced by nm_pw_assign().
struct nm_req_s* nm_pkt_wrap_s::p_unpack |
user-level unpack request (large message only)
Definition at line 161 of file nm_pkt_wrap.h.
struct nm_pw_pending_rtr_list_s nm_pkt_wrap_s::pending_rtrs |
pending RTRs attached to this pw
Definition at line 157 of file nm_pkt_wrap.h.
struct iovec nm_pkt_wrap_s::prealloc_v[NM_PREALLOC_IOV_LEN] |
pre-allcoated iovec
Definition at line 146 of file nm_pkt_wrap.h.
nm_prio_t nm_pkt_wrap_s::prio |
priority, used for sending (all trks) and recv (large only)
Definition at line 147 of file nm_pkt_wrap.h.
char nm_pkt_wrap_s::rdv_data[NM_HEADER_RTR_DATA_SIZE] |
rdv data given by the driver
Definition at line 165 of file nm_pkt_wrap.h.
int nm_pkt_wrap_s::ref_count |
number of references pointing to the header
Definition at line 150 of file nm_pkt_wrap.h.
Referenced by nm_pw_ref_dec(), and nm_pw_ref_inc().
struct nm_req_chunk_list_s nm_pkt_wrap_s::req_chunks |
list of req chunks contained in this pw (sending)
Definition at line 156 of file nm_pkt_wrap.h.
nm_trk_id_t nm_pkt_wrap_s::trk_id |
assignated track ID.
Definition at line 133 of file nm_pkt_wrap.h.
Referenced by nm_header_global_finalize(), and nm_pw_assign().
struct iovec* nm_pkt_wrap_s::v |
IO vector.
Definition at line 143 of file nm_pkt_wrap.h.
Referenced by nm_header_global_finalize(), and nm_header_global_v0len().
int nm_pkt_wrap_s::v_nb |
number of used entries in the iovec
Definition at line 145 of file nm_pkt_wrap.h.
int nm_pkt_wrap_s::v_size |
number of allocated entries in the iovec.
Definition at line 144 of file nm_pkt_wrap.h.