NewMadeleine

Documentation

nm_pkt_wrap_s Struct Reference

Internal packet wrapper. More...

#include <nm_pkt_wrap.h>

Collaboration diagram for nm_pkt_wrap_s:

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_sp_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_sp_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_sp_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]
 

Detailed Description

Internal packet wrapper.

Definition at line 116 of file nm_pkt_wrap.h.

Member Function Documentation

◆ PUK_LIST_LINK()

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

Field Documentation

◆ buf

NM_ALIGN_TYPE nm_pkt_wrap_s::buf[1]

Definition at line 177 of file nm_pkt_wrap.h.

◆ chunk_offset

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.

◆ core_task

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().

◆ data_props

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.

◆ destructor

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.

◆ destructor_key

void* nm_pkt_wrap_s::destructor_key

key for destructor to store private data

Definition at line 152 of file nm_pkt_wrap.h.

◆ flags

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().

◆ length

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().

◆ max_len

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().

◆ p_data

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.

◆ p_drv

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().

◆ p_gate

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().

◆ p_trk

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().

◆ p_unpack

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.

◆ pending_rtrs

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.

◆ prealloc_v

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.

◆ prio

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.

◆ rdv_data

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.

◆ ref_count

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().

◆ req_chunks

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.

◆ trk_id

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().

◆ v

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().

◆ v_nb

int nm_pkt_wrap_s::v_nb

number of used entries in the iovec

Definition at line 145 of file nm_pkt_wrap.h.

◆ v_size

int nm_pkt_wrap_s::v_size

number of allocated entries in the iovec.

Definition at line 144 of file nm_pkt_wrap.h.


The documentation for this struct was generated from the following file: