1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 
  12 
  13 
  14 
  15 
  16 
  17 
  18 
  19 
  20 
  21 
  22 
  23 
  24 
  25 
  26 
  27 
  28 
  29 #ifndef MCA_RML_TYPES_H_
  30 #define MCA_RML_TYPES_H_
  31 
  32 #include "orte_config.h"
  33 #include "orte/constants.h"
  34 #include "orte/types.h"
  35 
  36 #include <limits.h>
  37 #ifdef HAVE_SYS_UIO_H
  38 
  39 #include <sys/uio.h>
  40 #endif
  41 #ifdef HAVE_NET_UIO_H
  42 #include <net/uio.h>
  43 #endif
  44 
  45 #include "opal/dss/dss_types.h"
  46 #include "opal/class/opal_list.h"
  47 
  48 BEGIN_C_DECLS
  49 
  50 
  51 #define ORTE_RML_PERSISTENT      true
  52 #define ORTE_RML_NON_PERSISTENT  false
  53 
  54 
  55 
  56 
  57 
  58 
  59 #define ORTE_RML_TAG_T    OPAL_UINT32
  60 
  61 #define ORTE_RML_TAG_INVALID                 0
  62 #define ORTE_RML_TAG_DAEMON                  1
  63 #define ORTE_RML_TAG_IOF_HNP                 2
  64 #define ORTE_RML_TAG_IOF_PROXY               3
  65 #define ORTE_RML_TAG_XCAST_BARRIER           4
  66 #define ORTE_RML_TAG_PLM                     5
  67 #define ORTE_RML_TAG_LAUNCH_RESP             6
  68 #define ORTE_RML_TAG_ERRMGR                  7
  69 #define ORTE_RML_TAG_WIREUP                  8
  70 #define ORTE_RML_TAG_RML_INFO_UPDATE         9
  71 #define ORTE_RML_TAG_ORTED_CALLBACK         10
  72 #define ORTE_RML_TAG_ROLLUP                 11
  73 #define ORTE_RML_TAG_REPORT_REMOTE_LAUNCH   12
  74 
  75 #define ORTE_RML_TAG_CKPT                   13
  76 
  77 #define ORTE_RML_TAG_RML_ROUTE              14
  78 #define ORTE_RML_TAG_XCAST                  15
  79 
  80 #define ORTE_RML_TAG_UPDATE_ROUTE_ACK       19
  81 #define ORTE_RML_TAG_SYNC                   20
  82 
  83 
  84 #define ORTE_RML_TAG_FILEM_BASE             21
  85 #define ORTE_RML_TAG_FILEM_BASE_RESP        22
  86 
  87 
  88 #define ORTE_RML_TAG_FILEM_RSH              23
  89 
  90 
  91 #define ORTE_RML_TAG_SNAPC                  24
  92 #define ORTE_RML_TAG_SNAPC_FULL             25
  93 
  94 
  95 #define ORTE_RML_TAG_TOOL                   26
  96 
  97 
  98 #define ORTE_RML_TAG_DATA_SERVER            27
  99 #define ORTE_RML_TAG_DATA_CLIENT            28
 100 
 101 
 102 #define ORTE_RML_TAG_COLLECTIVE_TIMER       29
 103 
 104 
 105 #define ORTE_RML_TAG_COLLECTIVE             30
 106 #define ORTE_RML_TAG_COLL_RELEASE           31
 107 #define ORTE_RML_TAG_DAEMON_COLL            32
 108 #define ORTE_RML_TAG_ALLGATHER_DIRECT       33
 109 #define ORTE_RML_TAG_ALLGATHER_BRUCKS       34
 110 #define ORTE_RML_TAG_ALLGATHER_RCD          35
 111 
 112 
 113 #define ORTE_RML_TAG_SHOW_HELP              36
 114 
 115 
 116 #define ORTE_RML_TAG_DEBUGGER_RELEASE       37
 117 
 118 
 119 #define ORTE_RML_TAG_BOOTSTRAP              38
 120 
 121 
 122 #define ORTE_RML_TAG_MISSED_MSG             39
 123 
 124 
 125 #define ORTE_RML_TAG_ABORT                  40
 126 
 127 
 128 #define ORTE_RML_TAG_HEARTBEAT              41
 129 
 130 
 131 #define ORTE_RML_TAG_MIGRATE                42
 132 
 133 
 134 #define ORTE_RML_TAG_SSTORE                 43
 135 #define ORTE_RML_TAG_SSTORE_INTERNAL        44
 136 
 137 #define ORTE_RML_TAG_SUBSCRIBE              45
 138 
 139 
 140 
 141 #define ORTE_RML_TAG_FAILURE_NOTICE         46
 142 
 143 
 144 #define ORTE_RML_TAG_DFS_CMD                47
 145 #define ORTE_RML_TAG_DFS_DATA               48
 146 
 147 
 148 #define ORTE_RML_TAG_SENSOR_DATA            49
 149 
 150 
 151 #define ORTE_RML_TAG_DIRECT_MODEX           50
 152 #define ORTE_RML_TAG_DIRECT_MODEX_RESP      51
 153 
 154 
 155 #define ORTE_RML_TAG_NOTIFIER_HNP           52
 156 #define ORTE_RML_TAG_NOTIFY_COMPLETE        53
 157 
 158 
 159 #define ORTE_RML_TAG_OPEN_CHANNEL_REQ       54
 160 #define ORTE_RML_TAG_OPEN_CHANNEL_RESP      55
 161 #define ORTE_RML_TAG_MSG_ACK                56
 162 #define ORTE_RML_TAG_CLOSE_CHANNEL_REQ      57
 163 #define ORTE_RML_TAG_CLOSE_CHANNEL_ACCEPT   58
 164 
 165 
 166 #define ORTE_RML_TAG_NOTIFICATION           59
 167 
 168 
 169 #define ORTE_RML_TAG_STACK_TRACE            60
 170 
 171 
 172 #define ORTE_RML_TAG_MEMPROFILE             61
 173 
 174 
 175 #define ORTE_RML_TAG_TOPOLOGY_REPORT        62
 176 
 177 
 178 #define ORTE_RML_TAG_WARMUP_CONNECTION      63
 179 
 180 
 181 #define ORTE_RML_TAG_NODE_REGEX_REPORT      64
 182 
 183 #define ORTE_RML_TAG_MAX                   100
 184 
 185 
 186 #define ORTE_RML_TAG_NTOH(t) ntohl(t)
 187 #define ORTE_RML_TAG_HTON(t) htonl(t)
 188 
 189 
 190 
 191 
 192 
 193 
 194 
 195 
 196 
 197 
 198 
 199 
 200 
 201 
 202 typedef uint32_t orte_rml_tag_t;
 203 
 204 
 205 
 206 
 207 
 208 
 209 
 210 typedef uint8_t orte_rml_cmd_flag_t;
 211 #define ORTE_RML_CMD    OPAL_UINT8
 212 #define ORTE_RML_UPDATE_CMD    1
 213 
 214 
 215 typedef enum {
 216     ORTE_RML_PEER_UNREACH,
 217     ORTE_RML_PEER_DISCONNECTED
 218 } orte_rml_exception_t;
 219 
 220 
 221 END_C_DECLS
 222 
 223 
 224 #endif