diff mbox

[STABLE] ide: fix migration bug

Message ID 1251470255-1753-1-git-send-email-kraxel@redhat.com
State Superseded
Headers show

Commit Message

Gerd Hoffmann Aug. 28, 2009, 2:37 p.m. UTC
ide_cmd_write() sets cmd field for both master and slave interface.
Do the same when loading state.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/ide.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/hw/ide.c b/hw/ide.c
index 1e38ae3..99d8016 100644
--- a/hw/ide.c
+++ b/hw/ide.c
@@ -3271,6 +3271,7 @@  static int pci_ide_load(QEMUFile* f, void *opaque, int version_id)
         qemu_get_8s(f, &s->cmd);
         qemu_get_8s(f, &drive1_selected);
         s->cur_drive = &d->ide_if[i * 2 + (drive1_selected != 0)];
+        s[1].cmd = s[0].cmd;
     }
 
     /* per IDE drive data */
@@ -3755,6 +3756,7 @@  static int pmac_ide_load(QEMUFile *f, void *opaque, int version_id)
     qemu_get_8s(f, &s->cmd);
     qemu_get_8s(f, &drive1_selected);
     s->cur_drive = &s[(drive1_selected != 0)];
+    s[1].cmd = s[0].cmd;
 
     /* per IDE drive data */
     for(i = 0; i < 2; i++) {
@@ -4196,6 +4198,7 @@  static int md_load(QEMUFile *f, void *opaque, int version_id)
     qemu_get_8s(f, &s->ide->cmd);
     qemu_get_8s(f, &drive1_selected);
     s->ide->cur_drive = &s->ide[(drive1_selected != 0)];
+    s->ide[1].cmd = s->ide[0].cmd;
 
     for (i = 0; i < 2; i ++)
         ide_load(f, &s->ide[i], version_id);