io_uring: set async IO priority to td->ioprio in fio_ioring_prep()
[fio.git] / engines / cmdprio.h
1 /*
2  * IO priority handling declarations and helper functions common to the
3  * libaio and io_uring engines.
4  */
5
6 #ifndef FIO_CMDPRIO_H
7 #define FIO_CMDPRIO_H
8
9 #include "../fio.h"
10
11 /* read and writes only, no trim */
12 #define CMDPRIO_RWDIR_CNT 2
13
14 struct cmdprio {
15         unsigned int percentage[CMDPRIO_RWDIR_CNT];
16         unsigned int class[CMDPRIO_RWDIR_CNT];
17         unsigned int level[CMDPRIO_RWDIR_CNT];
18         unsigned int bssplit_nr[CMDPRIO_RWDIR_CNT];
19         struct bssplit *bssplit[CMDPRIO_RWDIR_CNT];
20 };
21
22 int fio_cmdprio_bssplit_parse(struct thread_data *td, const char *input,
23                               struct cmdprio *cmdprio);
24
25 int fio_cmdprio_percentage(struct cmdprio *cmdprio, struct io_u *io_u);
26
27 int fio_cmdprio_init(struct thread_data *td, struct cmdprio *cmdprio,
28                      bool *has_cmdprio);
29
30 #endif