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