[Qemu-devel] [PATCH 0/3] pc: Fix die-id validation and compatibility with libvirt

Eduardo Habkost posted 3 patches 6 years, 2 months ago
Test FreeBSD passed
Test docker-mingw@fedora passed
Test asan passed
Test docker-clang@ubuntu passed
Test checkpatch passed
Test s390x failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190815183803.13346-1-ehabkost@redhat.com
Maintainers: Eduardo Habkost <ehabkost@redhat.com>, Richard Henderson <rth@twiddle.net>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, Paolo Bonzini <pbonzini@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>
hw/i386/pc.c                             | 23 ++++++++-
tests/acceptance/pc_cpu_hotplug_props.py | 59 ++++++++++++++++++++++++
2 files changed, 81 insertions(+), 1 deletion(-)
create mode 100644 tests/acceptance/pc_cpu_hotplug_props.py
[Qemu-devel] [PATCH 0/3] pc: Fix die-id validation and compatibility with libvirt
Posted by Eduardo Habkost 6 years, 2 months ago
Currently, if die-id is omitted on -device for CPUs, we get a
very confusing error message:

  $ qemu-system-x86_64 -smp 1,sockets=6,maxcpus=6 \
    -device qemu64-x86_64-cpu,socket-id=1,core-id=0,thread-id=0
  qemu-system-x86_64: -device qemu64-x86_64-cpu,socket-id=1,core-id=0,thread-id=0: \
    Invalid CPU die-id: 4294967295 must be in range 0:5

This has 3 problems

1) The actual range for die-id is 0:0.
   This is fixed by patch 1/3.
2) The user didn't specify die-id=4294967295.
   This is fixed by patch 2/3.
3) It breaks compatibility with libvirt because die-id was not
   mandatory before.
   This is addressed by patch 3/3.

Issues #1 and #2 were reported at:
https://bugzilla.redhat.com/show_bug.cgi?id=1741151

Issue #3 was reported at:
https://bugzilla.redhat.com/show_bug.cgi?id=1741451

Cc: Like Xu <like.xu@linux.intel.com>
Cc: Peter Krempa <pkrempa@redhat.com>
Cc: Igor Mammedov <imammedo@redhat.com>

Eduardo Habkost (3):
  pc: Fix error message on die-id validation
  pc: Improve error message when die-id is omitted
  pc: Don't make CPU properties mandatory unless necessary

 hw/i386/pc.c                             | 23 ++++++++-
 tests/acceptance/pc_cpu_hotplug_props.py | 59 ++++++++++++++++++++++++
 2 files changed, 81 insertions(+), 1 deletion(-)
 create mode 100644 tests/acceptance/pc_cpu_hotplug_props.py

-- 
2.21.0


Re: [Qemu-devel] [PATCH 0/3] pc: Fix die-id validation and compatibility with libvirt
Posted by Michael S. Tsirkin 6 years, 2 months ago
On Thu, Aug 15, 2019 at 03:38:00PM -0300, Eduardo Habkost wrote:
> Currently, if die-id is omitted on -device for CPUs, we get a
> very confusing error message:
> 
>   $ qemu-system-x86_64 -smp 1,sockets=6,maxcpus=6 \
>     -device qemu64-x86_64-cpu,socket-id=1,core-id=0,thread-id=0
>   qemu-system-x86_64: -device qemu64-x86_64-cpu,socket-id=1,core-id=0,thread-id=0: \
>     Invalid CPU die-id: 4294967295 must be in range 0:5
> 
> This has 3 problems
> 
> 1) The actual range for die-id is 0:0.
>    This is fixed by patch 1/3.
> 2) The user didn't specify die-id=4294967295.
>    This is fixed by patch 2/3.
> 3) It breaks compatibility with libvirt because die-id was not
>    mandatory before.
>    This is addressed by patch 3/3.
> 
> Issues #1 and #2 were reported at:
> https://bugzilla.redhat.com/show_bug.cgi?id=1741151
> 
> Issue #3 was reported at:
> https://bugzilla.redhat.com/show_bug.cgi?id=1741451
> 
> Cc: Like Xu <like.xu@linux.intel.com>
> Cc: Peter Krempa <pkrempa@redhat.com>
> Cc: Igor Mammedov <imammedo@redhat.com>

Looks good

Reviewed-by: Michael S. Tsirkin <mst@redhat.com>

I'm traveling and can't test this properly.
Anyone else can merge this? Eduardo?


> Eduardo Habkost (3):
>   pc: Fix error message on die-id validation
>   pc: Improve error message when die-id is omitted
>   pc: Don't make CPU properties mandatory unless necessary
> 
>  hw/i386/pc.c                             | 23 ++++++++-
>  tests/acceptance/pc_cpu_hotplug_props.py | 59 ++++++++++++++++++++++++
>  2 files changed, 81 insertions(+), 1 deletion(-)
>  create mode 100644 tests/acceptance/pc_cpu_hotplug_props.py
> 
> -- 
> 2.21.0