From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52832) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XHuzn-0000MM-A4 for qemu-devel@nongnu.org; Thu, 14 Aug 2014 09:23:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XHuzg-0007Os-Je for qemu-devel@nongnu.org; Thu, 14 Aug 2014 09:23:11 -0400 Received: from lputeaux-656-01-25-125.w80-12.abo.wanadoo.fr ([80.12.84.125]:36445 helo=paradis.irqsave.net) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XHuzg-0007Nv-9r for qemu-devel@nongnu.org; Thu, 14 Aug 2014 09:23:04 -0400 Date: Thu, 14 Aug 2014 15:22:12 +0200 From: =?iso-8859-1?Q?Beno=EEt?= Canet Message-ID: <20140814132212.GK2009@irqsave.net> References: <1407950419-3486-1-git-send-email-pl@kamp.de> <1407950419-3486-2-git-send-email-pl@kamp.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <1407950419-3486-2-git-send-email-pl@kamp.de> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCHv2 1/3] rename parse_enum_option to qapi_enum_parse and make it public List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven Cc: kwolf@redhat.com, hutao@cn.fujitsu.com, qemu-devel@nongnu.org, mreitz@redhat.com, stefanha@redhat.com, pbonzini@redhat.com, armbru@redhat.com The Wednesday 13 Aug 2014 =E0 19:20:17 (+0200), Peter Lieven wrote : > relaxing the license to LGPLv2+ is intentional. >=20 > Suggested-by: Markus Armbruster > Signed-off-by: Hu Tao > Signed-off-by: Peter Lieven > Reviewed-by: Eric Blake > --- > blockdev.c | 30 ++++++------------------------ > include/qapi/util.h | 17 +++++++++++++++++ > qapi/Makefile.objs | 2 +- > qapi/qapi-util.c | 34 ++++++++++++++++++++++++++++++++++ > 4 files changed, 58 insertions(+), 25 deletions(-) > create mode 100644 include/qapi/util.h > create mode 100644 qapi/qapi-util.c >=20 > diff --git a/blockdev.c b/blockdev.c > index 48bd9a3..9b93cf2 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" > @@ -274,25 +275,6 @@ static int parse_block_error_action(const char *bu= f, bool is_read, Error **errp) > } > } > =20 > -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 =3D 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)) { > @@ -456,11 +438,11 @@ static DriveInfo *blockdev_init(const char *file,= QDict *bs_opts, > } > =20 > detect_zeroes =3D > - parse_enum_option(BlockdevDetectZeroesOptions_lookup, > - qemu_opt_get(opts, "detect-zeroes"), > - BLOCKDEV_DETECT_ZEROES_OPTIONS_MAX, > - BLOCKDEV_DETECT_ZEROES_OPTIONS_OFF, > - &error); > + qapi_enum_parse(BlockdevDetectZeroesOptions_lookup, > + qemu_opt_get(opts, "detect-zeroes"), > + BLOCKDEV_DETECT_ZEROES_OPTIONS_MAX, > + BLOCKDEV_DETECT_ZEROES_OPTIONS_OFF, > + &error); > if (error) { > error_propagate(errp, error); > goto early_err; > diff --git a/include/qapi/util.h b/include/qapi/util.h > new file mode 100644 > index 0000000..de9238b > --- /dev/null > +++ b/include/qapi/util.h > @@ -0,0 +1,17 @@ > +/* > + * QAPI util functions > + * > + * Copyright Fujitsu, Inc. 2014 > + * > + * This work is licensed under the terms of the GNU LGPL, version 2.1 = or later. > + * See the COPYING.LIB file in the top-level directory. > + * > + */ > + > +#ifndef QAPI_UTIL_H > +#define QAPI_UTIL_H > + > +int qapi_enum_parse(const char *lookup[], const char *buf, > + int max, int def, Error **errp); > + > +#endif > diff --git a/qapi/Makefile.objs b/qapi/Makefile.objs > index d14b769..2278970 100644 > --- a/qapi/Makefile.objs > +++ b/qapi/Makefile.objs > @@ -1,6 +1,6 @@ > util-obj-y =3D qapi-visit-core.o qapi-dealloc-visitor.o qmp-input-visi= tor.o > util-obj-y +=3D qmp-output-visitor.o qmp-registry.o qmp-dispatch.o > util-obj-y +=3D string-input-visitor.o string-output-visitor.o > - Spurious line removal. > util-obj-y +=3D opts-visitor.o > util-obj-y +=3D qmp-event.o > +util-obj-y +=3D qapi-util.o > diff --git a/qapi/qapi-util.c b/qapi/qapi-util.c > new file mode 100644 > index 0000000..1d8fb96 > --- /dev/null > +++ b/qapi/qapi-util.c > @@ -0,0 +1,34 @@ > +/* > + * QAPI util functions > + * > + * Authors: > + * Hu Tao > + * Peter Lieven > + *=20 > + * This work is licensed under the terms of the GNU LGPL, version 2.1 = or later. > + * See the COPYING.LIB file in the top-level directory. > + * > + */ > + > +#include "qemu-common.h" > +#include "qapi/error.h" > +#include "qapi/util.h" > + > +int qapi_enum_parse(const char *lookup[], const char *buf, > + int max, int def, Error **errp) > +{ > + int i; > + > + if (!buf) { > + return def; > + } > + > + for (i =3D 0; i < max; i++) { > + if (!strcmp(buf, lookup[i])) { > + return i; > + } > + } > + > + error_setg(errp, "invalid parameter value: %s", buf); > + return def; > +} > --=20 > 1.7.9.5 >=20 >=20 Reviewed-by: Benoit Canet