Cleanup profile support
This is closer to where it needs to end up. No ext_options, just
include profile options in the general option table (and mark them
private for that profile).
Profile options are only available after loading a specific profile,
so there should be less confusion.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/parse.h b/parse.h
index 5f602a3..8f7982a 100644
--- a/parse.h
+++ b/parse.h
@@ -7,7 +7,8 @@
* Option types
*/
enum fio_opt_type {
- FIO_OPT_STR = 0,
+ FIO_OPT_INVALID = 0,
+ FIO_OPT_STR,
FIO_OPT_STR_VAL,
FIO_OPT_STR_VAL_TIME,
FIO_OPT_STR_STORE,
@@ -52,14 +53,15 @@
const struct value_pair posval[PARSE_MAX_VP];/* possible values */
const char *parent; /* parent option */
int (*verify)(struct fio_option *, void *);
+ const char *prof_name; /* only valid for specific profile */
};
typedef int (str_cb_fn)(void *, char *);
-extern int parse_option(const char *, struct fio_option *, struct flist_head *, void *);
+extern int parse_option(const char *, struct fio_option *, void *);
extern void sort_options(char **, struct fio_option *, int);
-extern int parse_cmd_option(const char *t, const char *l, struct fio_option *, struct flist_head *, void *);
-extern int show_cmd_help(struct fio_option *, struct flist_head *, const char *);
+extern int parse_cmd_option(const char *t, const char *l, struct fio_option *, void *);
+extern int show_cmd_help(struct fio_option *, const char *);
extern void fill_default_options(void *, struct fio_option *);
extern void option_init(struct fio_option *);
extern void options_init(struct fio_option *);