diff --git a/kvm-clear-out-KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT-for.patch b/kvm-clear-out-KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT-for.patch new file mode 100644 index 0000000..bcf15cf --- /dev/null +++ b/kvm-clear-out-KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT-for.patch @@ -0,0 +1,119 @@ +From fece44d5054ef13f483d7531a8462cb7f8ff5b93 Mon Sep 17 00:00:00 2001 +From: Bandan Das +Date: Fri, 14 Dec 2018 19:33:40 +0000 +Subject: [PATCH 7/8] kvm: clear out KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT for + older machine types + +RH-Author: Bandan Das +Message-id: +Patchwork-id: 83523 +O-Subject: [RHEL8 qemu-kvm PATCH] kvm: clear out KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT for older machine types +Bugzilla: 1659604 +RH-Acked-by: Dr. David Alan Gilbert +RH-Acked-by: Pankaj Gupta +RH-Acked-by: Eduardo Habkost + +Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1659604 +Brew: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=19521246 +Upstream: Not applicable +Branch: rhel8/master-3.1.0 on top of [RHEL8 qemu-kvm PATCH v3 0/5] 8.0.0 x86 machine types + +After the addition of support for async pf injection to L1, newer +hypervisors advertise the feature using bit 2 of the +MSR_KVM_ASYNC_PF_EN msr. However, this was reserved in older +hypervisors which results in an error during migration like so: + +qemu-kvm: error: failed to set MSR 0x4b564d02 to 0x27fc13285 +qemu-kvm: /builddir/build/BUILD/qemu-2.12.0/target/i386/kvm.c:1940: kvm_put_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed. +Aborted (core dumped) + +This patch introduces a new bool that is set for older machine types. +When set, Qemu's stored value clears out bit 2. This should be safe +because the guest can still enable it by writing to the MSR after +checking for support. A reset/migration for <7.6 machine type would +reset the bit though. + +Signed-off-by: Bandan Das +Signed-off-by: Danilo C. L. de Paula +--- + hw/i386/pc.c | 1 + + hw/i386/pc_piix.c | 1 + + hw/i386/pc_q35.c | 1 + + include/hw/boards.h | 2 ++ + target/i386/kvm.c | 4 ++++ + 5 files changed, 9 insertions(+) + +diff --git a/hw/i386/pc.c b/hw/i386/pc.c +index a609332..18268d3 100644 +--- a/hw/i386/pc.c ++++ b/hw/i386/pc.c +@@ -2391,6 +2391,7 @@ static void pc_machine_class_init(ObjectClass *oc, void *data) + pcmc->linuxboot_dma_enabled = true; + assert(!mc->get_hotplug_handler); + pcmc->pc_rom_ro = true; ++ mc->async_pf_vmexit_disable = false; + mc->get_hotplug_handler = pc_get_hotpug_handler; + mc->cpu_index_to_instance_props = pc_cpu_index_to_props; + mc->get_default_cpu_node_id = pc_get_default_cpu_node_id; +diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c +index efee5e7..46c494a 100644 +--- a/hw/i386/pc_piix.c ++++ b/hw/i386/pc_piix.c +@@ -1186,6 +1186,7 @@ static void pc_machine_rhel760_options(MachineClass *m) + { + pc_machine_rhel7_options(m); + m->desc = "RHEL 7.6.0 PC (i440FX + PIIX, 1996)"; ++ m->async_pf_vmexit_disable = true; + SET_MACHINE_COMPAT(m, PC_RHEL7_6_COMPAT); + } + +diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c +index 0b7223f..1810cf2 100644 +--- a/hw/i386/pc_q35.c ++++ b/hw/i386/pc_q35.c +@@ -470,6 +470,7 @@ static void pc_q35_machine_rhel760_options(MachineClass *m) + pc_q35_machine_rhel800_options(m); + m->alias = NULL; + m->desc = "RHEL-7.6.0 PC (Q35 + ICH9, 2009)"; ++ m->async_pf_vmexit_disable = true; + SET_MACHINE_COMPAT(m, PC_RHEL7_6_COMPAT); + } + +diff --git a/include/hw/boards.h b/include/hw/boards.h +index f82f284..27463fb 100644 +--- a/include/hw/boards.h ++++ b/include/hw/boards.h +@@ -204,6 +204,8 @@ struct MachineClass { + const char **valid_cpu_types; + strList *allowed_dynamic_sysbus_devices; + bool auto_enable_numa_with_memhp; ++ /* RHEL only */ ++ bool async_pf_vmexit_disable; + void (*numa_auto_assign_ram)(MachineClass *mc, NodeInfo *nodes, + int nb_nodes, ram_addr_t size); + bool ignore_boot_device_suffixes; +diff --git a/target/i386/kvm.c b/target/i386/kvm.c +index b2401d1..5b0ce82 100644 +--- a/target/i386/kvm.c ++++ b/target/i386/kvm.c +@@ -2351,6 +2351,7 @@ static int kvm_get_msrs(X86CPU *cpu) + struct kvm_msr_entry *msrs = cpu->kvm_msr_buf->entries; + int ret, i; + uint64_t mtrr_top_bits; ++ MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine()); + + kvm_msr_buf_reset(cpu); + +@@ -2648,6 +2649,9 @@ static int kvm_get_msrs(X86CPU *cpu) + break; + case MSR_KVM_ASYNC_PF_EN: + env->async_pf_en_msr = msrs[i].data; ++ if (mc->async_pf_vmexit_disable) { ++ env->async_pf_en_msr &= ~(1ULL << 2); ++ } + break; + case MSR_KVM_PV_EOI_EN: + env->pv_eoi_en_msr = msrs[i].data; +-- +1.8.3.1 + diff --git a/kvm-compat-Generic-HW_COMPAT_RHEL7_6.patch b/kvm-compat-Generic-HW_COMPAT_RHEL7_6.patch new file mode 100644 index 0000000..f366d96 --- /dev/null +++ b/kvm-compat-Generic-HW_COMPAT_RHEL7_6.patch @@ -0,0 +1,66 @@ +From a75b0a6a7ef6e14e3b65b34bbc6935491d3b016e Mon Sep 17 00:00:00 2001 +From: "Dr. David Alan Gilbert" +Date: Fri, 14 Dec 2018 17:02:07 +0000 +Subject: [PATCH 2/8] compat: Generic HW_COMPAT_RHEL7_6 + +RH-Author: Dr. David Alan Gilbert +Message-id: <20181214170211.14267-3-dgilbert@redhat.com> +Patchwork-id: 83516 +O-Subject: [RHEL8 qemu-kvm PATCH v3 2/6] compat: Generic HW_COMPAT_RHEL7_6 +Bugzilla: 1655820 +RH-Acked-by: Laurent Vivier +RH-Acked-by: Thomas Huth +RH-Acked-by: Cornelia Huck + +From: "Dr. David Alan Gilbert" + +Add the HW_COMPAT_RHEL7_6 macro based on the 2.12 and 3.0 macros. + +Signed-off-by: Dr. David Alan Gilbert +Signed-off-by: Danilo C. L. de Paula +--- + include/hw/compat.h | 29 +++++++++++++++++++++++++++++ + 1 file changed, 29 insertions(+) + +diff --git a/include/hw/compat.h b/include/hw/compat.h +index f08cc7c..40db243 100644 +--- a/include/hw/compat.h ++++ b/include/hw/compat.h +@@ -513,5 +513,34 @@ + .value = "off",\ + }, + ++/* The same as HW_COMPAT_3_0 + HW_COMPAT_2_12 ++ * except that ++ * there's nothing in 3_0 ++ * migration.decompress-error-check=off was in 7.5 from bz 1584139 ++ * ++ */ ++#define HW_COMPAT_RHEL7_6 \ ++ { /* HW_COMPAT_RHEL7_6 from HW_COMPAT_2_12 */ \ ++ .driver = "hda-audio",\ ++ .property = "use-timer",\ ++ .value = "false",\ ++ },{ /* HW_COMPAT_RHEL7_6 from HW_COMPAT_2_12 */ \ ++ .driver = "cirrus-vga",\ ++ .property = "global-vmstate",\ ++ .value = "true",\ ++ },{ /* HW_COMPAT_RHEL7_6 from HW_COMPAT_2_12 */ \ ++ .driver = "VGA",\ ++ .property = "global-vmstate",\ ++ .value = "true",\ ++ },{ /* HW_COMPAT_RHEL7_6 from HW_COMPAT_2_12 */ \ ++ .driver = "vmware-svga",\ ++ .property = "global-vmstate",\ ++ .value = "true",\ ++ },{ /* HW_COMPAT_RHEL7_6 from HW_COMPAT_2_12 */ \ ++ .driver = "qxl-vga",\ ++ .property = "global-vmstate",\ ++ .value = "true",\ ++ }, ++ + + #endif /* HW_COMPAT_H */ +-- +1.8.3.1 + diff --git a/kvm-pc-7.5-compat-entries.patch b/kvm-pc-7.5-compat-entries.patch new file mode 100644 index 0000000..5a1d439 --- /dev/null +++ b/kvm-pc-7.5-compat-entries.patch @@ -0,0 +1,55 @@ +From d89b308fb81b12ff2f452739d103cfee8043f94a Mon Sep 17 00:00:00 2001 +From: "Dr. David Alan Gilbert" +Date: Fri, 14 Dec 2018 17:02:06 +0000 +Subject: [PATCH 1/8] pc: 7.5 compat entries + +RH-Author: Dr. David Alan Gilbert +Message-id: <20181214170211.14267-2-dgilbert@redhat.com> +Patchwork-id: 83515 +O-Subject: [RHEL8 qemu-kvm PATCH v3 1/6] pc: 7.5 compat entries +Bugzilla: 1655820 +RH-Acked-by: Laurent Vivier +RH-Acked-by: Cornelia Huck +RH-Acked-by: Thomas Huth + +From: "Dr. David Alan Gilbert" + +These are missing entries that are already in 7.6 from commits +64b860ac7db and 2f039646554 but are missing in the 3.1 rebase. + +Signed-off-by: Dr. David Alan Gilbert +Signed-off-by: Danilo C. L. de Paula +--- + include/hw/i386/pc.h | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h +index f8f35af..efcb208 100644 +--- a/include/hw/i386/pc.h ++++ b/include/hw/i386/pc.h +@@ -1008,6 +1008,22 @@ extern void igd_passthrough_isa_bridge_create(PCIBus *bus, uint16_t gpu_dev_id); + .driver = "Skylake-Server" "-" TYPE_X86_CPU,\ + .property = "clflushopt",\ + .value = "off",\ ++ },{ /* PC_RHEL7_5_COMPAT from PC_COMPAT_2_12 */ \ ++ .driver = TYPE_X86_CPU,\ ++ .property = "legacy-cache",\ ++ .value = "on",\ ++ },{ /* PC_RHEL7_5_COMPAT from PC_COMPAT_2_12 */ \ ++ .driver = TYPE_X86_CPU,\ ++ .property = "topoext",\ ++ .value = "off",\ ++ },{ /* PC_RHEL7_5_COMPAT from PC_COMPAT_2_12 */ \ ++ .driver = "EPYC-" TYPE_X86_CPU,\ ++ .property = "xlevel",\ ++ .value = stringify(0x8000000a),\ ++ },{ /* PC_RHEL7_5_COMPAT from PC_COMPAT_2_12 */ \ ++ .driver = "EPYC-IBPB-" TYPE_X86_CPU,\ ++ .property = "xlevel",\ ++ .value = stringify(0x8000000a),\ + }, + + +-- +1.8.3.1 + diff --git a/kvm-pc-Add-compat-for-pc-i440fx-rhel7.6.0-machine-type.patch b/kvm-pc-Add-compat-for-pc-i440fx-rhel7.6.0-machine-type.patch new file mode 100644 index 0000000..f1c639b --- /dev/null +++ b/kvm-pc-Add-compat-for-pc-i440fx-rhel7.6.0-machine-type.patch @@ -0,0 +1,41 @@ +From 5121d3ce3d4a7932e8b62b7eb4c70aed802c9abd Mon Sep 17 00:00:00 2001 +From: "Dr. David Alan Gilbert" +Date: Fri, 14 Dec 2018 17:02:09 +0000 +Subject: [PATCH 4/8] pc: Add compat for pc-i440fx-rhel7.6.0 machine type + +RH-Author: Dr. David Alan Gilbert +Message-id: <20181214170211.14267-5-dgilbert@redhat.com> +Patchwork-id: 83517 +O-Subject: [RHEL8 qemu-kvm PATCH v3 4/6] pc: Add compat for pc-i440fx-rhel7.6.0 machine type +Bugzilla: 1655820 +RH-Acked-by: Laurent Vivier +RH-Acked-by: Cornelia Huck +RH-Acked-by: Thomas Huth + +From: "Dr. David Alan Gilbert" + +Use the PC_RHEL7_6_COMPAT macro for our i440fx machine type. +We're not adding new RHEL8 i440 machine types at this time, so it's +just a matter of keeping the current i440fx machine types compatible. + +Signed-off-by: Dr. David Alan Gilbert +Signed-off-by: Danilo C. L. de Paula +--- + hw/i386/pc_piix.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c +index af9eb8c..efee5e7 100644 +--- a/hw/i386/pc_piix.c ++++ b/hw/i386/pc_piix.c +@@ -1186,6 +1186,7 @@ static void pc_machine_rhel760_options(MachineClass *m) + { + pc_machine_rhel7_options(m); + m->desc = "RHEL 7.6.0 PC (i440FX + PIIX, 1996)"; ++ SET_MACHINE_COMPAT(m, PC_RHEL7_6_COMPAT); + } + + DEFINE_PC_MACHINE(rhel760, "pc-i440fx-rhel7.6.0", pc_init_rhel760, +-- +1.8.3.1 + diff --git a/kvm-pc-Add-pc-q35-8.0.0-machine-type.patch b/kvm-pc-Add-pc-q35-8.0.0-machine-type.patch new file mode 100644 index 0000000..785dfda --- /dev/null +++ b/kvm-pc-Add-pc-q35-8.0.0-machine-type.patch @@ -0,0 +1,73 @@ +From b9db46a8df4b0eb25bf71205b188b903ff61936c Mon Sep 17 00:00:00 2001 +From: "Dr. David Alan Gilbert" +Date: Fri, 14 Dec 2018 17:02:10 +0000 +Subject: [PATCH 5/8] pc: Add pc-q35-8.0.0 machine type + +RH-Author: Dr. David Alan Gilbert +Message-id: <20181214170211.14267-6-dgilbert@redhat.com> +Patchwork-id: 83518 +O-Subject: [RHEL8 qemu-kvm PATCH v3 5/6] pc: Add pc-q35-8.0.0 machine type +Bugzilla: 1655820 +RH-Acked-by: Laurent Vivier +RH-Acked-by: Cornelia Huck +RH-Acked-by: Thomas Huth + +From: "Dr. David Alan Gilbert" + +Signed-off-by: Dr. David Alan Gilbert +Signed-off-by: Danilo C. L. de Paula +--- + hw/i386/pc_q35.c | 22 +++++++++++++++++++--- + 1 file changed, 19 insertions(+), 3 deletions(-) + +diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c +index 163546e..0b7223f 100644 +--- a/hw/i386/pc_q35.c ++++ b/hw/i386/pc_q35.c +@@ -431,8 +431,8 @@ DEFINE_Q35_MACHINE(v2_4, "pc-q35-2.4", NULL, + + /* Red Hat Enterprise Linux machine types */ + +-/* Options for the latest rhel7 q35 machine type */ +-static void pc_q35_machine_rhel7_options(MachineClass *m) ++/* Options for the latest rhel q35 machine type */ ++static void pc_q35_machine_rhel_options(MachineClass *m) + { + PCMachineClass *pcmc = PC_MACHINE_CLASS(m); + pcmc->default_nic_model = "e1000e"; +@@ -446,6 +446,20 @@ static void pc_q35_machine_rhel7_options(MachineClass *m) + SET_MACHINE_COMPAT(m, PC_RHEL_COMPAT); + } + ++static void pc_q35_init_rhel800(MachineState *machine) ++{ ++ pc_q35_init(machine); ++} ++ ++static void pc_q35_machine_rhel800_options(MachineClass *m) ++{ ++ pc_q35_machine_rhel_options(m); ++ m->desc = "RHEL-8.0.0 PC (Q35 + ICH9, 2009)"; ++} ++ ++DEFINE_PC_MACHINE(q35_rhel800, "pc-q35-rhel8.0.0", pc_q35_init_rhel800, ++ pc_q35_machine_rhel800_options); ++ + static void pc_q35_init_rhel760(MachineState *machine) + { + pc_q35_init(machine); +@@ -453,8 +467,10 @@ static void pc_q35_init_rhel760(MachineState *machine) + + static void pc_q35_machine_rhel760_options(MachineClass *m) + { +- pc_q35_machine_rhel7_options(m); ++ pc_q35_machine_rhel800_options(m); ++ m->alias = NULL; + m->desc = "RHEL-7.6.0 PC (Q35 + ICH9, 2009)"; ++ SET_MACHINE_COMPAT(m, PC_RHEL7_6_COMPAT); + } + + DEFINE_PC_MACHINE(q35_rhel760, "pc-q35-rhel7.6.0", pc_q35_init_rhel760, +-- +1.8.3.1 + diff --git a/kvm-pc-Add-x-migrate-smi-count-off-to-PC_RHEL7_6_COMPAT.patch b/kvm-pc-Add-x-migrate-smi-count-off-to-PC_RHEL7_6_COMPAT.patch new file mode 100644 index 0000000..e328b9a --- /dev/null +++ b/kvm-pc-Add-x-migrate-smi-count-off-to-PC_RHEL7_6_COMPAT.patch @@ -0,0 +1,60 @@ +From f58ebc7e755e7baa122b906e061feb4de10bbe4c Mon Sep 17 00:00:00 2001 +From: "Dr. David Alan Gilbert" +Date: Fri, 14 Dec 2018 17:02:11 +0000 +Subject: [PATCH 6/8] pc: Add x-migrate-smi-count=off to PC_RHEL7_6_COMPAT + +RH-Author: Dr. David Alan Gilbert +Message-id: <20181214170211.14267-7-dgilbert@redhat.com> +Patchwork-id: 83514 +O-Subject: [RHEL8 qemu-kvm PATCH v3 6/6] pc: Add x-migrate-smi-count=off to PC_RHEL7_6_COMPAT +Bugzilla: 1655820 +RH-Acked-by: Laurent Vivier +RH-Acked-by: Cornelia Huck +RH-Acked-by: Thomas Huth + +From: "Dr. David Alan Gilbert" + +MSR_SMI_COUNT started being migrated in QEMU 2.12 and in the 2.12 +release this broke back migration to earlier versions; however +that didn't cause a problem on RHEL because it also relied on newer +kernel features that RHEL 7.* doesn't have. + +QEMU 3.0 got a fix (in PC_COMPAT_2_11) to fix the 2.12->earlier +breakage, but given the kernel dependency, it makes more sense +for us to tie it to 8.* machine types and keep the feature off for +all 7.* machine types. + +Signed-off-by: Dr. David Alan Gilbert +Signed-off-by: Danilo C. L. de Paula +--- + include/hw/i386/pc.h | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h +index 5533863..426a975 100644 +--- a/include/hw/i386/pc.h ++++ b/include/hw/i386/pc.h +@@ -1000,6 +1000,9 @@ extern void igd_passthrough_isa_bridge_create(PCIBus *bus, uint16_t gpu_dev_id); + + /* Similar to PC_COMPAT_3_0 + PC_COMPAT_2_12, but: + * all of the 2_12 stuff was already in 7.6 from bz 1481253 ++ * x-migrate-smi-count comes from PC_COMPAT_2_11 but ++ * is really tied to kernel version so keep it off on 7.x ++ * machine types irrespective of host. + */ + #define PC_RHEL7_6_COMPAT \ + HW_COMPAT_RHEL7_6 \ +@@ -1015,6 +1018,10 @@ extern void igd_passthrough_isa_bridge_create(PCIBus *bus, uint16_t gpu_dev_id); + .driver = "Skylake-Server-IBRS" "-" TYPE_X86_CPU,\ + .property = "pku",\ + .value = "off",\ ++ },{ /* PC_RHEL7_6_COMPAT from PC_COMPAT_2_11 */ \ ++ .driver = TYPE_X86_CPU,\ ++ .property = "x-migrate-smi-count",\ ++ .value = "off",\ + }, + + /* Similar to PC_COMPAT_2_11 + PC_COMPAT_2_10, but: +-- +1.8.3.1 + diff --git a/kvm-pc-PC_RHEL7_6_COMPAT.patch b/kvm-pc-PC_RHEL7_6_COMPAT.patch new file mode 100644 index 0000000..457ceaf --- /dev/null +++ b/kvm-pc-PC_RHEL7_6_COMPAT.patch @@ -0,0 +1,58 @@ +From 83fd182901d50d150416afaa1236c3b798b320e7 Mon Sep 17 00:00:00 2001 +From: "Dr. David Alan Gilbert" +Date: Fri, 14 Dec 2018 17:02:08 +0000 +Subject: [PATCH 3/8] pc: PC_RHEL7_6_COMPAT + +RH-Author: Dr. David Alan Gilbert +Message-id: <20181214170211.14267-4-dgilbert@redhat.com> +Patchwork-id: 83513 +O-Subject: [RHEL8 qemu-kvm PATCH v3 3/6] pc: PC_RHEL7_6_COMPAT +Bugzilla: 1655820 +RH-Acked-by: Laurent Vivier +RH-Acked-by: Cornelia Huck +RH-Acked-by: Thomas Huth + +From: "Dr. David Alan Gilbert" + +Add the PC_RHEL7_6_COMPAT macro derived from the 3.0 and 2.12 +upstream macros. + +Signed-off-by: Dr. David Alan Gilbert +Signed-off-by: Danilo C. L. de Paula +--- + include/hw/i386/pc.h | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h +index efcb208..5533863 100644 +--- a/include/hw/i386/pc.h ++++ b/include/hw/i386/pc.h +@@ -998,6 +998,25 @@ extern void igd_passthrough_isa_bridge_create(PCIBus *bus, uint16_t gpu_dev_id); + .value = "on",\ + }, + ++/* Similar to PC_COMPAT_3_0 + PC_COMPAT_2_12, but: ++ * all of the 2_12 stuff was already in 7.6 from bz 1481253 ++ */ ++#define PC_RHEL7_6_COMPAT \ ++ HW_COMPAT_RHEL7_6 \ ++ { /* PC_RHEL7_6_COMPAT from PC_COMPAT_3_0 */ \ ++ .driver = TYPE_X86_CPU,\ ++ .property = "x-hv-synic-kvm-only",\ ++ .value = "on",\ ++ },{ /* PC_RHEL7_6_COMPAT from PC_COMPAT_3_0 */ \ ++ .driver = "Skylake-Server" "-" TYPE_X86_CPU,\ ++ .property = "pku",\ ++ .value = "off",\ ++ },{ /* PC_RHEL7_6_COMPAT from PC_COMPAT_3_0 */ \ ++ .driver = "Skylake-Server-IBRS" "-" TYPE_X86_CPU,\ ++ .property = "pku",\ ++ .value = "off",\ ++ }, ++ + /* Similar to PC_COMPAT_2_11 + PC_COMPAT_2_10, but: + * - x-hv-max-vps was backported to 7.5 + * - x-pci-hole64-fix was backported to 7.5 +-- +1.8.3.1 + diff --git a/qemu-kvm.spec b/qemu-kvm.spec index 19362a2..7990bc6 100644 --- a/qemu-kvm.spec +++ b/qemu-kvm.spec @@ -68,7 +68,7 @@ Obsoletes: %1-rhev Summary: QEMU is a machine emulator and virtualizer Name: qemu-kvm Version: 3.1.0 -Release: 1%{?dist} +Release: 2%{?dist} # Epoch because we pushed a qemu-1.0 package. AIUI this can't ever be dropped Epoch: 15 License: GPLv2 and GPLv2+ and CC-BY @@ -120,6 +120,20 @@ Patch0016: 0016-Add-support-for-simpletrace.patch Patch0017: 0017-Use-qemu-kvm-in-documentation-instead-of-qemu-system.patch Patch0018: 0018-usb-xhci-Fix-PCI-capability-order.patch Patch0019: 0019-virtio-scsi-Reject-scsi-cd-if-data-plane-enabled-RHE.patch +# For bz#1655820 - Can't migarate between rhel8 and rhel7 when guest has device "video" +Patch20: kvm-pc-7.5-compat-entries.patch +# For bz#1655820 - Can't migarate between rhel8 and rhel7 when guest has device "video" +Patch21: kvm-compat-Generic-HW_COMPAT_RHEL7_6.patch +# For bz#1655820 - Can't migarate between rhel8 and rhel7 when guest has device "video" +Patch22: kvm-pc-PC_RHEL7_6_COMPAT.patch +# For bz#1655820 - Can't migarate between rhel8 and rhel7 when guest has device "video" +Patch23: kvm-pc-Add-compat-for-pc-i440fx-rhel7.6.0-machine-type.patch +# For bz#1655820 - Can't migarate between rhel8 and rhel7 when guest has device "video" +Patch24: kvm-pc-Add-pc-q35-8.0.0-machine-type.patch +# For bz#1655820 - Can't migarate between rhel8 and rhel7 when guest has device "video" +Patch25: kvm-pc-Add-x-migrate-smi-count-off-to-PC_RHEL7_6_COMPAT.patch +# For bz#1659604 - 8->7 migration failed: qemu-kvm: error: failed to set MSR 0x4b564d02 to 0x27fc13285 +Patch26: kvm-clear-out-KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT-for.patch BuildRequires: zlib-devel BuildRequires: glib2-devel @@ -242,7 +256,12 @@ Requires: qemu-img = %{epoch}:%{version}-%{release} %ifarch %{ix86} x86_64 Requires: seabios-bin >= 1.10.2-1 Requires: sgabios-bin +Requires: edk2-ovmf %endif +%ifarch aarch64 +Requires: edk2-aarch64 +%endif + %ifnarch aarch64 s390x Requires: seavgabios-bin >= 1.10.2-1 Requires: ipxe-roms-qemu >= 20170123-1 @@ -962,6 +981,22 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \ %changelog +* Fri Dec 21 2018 Danilo Cesar Lemes de Paula - 3.1.0-2.el8 +- kvm-pc-7.5-compat-entries.patch [bz#1655820] +- kvm-compat-Generic-HW_COMPAT_RHEL7_6.patch [bz#1655820] +- kvm-pc-PC_RHEL7_6_COMPAT.patch [bz#1655820] +- kvm-pc-Add-compat-for-pc-i440fx-rhel7.6.0-machine-type.patch [bz#1655820] +- kvm-pc-Add-pc-q35-8.0.0-machine-type.patch [bz#1655820] +- kvm-pc-Add-x-migrate-smi-count-off-to-PC_RHEL7_6_COMPAT.patch [bz#1655820] +- kvm-clear-out-KVM_ASYNC_PF_DELIVERY_AS_PF_VMEXIT-for.patch [bz#1659604] +- kvm-Add-edk2-Requires-to-qemu-kvm.patch [bz#1660208] +- Resolves: bz#1655820 + (Can't migarate between rhel8 and rhel7 when guest has device "video") +- Resolves: bz#1659604 + (8->7 migration failed: qemu-kvm: error: failed to set MSR 0x4b564d02 to 0x27fc13285) +- Resolves: bz#1660208 + (qemu-kvm: Should depend on the architecture-appropriate guest firmware) + * Thu Dec 13 2018 Danilo Cesar Lemes de Paula - 3.1.0-1.el8 - Rebase to qemu-kvm 3.1.0