Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 3160499aacb81f6735941eb4c372d87a > files > 115

kvm-83-164.el5_5.30.src.rpm

From a82c8e4d836121cec49ccd9031438a3110f2e192 Mon Sep 17 00:00:00 2001
From: Juan Quintela <quintela@redhat.com>
Date: Tue, 26 Jan 2010 12:59:26 -0200
Subject: [PATCH 1/2] Fix cpu versioning

RH-Author: Juan Quintela <quintela@redhat.com>
Message-id: <1264510766-19291-1-git-send-email-quintela@redhat.com>
Patchwork-id: 6622
O-Subject: [PATCH] Fix cpu versioning
Bugzilla: 557327
RH-Acked-by: Marcelo Tosatti <mtosatti@redhat.com>
RH-Acked-by: Kevin Wolf <kwolf@redhat.com>
RH-Acked-by: Eduardo Habkost <ehabkost@redhat.com>

We colapsed two changes on cpu version_id 8, but then we backport
to 5.4.4 only one of the changes.  That made migration fail.

Just split the change back and update cpu version for
RHEL5.5 to 9

bugzilla: 557327
upstream status: Upstream don't have this mechanism

Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 qemu/hw/pc.c               |    1 +
 qemu/target-i386/cpu.h     |    2 +-
 qemu/target-i386/machine.c |    6 ++++--
 3 files changed, 6 insertions(+), 3 deletions(-)

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
 qemu/hw/pc.c               |    1 +
 qemu/target-i386/cpu.h     |    2 +-
 qemu/target-i386/machine.c |    6 ++++--
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/qemu/hw/pc.c b/qemu/hw/pc.c
index 8d654e8..9f8a50a 100644
--- a/qemu/hw/pc.c
+++ b/qemu/hw/pc.c
@@ -1301,6 +1301,7 @@ QEMUMachine rhel544_machine = {
     .ram_require = VGA_RAM_SIZE + PC_MAX_BIOS_SIZE,
     .max_cpus = 255,
     .devices = (DeviceVersion []) {
+		{ .name = "cpu", .version_id = 8 },
 		{ .name = "ide", .version_id =  3},
 		{ .name = "virtio-blk", .version_id =  2},
 		{ .name = "qxl", .version_id =  3},
diff --git a/qemu/target-i386/cpu.h b/qemu/target-i386/cpu.h
index e1a7fc4..4848e37 100644
--- a/qemu/target-i386/cpu.h
+++ b/qemu/target-i386/cpu.h
@@ -815,7 +815,7 @@ static inline int cpu_get_time_fast(void)
 #define cpu_signal_handler cpu_x86_signal_handler
 #define cpu_list x86_cpu_list
 
-#define CPU_SAVE_VERSION 8
+#define CPU_SAVE_VERSION 9
 
 /* MMU modes definitions */
 #define MMU_MODE0_SUFFIX _kernel
diff --git a/qemu/target-i386/machine.c b/qemu/target-i386/machine.c
index a72f05f..36e4cc6 100644
--- a/qemu/target-i386/machine.c
+++ b/qemu/target-i386/machine.c
@@ -155,7 +155,8 @@ void cpu_save(QEMUFile *f, void *opaque, int version_id)
     if (version_id >= 8) {
         qemu_put_be64s(f, &env->system_time_msr);
         qemu_put_be64s(f, &env->wall_clock_msr);
-
+    }
+    if (version_id >= 9) {
         qemu_put_8s(f, &env->soft_interrupt);
         qemu_put_8s(f, &env->nmi_injected);
         qemu_put_8s(f, &env->nmi_pending);
@@ -353,7 +354,8 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id)
     if (version_id >= 8) {
         qemu_get_be64s(f, &env->system_time_msr);
         qemu_get_be64s(f, &env->wall_clock_msr);
-
+    }
+    if (version_id >= 9) {
         qemu_get_8s(f, &env->soft_interrupt);
         qemu_get_8s(f, &env->nmi_injected);
         qemu_get_8s(f, &env->nmi_pending);
-- 
1.6.3.rc4.29.g8146