Commit | Line | Data |
---|---|---|
d6aed795 JA |
1 | #ifndef FIO_DDIR_H |
2 | #define FIO_DDIR_H | |
3 | ||
4 | enum fio_ddir { | |
5 | DDIR_READ = 0, | |
6 | DDIR_WRITE, | |
7 | DDIR_SYNC, | |
5f9099ea | 8 | DDIR_DATASYNC, |
44f29692 | 9 | DDIR_SYNC_FILE_RANGE, |
457bf399 | 10 | DDIR_WAIT, |
d6aed795 JA |
11 | DDIR_INVAL = -1, |
12 | }; | |
13 | ||
14 | enum td_ddir { | |
15 | TD_DDIR_READ = 1 << 0, | |
16 | TD_DDIR_WRITE = 1 << 1, | |
17 | TD_DDIR_RAND = 1 << 2, | |
18 | TD_DDIR_RW = TD_DDIR_READ | TD_DDIR_WRITE, | |
19 | TD_DDIR_RANDREAD = TD_DDIR_READ | TD_DDIR_RAND, | |
20 | TD_DDIR_RANDWRITE = TD_DDIR_WRITE | TD_DDIR_RAND, | |
21 | TD_DDIR_RANDRW = TD_DDIR_RW | TD_DDIR_RAND, | |
22 | }; | |
23 | ||
29c8e868 JA |
24 | #define td_read(td) ((td)->o.td_ddir & TD_DDIR_READ) |
25 | #define td_write(td) ((td)->o.td_ddir & TD_DDIR_WRITE) | |
26 | #define td_rw(td) (((td)->o.td_ddir & TD_DDIR_RW) == TD_DDIR_RW) | |
27 | #define td_random(td) ((td)->o.td_ddir & TD_DDIR_RAND) | |
28 | #define file_randommap(td, f) (!(td)->o.norandommap && (f)->file_map) | |
29 | ||
5f9099ea JA |
30 | static inline int ddir_sync(enum fio_ddir ddir) |
31 | { | |
44f29692 JA |
32 | return ddir == DDIR_SYNC || ddir == DDIR_DATASYNC || |
33 | ddir == DDIR_SYNC_FILE_RANGE; | |
5f9099ea JA |
34 | } |
35 | ||
d6aed795 | 36 | #endif |