qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH for-6.1 ?] hw/core: fix error checkig in smp_parse


From: Eduardo Habkost
Subject: Re: [PATCH for-6.1 ?] hw/core: fix error checkig in smp_parse
Date: Thu, 12 Aug 2021 14:57:26 -0400

On Thu, Aug 12, 2021 at 06:53:53PM +0100, Daniel P. Berrangé wrote:
> The machine_set_smp() mistakenly checks 'errp' not '*errp',
> and so thinks there is an error every single time it runs.
> This causes it to jump to the end of the method, skipping
> the max CPUs checks. The caller meanwhile sees no error
> and so carries on execution. The result of all this is:
> 
>  $ qemu-system-x86_64 -smp -1
>  qemu-system-x86_64: GLib: ../glib/gmem.c:142: failed to allocate 
> 481036337048 bytes
> 
> instead of
> 
>  $ qemu-system-x86_64 -smp -1
>  qemu-system-x86_64: Invalid SMP CPUs -1. The max CPUs supported by machine 
> 'pc-i440fx-6.1' is 255
> 
> This is a regression from
> 
>   commit fe68090e8fbd6e831aaf3fc3bb0459c5cccf14cf
>   Author: Paolo Bonzini <pbonzini@redhat.com>
>   Date:   Thu May 13 09:03:48 2021 -0400
> 
>     machine: add smp compound property
> 
> Closes: https://gitlab.com/qemu-project/qemu/-/issues/524
> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

I will prepare a pull request with this, just in case we are
already going to have a -rc4.  I don't think this bug alone
should delay release of 6.1, though.

> ---
>  hw/core/machine.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/hw/core/machine.c b/hw/core/machine.c
> index 943974d411..ab4fca6546 100644
> --- a/hw/core/machine.c
> +++ b/hw/core/machine.c
> @@ -832,7 +832,7 @@ static void machine_set_smp(Object *obj, Visitor *v, 
> const char *name,
>      }
>  
>      mc->smp_parse(ms, config, errp);
> -    if (errp) {
> +    if (*errp) {
>          goto out_free;
>      }
>  
> -- 
> 2.31.1
> 

-- 
Eduardo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]