[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [Qemu-devel] [PATCH] cpu: don't allow negative core id
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-ppc] [Qemu-devel] [PATCH] cpu: don't allow negative core id |
Date: |
Wed, 2 Aug 2017 10:42:41 -0300 |
Hi Laurent,
On Wed, Aug 2, 2017 at 7:32 AM, Laurent Vivier <address@hidden> wrote:
> With pseries machine type a negative core-id is not managed properly:
> -1 gives an inaccurate error message ("core -1 already populated"),
> -2 crashes QEMU (core dump)
>
> As it seems a negative value is invalid for any architecture,
> instead of checking this in spapr_core_pre_plug() I think it's better
> to check this in the generic part, core_prop_set_core_id()
Why is this property signed? If there is not reason to use it negative,
is it possible to use object_property_add(.."uint"..)?
Also what about core_prop_set_nr_threads()? It might coredump the
same way.
Regards,
Phil.
>
> Signed-off-by: Laurent Vivier <address@hidden>
> ---
> hw/cpu/core.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/hw/cpu/core.c b/hw/cpu/core.c
> index 2bf960d..bd578ab 100644
> --- a/hw/cpu/core.c
> +++ b/hw/cpu/core.c
> @@ -33,6 +33,11 @@ static void core_prop_set_core_id(Object *obj, Visitor *v,
> const char *name,
> return;
> }
>
> + if (value < 0) {
> + error_setg(errp, "Invalid core id %"PRId64, value);
> + return;
> + }
> +
> core->core_id = value;
> }
>
> --
> 2.9.4
>
>