[Libguestfs] [v2v PATCH 0/9] ensure x86-64-v2 uarch level for RHEL-9.0+ guests

Laszlo Ersek
2022-04-20T16:37:34Z

On 04/20/22 18:23, Laszlo Ersek wrote:
> Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2076013
>
> We don't specify a VCPU model in the destination domain description if
> the source description doesn't specify one. This is a problem for
x86-64
> RHEL-9.0+ guests, when using the QEMU or libvirt output modules. Those
> outputs default to the "qemu64" VCPU model in the absence of an
explicit
> VCPU model specification, and "qemu64" does not satisfy the
"x86-64-v2"
> microarchitecture level, which is required by RHEL-9.0+ guests. As a
> result, these guests crash during boot, after conversion.
>
> The series recognizes guests that are unable to boot on the default QEMU
> VCPU model, and specifies host CPU passthrough for them in the QEMU and
> libvirt output modules.
>
> Testing: <https://bugzilla.redhat.com/show_bug.cgi?id=2076013#c18>.
>
> Thanks,
> Laszlo
>
> Laszlo Ersek (9):
>   types: introduce the "gcaps_default_cpu" field
>   create_libvirt_xml: simplify match on (s_cpu_vendor, s_cpu_model)
>   create_libvirt_xml: normalize match on (s_cpu_vendor, s_cpu_model)
>   create_libvirt_xml: eliminate childless <cpu
match="minimum"/> element
>   create_libvirt_xml: restrict 'match="minimum"'
<cpu> attribute
>     production
>   create_libvirt_xml: honor "gcaps_default_cpu"
>   output_qemu: reflect source VCPU model to the QEMU command line
>   output_qemu: honor "gcaps_default_cpu"
>   convert_linux: set "gcaps_default_cpu = false" for x86_64
RHEL-9.0+
>     guests
>
>  convert/convert_linux.ml     |  9 ++++++
>  convert/convert_windows.ml   |  1 +
>  lib/types.ml                 |  3 ++
>  lib/types.mli                | 14 +++++++++
>  output/create_libvirt_xml.ml | 31 +++++++++++---------
>  output/output_qemu.ml        |  7 +++++
>  6 files changed, 51 insertions(+), 14 deletions(-)
>
>
> base-commit: 8643970f9791b1c90dfd6a2dd1abfc9afef1fb52
>

The patches are also available here:

Repo:   https://github.com/lersek/virt-v2v.git
Branch: vcpu-model-rhbz-2076013

Thanks
Laszlo