Accepting request 777414 from home:bfrogers:branches:Virtualization

- Fix xenfv migration from xen host with pre-v4.0 qemu. We had
  previously dropped a similar patch, but have decided that for now
  we need to go with this type of solution (bsc#1159755)
  hw-i386-disable-smbus-migration-for-xenf.patch

OBS-URL: https://build.opensuse.org/request/show/777414
OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=532
This commit is contained in:
Bruce Rogers 2020-02-19 20:25:51 +00:00 committed by Git OBS Bridge
parent 2ac63d46d5
commit b0dd498974
4 changed files with 57 additions and 2 deletions

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dce0ee97070ce006efec65be07aba08f250cb06df9e1f9fa0ef8a2a21b7e6c5c
size 88648
oid sha256:82d7a2dc700824ec862b71dbb82aba7bf7ec425384f8176dfd224ae9f777a521
size 83524

View File

@ -0,0 +1,45 @@
From: Olaf Hering <olaf@aepfle.de>
Date: Wed, 19 Feb 2020 15:15:15 +0100
Subject: hw/i386: disable smbus migration for xenfv
References: bsc#1159755
With commit 7fccf2a06890e3bc3b30e29827ad3fb93fe88fea a new member
smbus_no_migration_support was added, and enabled in two places.
With commit 4ab2f2a8aabfea95cc53c64e13b3f67960b27fdf the vmstate_acpi
got new elements, which are conditionally filled. As a result, an
incoming migration expected smbus related data unless smbus migration
was disabled for a given MachineClass.
Since commit 7fccf2a06890e3bc3b30e29827ad3fb93fe88fea forgot to handle
xenfv, live migration to receiving hosts using qemu-4.0 and later is broken.
Adjust 'xenfv' to stay compatible with with 'pc-i440fx-3.1':
- the toolstack can not use '-M pc-i440fx-3.1,accel=xen -device xen-platform'
because this would move the PCI device from 00:02.0 to 00:04.0
- disable pvh.
Running PVH may require dedicated device_model_args= options which select
'pc-i440fx-4.x'
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Bruce Rogers <brogers@suse.com>
---
hw/i386/pc_piix.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index d760d3589607daf4997ea76854c4..7bf1021200a3baa06a58fa36c430 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -1043,6 +1043,11 @@ DEFINE_PC_MACHINE(isapc, "isapc", pc_init_isa,
#ifdef CONFIG_XEN
static void xenfv_machine_options(MachineClass *m)
{
+ /* compat with pc_i440fx_3_1_machine_options */
+ PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
+ pcmc->do_not_add_smb_acpi = true;
+ m->smbus_no_migration_support = true;
+ pcmc->pvh_enabled = false; /* FIXME */
m->desc = "Xen Fully-virtualized PC";
m->max_cpus = HVM_MAX_VCPUS;
m->default_machine_opts = "accel=xen";

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Wed Feb 19 18:48:47 UTC 2020 - Bruce Rogers <brogers@suse.com>
- Fix xenfv migration from xen host with pre-v4.0 qemu. We had
previously dropped a similar patch, but have decided that for now
we need to go with this type of solution (bsc#1159755)
hw-i386-disable-smbus-migration-for-xenf.patch
-------------------------------------------------------------------
Tue Feb 4 04:01:19 UTC 2020 - Liang Yan <lyan@suse.com>

View File

@ -220,6 +220,7 @@ Patch00089: roms-Makefile-enable-cross-compile-for-b.patch
Patch00090: iscsi-Cap-block-count-from-GET-LBA-STATU.patch
Patch00091: block-backup-fix-memory-leak-in-bdrv_bac.patch
Patch00092: target-arm-monitor-query-cpu-model-expan.patch
Patch00093: hw-i386-disable-smbus-migration-for-xenf.patch
# Patches applied in roms/seabios/:
Patch01000: seabios-use-python2-explicitly-as-needed.patch
Patch01001: seabios-switch-to-python3-as-needed.patch
@ -1019,6 +1020,7 @@ This package provides a service file for starting and stopping KSM.
%patch00090 -p1
%patch00091 -p1
%patch00092 -p1
%patch00093 -p1
%patch01000 -p1
%patch01001 -p1
%patch01002 -p1