On Sat, Jun 14, 2014 at 09:07:19PM +0200, Max Reitz wrote: > On 12.06.2014 05:54, Hu Tao wrote: > >Signed-off-by: Hu Tao <hu...@cn.fujitsu.com> > >Suggested-by: Markus Armbruster <arm...@redhat.com> > >--- > > blockdev.c | 22 ++-------------------- > > include/qapi/util.h | 17 +++++++++++++++++ > > qapi/Makefile.objs | 2 +- > > qapi/qapi-util.c | 32 ++++++++++++++++++++++++++++++++ > > 4 files changed, 52 insertions(+), 21 deletions(-) > > create mode 100644 include/qapi/util.h > > create mode 100644 qapi/qapi-util.c > > > >diff --git a/blockdev.c b/blockdev.c > >index 4cbcc56..9adfdbb 100644 > >--- a/blockdev.c > >+++ b/blockdev.c > >@@ -39,6 +39,7 @@ > > #include "qapi/qmp/types.h" > > #include "qapi-visit.h" > > #include "qapi/qmp-output-visitor.h" > >+#include "qapi/util.h" > > #include "sysemu/sysemu.h" > > #include "block/block_int.h" > > #include "qmp-commands.h" > >@@ -287,25 +288,6 @@ static int parse_block_error_action(const char *buf, > >bool is_read, Error **errp) > > } > > } > >-static inline int parse_enum_option(const char *lookup[], const char *buf, > >- int max, int def, Error **errp) > >-{ > >- int i; > >- > >- if (!buf) { > >- return def; > >- } > >- > >- for (i = 0; i < max; i++) { > >- if (!strcmp(buf, lookup[i])) { > >- return i; > >- } > >- } > >- > >- error_setg(errp, "invalid parameter value: %s", buf); > >- return def; > >-} > >- > > static bool check_throttle_config(ThrottleConfig *cfg, Error **errp) > > { > > if (throttle_conflicting(cfg)) { > >@@ -472,7 +454,7 @@ static DriveInfo *blockdev_init(const char *file, QDict > >*bs_opts, > > } > > detect_zeroes = > >- parse_enum_option(BlockdevDetectZeroesOptions_lookup, > >+ qapi_enum_parse(BlockdevDetectZeroesOptions_lookup, > > qemu_opt_get(opts, "detect-zeroes"), > > BLOCKDEV_DETECT_ZEROES_OPTIONS_MAX, > > BLOCKDEV_DETECT_ZEROES_OPTIONS_OFF, > > Please adapt the indentation of the other parameters.
Sure. > > Other than that: > > Reviewed-by: Max Reitz <mre...@redhat.com>