When I tried to specify userspace_reap parameter which is libaio ioengine specific, it caused segfault because thread_data.o.description was unexpectedly set to 1. The problem is in a way of setting ioengine specific parameter which doesn't correctly set the value at corresponding offset in thread_data.eo, but it unexpectedly sets the value in the same offset in thread_data.o instead. This fixes it by providing a correct pointer when setting the ioengine specific parameters. Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx> --- options.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/options.c b/options.c index 4b91f52..f26ff77 100644 --- a/options.c +++ b/options.c @@ -3603,7 +3603,7 @@ int fio_cmd_option_parse(struct thread_data *td, const char *opt, char *val) int fio_cmd_ioengine_option_parse(struct thread_data *td, const char *opt, char *val) { - return parse_cmd_option(opt, val, td->io_ops->options, td); + return parse_cmd_option(opt, val, td->io_ops->options, td->eo); } void fio_fill_default_options(struct thread_data *td) -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe fio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html