19 #ifndef MCA_BTL_MX_FRAG_H
20 #define MCA_BTL_MX_FRAG_H
23 #include "ompi_config.h"
24 #include "ompi/class/ompi_free_list.h"
27 #define MCA_BTL_MX_SEND 0x01
28 #define MCA_BTL_MX_RECV 0x02
40 mx_request_t mx_request;
64 #define MCA_BTL_MX_FRAG_ALLOC_EAGER(btl, frag, rc) \
66 ompi_free_list_item_t *item; \
67 OMPI_FREE_LIST_GET( &mca_btl_mx_component.mx_send_eager_frags, item, rc); \
68 if( OPAL_LIKELY(NULL != item) ) { \
69 frag = (mca_btl_mx_frag_t*) item; \
70 frag->mx_frag_list = &(mca_btl_mx_component.mx_send_eager_frags); \
71 frag->segment[0].seg_addr.pval = (void*)(frag+1); \
75 #define MCA_BTL_MX_FRAG_ALLOC_USER(btl, frag, rc) \
77 ompi_free_list_item_t *item; \
78 OMPI_FREE_LIST_GET( &mca_btl_mx_component.mx_send_user_frags, item, rc); \
79 if( OPAL_LIKELY(NULL != item) ) { \
80 frag = (mca_btl_mx_frag_t*) item; \
81 frag->mx_frag_list = &(mca_btl_mx_component.mx_send_user_frags); \
85 #define MCA_BTL_MX_FRAG_RETURN(btl, frag) \
87 OMPI_FREE_LIST_RETURN( frag->mx_frag_list, \
88 (ompi_free_list_item_t*)(frag)); \
A descriptor that holds the parameters to a send/put/get operation along w/ a callback routine that i...
Definition: btl.h:275
Definition: ompi_free_list.h:39
State of ELAN endpoint connection.
Definition: btl_elan_endpoint.h:33
MX send framxent derived type.
Definition: btl_mx_frag.h:35
Describes a region/segment of memory that is addressable by an BTL.
Definition: btl.h:236
#define OBJ_CLASS_DECLARATION(NAME)
Declaration for class descriptor.
Definition: opal_object.h:236