pmemblk: Clarify fsize is in MiB not MB
[fio.git] / optgroup.h
1 #ifndef FIO_OPT_GROUP_H
2 #define FIO_OPT_GROUP_H
3
4 struct opt_group {
5         const char *name;
6         uint64_t mask;
7 };
8
9 enum opt_category {
10         __FIO_OPT_C_GENERAL     = 0,
11         __FIO_OPT_C_IO,
12         __FIO_OPT_C_FILE,
13         __FIO_OPT_C_STAT,
14         __FIO_OPT_C_LOG,
15         __FIO_OPT_C_PROFILE,
16         __FIO_OPT_C_ENGINE,
17         __FIO_OPT_C_NR,
18
19         FIO_OPT_C_GENERAL       = (1ULL << __FIO_OPT_C_GENERAL),
20         FIO_OPT_C_IO            = (1ULL << __FIO_OPT_C_IO),
21         FIO_OPT_C_FILE          = (1ULL << __FIO_OPT_C_FILE),
22         FIO_OPT_C_STAT          = (1ULL << __FIO_OPT_C_STAT),
23         FIO_OPT_C_LOG           = (1ULL << __FIO_OPT_C_LOG),
24         FIO_OPT_C_PROFILE       = (1ULL << __FIO_OPT_C_PROFILE),
25         FIO_OPT_C_ENGINE        = (1ULL << __FIO_OPT_C_ENGINE),
26         FIO_OPT_C_INVALID       = (1ULL << __FIO_OPT_C_NR),
27 };
28
29 enum opt_category_group {
30         __FIO_OPT_G_RATE        = 0,
31         __FIO_OPT_G_ZONE,
32         __FIO_OPT_G_RWMIX,
33         __FIO_OPT_G_VERIFY,
34         __FIO_OPT_G_TRIM,
35         __FIO_OPT_G_IOLOG,
36         __FIO_OPT_G_IO_DEPTH,
37         __FIO_OPT_G_IO_FLOW,
38         __FIO_OPT_G_DESC,
39         __FIO_OPT_G_FILENAME,
40         __FIO_OPT_G_IO_BASIC,
41         __FIO_OPT_G_CGROUP,
42         __FIO_OPT_G_RUNTIME,
43         __FIO_OPT_G_PROCESS,
44         __FIO_OPT_G_CRED,
45         __FIO_OPT_G_CLOCK,
46         __FIO_OPT_G_IO_TYPE,
47         __FIO_OPT_G_THINKTIME,
48         __FIO_OPT_G_RANDOM,
49         __FIO_OPT_G_IO_BUF,
50         __FIO_OPT_G_TIOBENCH,
51         __FIO_OPT_G_ERR,
52         __FIO_OPT_G_E4DEFRAG,
53         __FIO_OPT_G_NETIO,
54         __FIO_OPT_G_RDMA,
55         __FIO_OPT_G_LIBAIO,
56         __FIO_OPT_G_ACT,
57         __FIO_OPT_G_LATPROF,
58         __FIO_OPT_G_RBD,
59         __FIO_OPT_G_GFAPI,
60         __FIO_OPT_G_MTD,
61         __FIO_OPT_G_HDFS,
62         __FIO_OPT_G_NR,
63
64         FIO_OPT_G_RATE          = (1ULL << __FIO_OPT_G_RATE),
65         FIO_OPT_G_ZONE          = (1ULL << __FIO_OPT_G_ZONE),
66         FIO_OPT_G_RWMIX         = (1ULL << __FIO_OPT_G_RWMIX),
67         FIO_OPT_G_VERIFY        = (1ULL << __FIO_OPT_G_VERIFY),
68         FIO_OPT_G_TRIM          = (1ULL << __FIO_OPT_G_TRIM),
69         FIO_OPT_G_IOLOG         = (1ULL << __FIO_OPT_G_IOLOG),
70         FIO_OPT_G_IO_DEPTH      = (1ULL << __FIO_OPT_G_IO_DEPTH),
71         FIO_OPT_G_IO_FLOW       = (1ULL << __FIO_OPT_G_IO_FLOW),
72         FIO_OPT_G_DESC          = (1ULL << __FIO_OPT_G_DESC),
73         FIO_OPT_G_FILENAME      = (1ULL << __FIO_OPT_G_FILENAME),
74         FIO_OPT_G_IO_BASIC      = (1ULL << __FIO_OPT_G_IO_BASIC),
75         FIO_OPT_G_CGROUP        = (1ULL << __FIO_OPT_G_CGROUP),
76         FIO_OPT_G_RUNTIME       = (1ULL << __FIO_OPT_G_RUNTIME),
77         FIO_OPT_G_PROCESS       = (1ULL << __FIO_OPT_G_PROCESS),
78         FIO_OPT_G_CRED          = (1ULL << __FIO_OPT_G_CRED),
79         FIO_OPT_G_CLOCK         = (1ULL << __FIO_OPT_G_CLOCK),
80         FIO_OPT_G_IO_TYPE       = (1ULL << __FIO_OPT_G_IO_TYPE),
81         FIO_OPT_G_THINKTIME     = (1ULL << __FIO_OPT_G_THINKTIME),
82         FIO_OPT_G_RANDOM        = (1ULL << __FIO_OPT_G_RANDOM),
83         FIO_OPT_G_IO_BUF        = (1ULL << __FIO_OPT_G_IO_BUF),
84         FIO_OPT_G_TIOBENCH      = (1ULL << __FIO_OPT_G_TIOBENCH),
85         FIO_OPT_G_ERR           = (1ULL << __FIO_OPT_G_ERR),
86         FIO_OPT_G_E4DEFRAG      = (1ULL << __FIO_OPT_G_E4DEFRAG),
87         FIO_OPT_G_NETIO         = (1ULL << __FIO_OPT_G_NETIO),
88         FIO_OPT_G_RDMA          = (1ULL << __FIO_OPT_G_RDMA),
89         FIO_OPT_G_LIBAIO        = (1ULL << __FIO_OPT_G_LIBAIO),
90         FIO_OPT_G_ACT           = (1ULL << __FIO_OPT_G_ACT),
91         FIO_OPT_G_LATPROF       = (1ULL << __FIO_OPT_G_LATPROF),
92         FIO_OPT_G_RBD           = (1ULL << __FIO_OPT_G_RBD),
93         FIO_OPT_G_GFAPI         = (1ULL << __FIO_OPT_G_GFAPI),
94         FIO_OPT_G_MTD           = (1ULL << __FIO_OPT_G_MTD),
95         FIO_OPT_G_HDFS          = (1ULL << __FIO_OPT_G_HDFS),
96         FIO_OPT_G_INVALID       = (1ULL << __FIO_OPT_G_NR),
97 };
98
99 extern const struct opt_group *opt_group_from_mask(uint64_t *mask);
100 extern const struct opt_group *opt_group_cat_from_mask(uint64_t *mask);
101
102 #endif