[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 07/44] qemu-option: Make uses of find_desc_by_name() more
From: |
Greg Kurz |
Subject: |
Re: [PATCH v3 07/44] qemu-option: Make uses of find_desc_by_name() more similar |
Date: |
Tue, 7 Jul 2020 10:26:03 +0200 |
On Mon, 6 Jul 2020 10:09:13 +0200
Markus Armbruster <armbru@redhat.com> wrote:
> This is to make the next commit easier to review.
>
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> Reviewed-by: Eric Blake <eblake@redhat.com>
> Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
> ---
Reviewed-by: Greg Kurz <groug@kaod.org>
> util/qemu-option.c | 32 ++++++++++++++++++--------------
> 1 file changed, 18 insertions(+), 14 deletions(-)
>
> diff --git a/util/qemu-option.c b/util/qemu-option.c
> index fd1fd23521..1df55bc881 100644
> --- a/util/qemu-option.c
> +++ b/util/qemu-option.c
> @@ -270,6 +270,7 @@ static void qemu_opt_del_all(QemuOpts *opts, const char
> *name)
> const char *qemu_opt_get(QemuOpts *opts, const char *name)
> {
> QemuOpt *opt;
> + const QemuOptDesc *desc;
>
> if (opts == NULL) {
> return NULL;
> @@ -277,7 +278,7 @@ const char *qemu_opt_get(QemuOpts *opts, const char *name)
>
> opt = qemu_opt_find(opts, name);
> if (!opt) {
> - const QemuOptDesc *desc = find_desc_by_name(opts->list->desc, name);
> + desc = find_desc_by_name(opts->list->desc, name);
> if (desc && desc->def_value_str) {
> return desc->def_value_str;
> }
> @@ -348,6 +349,7 @@ static bool qemu_opt_get_bool_helper(QemuOpts *opts,
> const char *name,
> bool defval, bool del)
> {
> QemuOpt *opt;
> + const QemuOptDesc *desc;
> bool ret = defval;
>
> if (opts == NULL) {
> @@ -356,7 +358,7 @@ static bool qemu_opt_get_bool_helper(QemuOpts *opts,
> const char *name,
>
> opt = qemu_opt_find(opts, name);
> if (opt == NULL) {
> - const QemuOptDesc *desc = find_desc_by_name(opts->list->desc, name);
> + desc = find_desc_by_name(opts->list->desc, name);
> if (desc && desc->def_value_str) {
> parse_option_bool(name, desc->def_value_str, &ret, &error_abort);
> }
> @@ -384,6 +386,7 @@ static uint64_t qemu_opt_get_number_helper(QemuOpts
> *opts, const char *name,
> uint64_t defval, bool del)
> {
> QemuOpt *opt;
> + const QemuOptDesc *desc;
> uint64_t ret = defval;
>
> if (opts == NULL) {
> @@ -392,7 +395,7 @@ static uint64_t qemu_opt_get_number_helper(QemuOpts
> *opts, const char *name,
>
> opt = qemu_opt_find(opts, name);
> if (opt == NULL) {
> - const QemuOptDesc *desc = find_desc_by_name(opts->list->desc, name);
> + desc = find_desc_by_name(opts->list->desc, name);
> if (desc && desc->def_value_str) {
> parse_option_number(name, desc->def_value_str, &ret,
> &error_abort);
> }
> @@ -421,6 +424,7 @@ static uint64_t qemu_opt_get_size_helper(QemuOpts *opts,
> const char *name,
> uint64_t defval, bool del)
> {
> QemuOpt *opt;
> + const QemuOptDesc *desc;
> uint64_t ret = defval;
>
> if (opts == NULL) {
> @@ -429,7 +433,7 @@ static uint64_t qemu_opt_get_size_helper(QemuOpts *opts,
> const char *name,
>
> opt = qemu_opt_find(opts, name);
> if (opt == NULL) {
> - const QemuOptDesc *desc = find_desc_by_name(opts->list->desc, name);
> + desc = find_desc_by_name(opts->list->desc, name);
> if (desc && desc->def_value_str) {
> parse_option_size(name, desc->def_value_str, &ret, &error_abort);
> }
> @@ -540,18 +544,18 @@ void qemu_opt_set_bool(QemuOpts *opts, const char
> *name, bool val,
> Error **errp)
> {
> QemuOpt *opt;
> - const QemuOptDesc *desc = opts->list->desc;
> + const QemuOptDesc *desc;
>
> - opt = g_malloc0(sizeof(*opt));
> - opt->desc = find_desc_by_name(desc, name);
> - if (!opt->desc && !opts_accepts_any(opts)) {
> + desc = find_desc_by_name(opts->list->desc, name);
> + if (!desc && !opts_accepts_any(opts)) {
> error_setg(errp, QERR_INVALID_PARAMETER, name);
> - g_free(opt);
> return;
> }
>
> + opt = g_malloc0(sizeof(*opt));
> opt->name = g_strdup(name);
> opt->opts = opts;
> + opt->desc = desc;
> opt->value.boolean = !!val;
> opt->str = g_strdup(val ? "on" : "off");
> QTAILQ_INSERT_TAIL(&opts->head, opt, next);
> @@ -561,18 +565,18 @@ void qemu_opt_set_number(QemuOpts *opts, const char
> *name, int64_t val,
> Error **errp)
> {
> QemuOpt *opt;
> - const QemuOptDesc *desc = opts->list->desc;
> + const QemuOptDesc *desc;
>
> - opt = g_malloc0(sizeof(*opt));
> - opt->desc = find_desc_by_name(desc, name);
> - if (!opt->desc && !opts_accepts_any(opts)) {
> + desc = find_desc_by_name(opts->list->desc, name);
> + if (!desc && !opts_accepts_any(opts)) {
> error_setg(errp, QERR_INVALID_PARAMETER, name);
> - g_free(opt);
> return;
> }
>
> + opt = g_malloc0(sizeof(*opt));
> opt->name = g_strdup(name);
> opt->opts = opts;
> + opt->desc = desc;
> opt->value.uint = val;
> opt->str = g_strdup_printf("%" PRId64, val);
> QTAILQ_INSERT_TAIL(&opts->head, opt, next);
- [PATCH v3 00/44] Less clumsy error checking, Markus Armbruster, 2020/07/06
- [PATCH v3 02/44] error: Document Error API usage rules, Markus Armbruster, 2020/07/06
- [PATCH v3 01/44] error: Improve examples in error.h's big comment, Markus Armbruster, 2020/07/06
- [PATCH v3 10/44] qemu-option: Factor out helper opt_create(), Markus Armbruster, 2020/07/06
- [PATCH v3 07/44] qemu-option: Make uses of find_desc_by_name() more similar, Markus Armbruster, 2020/07/06
- Re: [PATCH v3 07/44] qemu-option: Make uses of find_desc_by_name() more similar,
Greg Kurz <=
- [PATCH v3 04/44] macio: Tidy up error handling in macio_newworld_realize(), Markus Armbruster, 2020/07/06
- [PATCH v3 15/44] hmp: Eliminate a variable in hmp_migrate_set_parameter(), Markus Armbruster, 2020/07/06
- [PATCH v3 14/44] block: Avoid error accumulation in bdrv_img_create(), Markus Armbruster, 2020/07/06
- [PATCH v3 09/44] qemu-option: Simplify around find_default_by_name(), Markus Armbruster, 2020/07/06
- [PATCH v3 12/44] qemu-option: Make functions taking Error ** return bool, not void, Markus Armbruster, 2020/07/06
- [PATCH v3 21/44] qom: Rename qdev_get_type() to object_get_type(), Markus Armbruster, 2020/07/06
- [PATCH v3 03/44] qdev: Use returned bool to check for qdev_realize() etc. failure, Markus Armbruster, 2020/07/06