[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 01/10] qdev: Don't stop applying globals on f
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v2 01/10] qdev: Don't stop applying globals on first error |
Date: |
Thu, 23 Jun 2016 09:40:54 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Eduardo Habkost <address@hidden> writes:
> Since commit 25f8dd9, qdev_prop_set_globals_for_type() stops
> applying global properties on the first error. It is a leftover
> from when QEMU exited on any error when applying global property.
> Now we print a warning about the first error, bug ignore all
> other global properties after it.
Actually, we've stopped since forever. Before commit 25f8dd9, that was
okay. Since commit, it isn't. Suggest:
qdev_prop_set_globals_for_type() stops applying global properties on the
first error. It is a leftover from when QEMU exited on any error when
applying global property. Commit 25f8dd9 changed the fatal error to a
warning, but neglected to drop the stopping. Fix that.
> For example, the following command-line will not set CPUID level
> to 3, but will warn only about "x86_64-cpu.vendor" being ignored.
>
> $ ./x86_64-softmmu/qemu-system-x86_64 \
> -global x86_64-cpu.vendor=x \
> -global x86_64-cpu.level=3
> qemu-system-x86_64: Warning: global x86_64-cpu.vendor=x ignored: Property
> '.vendor' doesn't take value 'x'
>
> Fix this by not returning from qdev_prop_set_globals_for_type()
> on the first error.
>
> Cc: Markus Armbruster <address@hidden>
> Reviewed-by: Markus Armbruster <address@hidden>
> Reviewed-by: Marcel Apfelbaum <address@hidden>
> Signed-off-by: Eduardo Habkost <address@hidden>
> ---
> hw/core/qdev-properties.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
> index e3b2184..c10edee 100644
> --- a/hw/core/qdev-properties.c
> +++ b/hw/core/qdev-properties.c
> @@ -1088,7 +1088,6 @@ static void qdev_prop_set_globals_for_type(DeviceState
> *dev,
> assert(prop->user_provided);
> error_reportf_err(err, "Warning: global %s.%s=%s ignored: ",
> prop->driver, prop->property, prop->value);
> - return;
> }
> }
> }
Preferably with a clarified commit message:
Reviewed-by: Markus Armbruster <address@hidden>
- [Qemu-devel] [PATCH v2 00/10] globals: Clean up validation and error checking, Eduardo Habkost, 2016/06/20
- [Qemu-devel] [PATCH v2 03/10] vl: Reject invalid class names on -global, Eduardo Habkost, 2016/06/20
- [Qemu-devel] [PATCH v2 01/10] qdev: Don't stop applying globals on first error, Eduardo Habkost, 2016/06/20
- Re: [Qemu-devel] [PATCH v2 01/10] qdev: Don't stop applying globals on first error,
Markus Armbruster <=
- [Qemu-devel] [PATCH v2 02/10] qdev: Eliminate qemu_add_globals() function, Eduardo Habkost, 2016/06/20
- [Qemu-devel] [PATCH v2 05/10] machine: Add machine_register_compat_props() function, Eduardo Habkost, 2016/06/20
- [Qemu-devel] [PATCH v2 08/10] qdev: Eliminate GlobalProperty 'used' and 'user_provided' fields, Eduardo Habkost, 2016/06/20
- [Qemu-devel] [PATCH v2 06/10] vl: Set errp to &error_abort on machine compat_props, Eduardo Habkost, 2016/06/20
- [Qemu-devel] [PATCH v2 09/10] qdev: Remove qdev_prop_register_global_list(), Eduardo Habkost, 2016/06/20