nbd: Update for libnbd 0.9.8
[fio.git] / os / os-linux-syscall.h
CommitLineData
1c764dbe
TK
1#ifndef FIO_OS_LINUX_SYSCALL_H
2#define FIO_OS_LINUX_SYSCALL_H
3
4#include "../arch/arch.h"
5
e12f4ede 6/* Linux syscalls for x86 */
1c764dbe
TK
7#if defined(ARCH_X86_H)
8#ifndef __NR_ioprio_set
9#define __NR_ioprio_set 289
10#define __NR_ioprio_get 290
11#endif
12
13#ifndef __NR_fadvise64
14#define __NR_fadvise64 250
15#endif
16
17#ifndef __NR_sys_splice
18#define __NR_sys_splice 313
19#define __NR_sys_tee 315
20#define __NR_sys_vmsplice 316
21#endif
22
23#ifndef __NR_preadv2
24#define __NR_preadv2 378
25#endif
26#ifndef __NR_pwritev2
27#define __NR_pwritev2 379
28#endif
29
30/* Linux syscalls for x86_64 */
31#elif defined(ARCH_X86_64_H)
32#ifndef __NR_ioprio_set
33#define __NR_ioprio_set 251
34#define __NR_ioprio_get 252
35#endif
36
37#ifndef __NR_fadvise64
38#define __NR_fadvise64 221
39#endif
40
41#ifndef __NR_sys_splice
42#define __NR_sys_splice 275
43#define __NR_sys_tee 276
44#define __NR_sys_vmsplice 278
45#endif
46
47#ifndef __NR_shmget
48#define __NR_shmget 29
49#define __NR_shmat 30
50#define __NR_shmctl 31
51#define __NR_shmdt 67
52#endif
53
54#ifndef __NR_preadv2
55#define __NR_preadv2 327
56#endif
57#ifndef __NR_pwritev2
58#define __NR_pwritev2 328
59#endif
60
61/* Linux syscalls for ppc */
62#elif defined(ARCH_PPC_H)
63#ifndef __NR_ioprio_set
64#define __NR_ioprio_set 273
65#define __NR_ioprio_get 274
66#endif
67
68#ifndef __NR_fadvise64
69#define __NR_fadvise64 233
70#endif
71
72#ifndef __NR_sys_splice
73#define __NR_sys_splice 283
74#define __NR_sys_tee 284
75#define __NR_sys_vmsplice 285
76#endif
77
78/* Linux syscalls for ia64 */
79#elif defined(ARCH_IA64_H)
80#ifndef __NR_ioprio_set
81#define __NR_ioprio_set 1274
82#define __NR_ioprio_get 1275
83#endif
84
85#ifndef __NR_fadvise64
86#define __NR_fadvise64 1234
87#endif
88
89#ifndef __NR_sys_splice
90#define __NR_sys_splice 1297
91#define __NR_sys_tee 1301
92#define __NR_sys_vmsplice 1302
93#endif
94
95#ifndef __NR_preadv2
96#define __NR_preadv2 1348
97#endif
98#ifndef __NR_pwritev2
99#define __NR_pwritev2 1349
100#endif
101
102/* Linux syscalls for alpha */
103#elif defined(ARCH_ALPHA_H)
104#ifndef __NR_ioprio_set
105#define __NR_ioprio_set 442
106#define __NR_ioprio_get 443
107#endif
108
109#ifndef __NR_fadvise64
110#define __NR_fadvise64 413
111#endif
112
113#ifndef __NR_sys_splice
114#define __NR_sys_splice 468
115#define __NR_sys_tee 470
116#define __NR_sys_vmsplice 471
117#endif
118
119/* Linux syscalls for s390 */
120#elif defined(ARCH_S390_H)
121#ifndef __NR_ioprio_set
122#define __NR_ioprio_set 282
123#define __NR_ioprio_get 283
124#endif
125
126#ifndef __NR_fadvise64
127#define __NR_fadvise64 253
128#endif
129
130#ifndef __NR_sys_splice
131#define __NR_sys_splice 306
132#define __NR_sys_tee 308
133#define __NR_sys_vmsplice 309
134#endif
135
136#ifndef __NR_preadv2
137#define __NR_preadv2 376
138#endif
139#ifndef __NR_pwritev2
140#define __NR_pwritev2 377
141#endif
142
143/* Linux syscalls for sparc */
144#elif defined(ARCH_SPARC_H)
145#ifndef __NR_ioprio_set
146#define __NR_ioprio_set 196
147#define __NR_ioprio_get 218
148#endif
149
150#ifndef __NR_fadvise64
151#define __NR_fadvise64 209
152#endif
153
154#ifndef __NR_sys_splice
155#define __NR_sys_splice 232
156#define __NR_sys_tee 280
157#define __NR_sys_vmsplice 25
158#endif
159
160#ifndef __NR_preadv2
161#define __NR_preadv2 358
162#endif
163#ifndef __NR_pwritev2
164#define __NR_pwritev2 359
165#endif
166
167/* Linux syscalls for sparc64 */
168#elif defined(ARCH_SPARC64_H)
169#ifndef __NR_ioprio_set
170#define __NR_ioprio_set 196
171#define __NR_ioprio_get 218
172#endif
173
174#ifndef __NR_fadvise64
175#define __NR_fadvise64 209
176#endif
177
178#ifndef __NR_sys_splice
179#define __NR_sys_splice 232
180#define __NR_sys_tee 280
181#define __NR_sys_vmsplice 25
182#endif
183
184#ifndef __NR_preadv2
185#define __NR_preadv2 358
186#endif
187#ifndef __NR_pwritev2
188#define __NR_pwritev2 359
189#endif
190
191/* Linux syscalls for arm */
192#elif defined(ARCH_ARM_H)
193#ifndef __NR_ioprio_set
194#define __NR_ioprio_set 314
195#define __NR_ioprio_get 315
196#endif
197
198#ifndef __NR_fadvise64
199#define __NR_fadvise64 270
200#endif
201
202#ifndef __NR_sys_splice
203#define __NR_sys_splice 340
204#define __NR_sys_tee 342
205#define __NR_sys_vmsplice 343
206#endif
207
208#ifndef __NR_preadv2
209#define __NR_preadv2 392
210#endif
211#ifndef __NR_pwritev2
212#define __NR_pwritev2 393
213#endif
214
215/* Linux syscalls for mips */
216#elif defined(ARCH_MIPS64_H)
217#ifndef __NR_ioprio_set
218#define __NR_ioprio_set 314
219#define __NR_ioprio_get 315
220#endif
221
222#ifndef __NR_fadvise64
223#define __NR_fadvise64 215
224#endif
225
226#ifndef __NR_sys_splice
227#define __NR_sys_splice 263
228#define __NR_sys_tee 265
229#define __NR_sys_vmsplice 266
230#endif
231
232/* Linux syscalls for sh */
233#elif defined(ARCH_SH_H)
234#ifndef __NR_ioprio_set
235#define __NR_ioprio_set 288
236#define __NR_ioprio_get 289
237#endif
238
239#ifndef __NR_fadvise64
240#define __NR_fadvise64 250
241#endif
242
243#ifndef __NR_sys_splice
244#define __NR_sys_splice 313
245#define __NR_sys_tee 315
246#define __NR_sys_vmsplice 316
247#endif
248
249/* Linux syscalls for hppa */
250#elif defined(ARCH_HPPA_H)
251#ifndef __NR_ioprio_set
252#define __NR_ioprio_set 267
253#define __NR_ioprio_get 268
254#endif
255
256#ifndef __NR_fadvise64
257#define __NR_fadvise64 236
258#endif
259
260#ifndef __NR_sys_splice
261#define __NR_sys_splice 291
262#define __NR_sys_tee 293
263#define __NR_sys_vmsplice 294
264#endif
265
266/* Linux syscalls for aarch64 */
267#elif defined(ARCH_AARCH64_H)
268#ifndef __NR_ioprio_set
269#define __NR_ioprio_set 30
270#define __NR_ioprio_get 31
271#endif
272
273#else
274#warning "Unknown architecture"
275#endif
276
277#endif /* FIO_OS_LINUX_SYSCALL_H */