Whamcloud - gitweb
* Landed b_cray_portals_merge.
[fs/lustre-release.git] / lustre / portals / include / portals / arg-blocks.h
1 #ifndef PTL_BLOCKS_H
2 #define PTL_BLOCKS_H
3
4 #include "build_check.h"
5
6 /*
7  * blocks.h
8  *
9  * Argument block types for the Portals 3.0 library
10  * Generated by idl
11  *
12  */
13
14 #include <portals/types.h>
15
16 /* put LIB_MAX_DISPATCH last here  -- these must match the
17    assignements to the dispatch table in lib-p30/dispatch.c */
18 #define PTL_GETID     1
19 #define PTL_NISTATUS  2
20 #define PTL_NIDIST    3
21 // #define PTL_NIDEBUG   4
22 #define PTL_MEATTACH  5
23 #define PTL_MEINSERT  6
24 // #define PTL_MEPREPEND 7
25 #define PTL_MEUNLINK  8
26 #define PTL_TBLDUMP   9 
27 #define PTL_MEDUMP   10
28 #define PTL_MDATTACH 11
29 // #define PTL_MDINSERT 12
30 #define PTL_MDBIND   13
31 #define PTL_MDUPDATE 14
32 #define PTL_MDUNLINK 15
33 #define PTL_EQALLOC  16
34 #define PTL_EQFREE   17
35 #define PTL_ACENTRY  18
36 #define PTL_PUT      19 
37 #define PTL_GET      20
38 #define PTL_FAILNID  21
39 #define LIB_MAX_DISPATCH 21
40
41 typedef struct PtlFailNid_in {
42         ptl_handle_ni_t interface;
43         ptl_nid_t       nid;
44         unsigned int    threshold;
45 } PtlFailNid_in;
46
47 typedef struct PtlFailNid_out {
48         int             rc;
49 } PtlFailNid_out;
50
51 typedef struct PtlGetId_in {
52         ptl_handle_ni_t handle_in;
53 } PtlGetId_in;
54
55 typedef struct PtlGetId_out {
56         int rc;
57         ptl_process_id_t id_out;
58 } PtlGetId_out;
59
60 typedef struct PtlNIStatus_in {
61         ptl_handle_ni_t interface_in;
62         ptl_sr_index_t register_in;
63 } PtlNIStatus_in;
64
65 typedef struct PtlNIStatus_out {
66         int rc;
67         ptl_sr_value_t status_out;
68 } PtlNIStatus_out;
69
70
71 typedef struct PtlNIDist_in {
72         ptl_handle_ni_t interface_in;
73         ptl_process_id_t process_in;
74 } PtlNIDist_in;
75
76 typedef struct PtlNIDist_out {
77         int rc;
78         unsigned long distance_out;
79 } PtlNIDist_out;
80
81
82 typedef struct PtlNIDebug_in {
83         unsigned int mask_in;
84 } PtlNIDebug_in;
85
86 typedef struct PtlNIDebug_out {
87         unsigned int rc;
88 } PtlNIDebug_out;
89
90
91 typedef struct PtlMEAttach_in {
92         ptl_handle_ni_t interface_in;
93         ptl_pt_index_t index_in;
94         ptl_ins_pos_t position_in;
95         ptl_process_id_t match_id_in;
96         ptl_match_bits_t match_bits_in;
97         ptl_match_bits_t ignore_bits_in;
98         ptl_unlink_t unlink_in;
99 } PtlMEAttach_in;
100
101 typedef struct PtlMEAttach_out {
102         int rc;
103         ptl_handle_me_t handle_out;
104 } PtlMEAttach_out;
105
106
107 typedef struct PtlMEInsert_in {
108         ptl_handle_me_t current_in;
109         ptl_process_id_t match_id_in;
110         ptl_match_bits_t match_bits_in;
111         ptl_match_bits_t ignore_bits_in;
112         ptl_unlink_t unlink_in;
113         ptl_ins_pos_t position_in;
114 } PtlMEInsert_in;
115
116 typedef struct PtlMEInsert_out {
117         int rc;
118         ptl_handle_me_t handle_out;
119 } PtlMEInsert_out;
120
121 typedef struct PtlMEUnlink_in {
122         ptl_handle_me_t current_in;
123         ptl_unlink_t unlink_in;
124 } PtlMEUnlink_in;
125
126 typedef struct PtlMEUnlink_out {
127         int rc;
128 } PtlMEUnlink_out;
129
130
131 typedef struct PtlTblDump_in {
132         int index_in;
133 } PtlTblDump_in;
134
135 typedef struct PtlTblDump_out {
136         int rc;
137 } PtlTblDump_out;
138
139
140 typedef struct PtlMEDump_in {
141         ptl_handle_me_t current_in;
142 } PtlMEDump_in;
143
144 typedef struct PtlMEDump_out {
145         int rc;
146 } PtlMEDump_out;
147
148
149 typedef struct PtlMDAttach_in {
150         ptl_handle_me_t me_in;
151         ptl_handle_eq_t eq_in;
152         ptl_md_t md_in;
153         ptl_unlink_t unlink_in;
154 } PtlMDAttach_in;
155
156 typedef struct PtlMDAttach_out {
157         int rc;
158         ptl_handle_md_t handle_out;
159 } PtlMDAttach_out;
160
161
162 typedef struct PtlMDBind_in {
163         ptl_handle_ni_t ni_in;
164         ptl_handle_eq_t eq_in;
165         ptl_md_t md_in;
166         ptl_unlink_t unlink_in;
167 } PtlMDBind_in;
168
169 typedef struct PtlMDBind_out {
170         int rc;
171         ptl_handle_md_t handle_out;
172 } PtlMDBind_out;
173
174
175 typedef struct PtlMDUpdate_internal_in {
176         ptl_handle_md_t md_in;
177         ptl_handle_eq_t testq_in;
178         ptl_seq_t sequence_in;
179
180         ptl_md_t old_inout;
181         int old_inout_valid;
182         ptl_md_t new_inout;
183         int new_inout_valid;
184 } PtlMDUpdate_internal_in;
185
186 typedef struct PtlMDUpdate_internal_out {
187         int rc;
188         ptl_md_t old_inout;
189         ptl_md_t new_inout;
190 } PtlMDUpdate_internal_out;
191
192
193 typedef struct PtlMDUnlink_in {
194         ptl_handle_md_t md_in;
195 } PtlMDUnlink_in;
196
197 typedef struct PtlMDUnlink_out {
198         int rc;
199         ptl_md_t status_out;
200 } PtlMDUnlink_out;
201
202
203 typedef struct PtlEQAlloc_in {
204         ptl_handle_ni_t ni_in;
205         ptl_size_t count_in;
206         void *base_in;
207         int len_in;
208         ptl_eq_handler_t callback_in;
209 } PtlEQAlloc_in;
210
211 typedef struct PtlEQAlloc_out {
212         int rc;
213         ptl_handle_eq_t handle_out;
214 } PtlEQAlloc_out;
215
216
217 typedef struct PtlEQFree_in {
218         ptl_handle_eq_t eventq_in;
219 } PtlEQFree_in;
220
221 typedef struct PtlEQFree_out {
222         int rc;
223 } PtlEQFree_out;
224
225
226 typedef struct PtlACEntry_in {
227         ptl_handle_ni_t ni_in;
228         ptl_ac_index_t index_in;
229         ptl_process_id_t match_id_in;
230         ptl_pt_index_t portal_in;
231 } PtlACEntry_in;
232
233 typedef struct PtlACEntry_out {
234         int rc;
235 } PtlACEntry_out;
236
237
238 typedef struct PtlPut_in {
239         ptl_handle_md_t md_in;
240         ptl_ack_req_t ack_req_in;
241         ptl_process_id_t target_in;
242         ptl_pt_index_t portal_in;
243         ptl_ac_index_t cookie_in;
244         ptl_match_bits_t match_bits_in;
245         ptl_size_t offset_in;
246         ptl_hdr_data_t hdr_data_in;
247 } PtlPut_in;
248
249 typedef struct PtlPut_out {
250         int rc;
251 } PtlPut_out;
252
253
254 typedef struct PtlGet_in {
255         ptl_handle_md_t md_in;
256         ptl_process_id_t target_in;
257         ptl_pt_index_t portal_in;
258         ptl_ac_index_t cookie_in;
259         ptl_match_bits_t match_bits_in;
260         ptl_size_t offset_in;
261 } PtlGet_in;
262
263 typedef struct PtlGet_out {
264         int rc;
265 } PtlGet_out;
266
267
268 #endif