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
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# Copyright 2021 syzkaller project authors. All rights reserved.
# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
include <fcntl.h>
include <aio.h>
include <sys/uio.h>
aio_cancel(fildes fd, iocb ptr[in, aiocb])
aio_error(iocb ptr[in, aiocb])
aio_read(iocb ptr[in, aiocb])
aio_readv(iocb ptr[in, aiocb])
aio_return(iocb ptr[in, aiocb])
aio_suspend(iocbs ptr[in, array[aiocb]], niocb len[iocbs], timeout ptr[in, timespec])
aio_waitcomplete(iocbp ptr[out, ptr[in, aiocb]], timeout ptr[in, timespec])
aio_write(iocb ptr[in, aiocb])
aio_writev(iocb ptr[in, aiocb])
aio_fsync(op flags[fsync_flags], iocb ptr[in, aiocb])
aio_mlock(iocb ptr[in, aiocb])
lio_listio(mode flags[lio_mode], list ptr[in, array[aiocb]], nent len[list], sig ptr[in, sigevent])
aiocb {
aio_fildes fd
aio_offset int64
aio_buf ptr[in, array[int8]]
aio_nbytes len[aio_buf, intptr]
spare array[int32, 2]
spare2 intptr
aio_lio_opcode flags[lio_opcodes, int32]
aio_reqprio int32
aiocb_private aiocb_private
aio_sigevent sigevent
}
aiocb_private {
status intptr
error intptr
kernelinfo ptr[in, array[int8]]
}
lio_mode = LIO_WAIT, LIO_NOWAIT
lio_opcodes = LIO_NOP, LIO_WRITE, LIO_READ, LIO_VECTORED, LIO_WRITEV, LIO_READV, LIO_SYNC, LIO_DSYNC, LIO_MLOCK
fsync_flags = O_SYNC, O_DSYNC
|