# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1206537333 0
# Node ID f471ea3665469a0610cec53c1931c1d85d54efb7
# Parent 6327432958e6fa48d9c29cf14fce055618ee629a
ioemu: save IDE write cache flag.
Signed-off-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxxx>
---
tools/ioemu/hw/ide.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff -r 6327432958e6 -r f471ea366546 tools/ioemu/hw/ide.c
--- a/tools/ioemu/hw/ide.c Wed Mar 26 13:15:00 2008 +0000
+++ b/tools/ioemu/hw/ide.c Wed Mar 26 13:15:33 2008 +0000
@@ -2723,6 +2723,7 @@ static void pci_ide_save(QEMUFile* f, vo
if (s->identify_set) {
qemu_put_buffer(f, (const uint8_t *)s->identify_data, 512);
}
+ qemu_put_8s(f, &s->write_cache);
qemu_put_8s(f, &s->feature);
qemu_put_8s(f, &s->error);
qemu_put_be32s(f, &s->nsector);
@@ -2749,7 +2750,7 @@ static int pci_ide_load(QEMUFile* f, voi
PCIIDEState *d = opaque;
int ret, i;
- if (version_id != 1)
+ if (version_id != 1 && version_id != 2)
return -EINVAL;
ret = pci_device_load(&d->dev, f);
if (ret < 0)
@@ -2780,6 +2781,8 @@ static int pci_ide_load(QEMUFile* f, voi
if (s->identify_set) {
qemu_get_buffer(f, (uint8_t *)s->identify_data, 512);
}
+ if (version_id >= 2)
+ qemu_get_8s(f, &s->write_cache);
qemu_get_8s(f, &s->feature);
qemu_get_8s(f, &s->error);
qemu_get_be32s(f, &s->nsector);
@@ -2854,7 +2857,7 @@ void pci_piix_ide_init(PCIBus *bus, Bloc
buffered_pio_init();
- register_savevm("ide", 0, 1, pci_ide_save, pci_ide_load, d);
+ register_savevm("ide", 0, 2, pci_ide_save, pci_ide_load, d);
}
/* hd_table must contain 4 block drivers */
@@ -2895,7 +2898,7 @@ void pci_piix3_ide_init(PCIBus *bus, Blo
buffered_pio_init();
- register_savevm("ide", 0, 1, pci_ide_save, pci_ide_load, d);
+ register_savevm("ide", 0, 2, pci_ide_save, pci_ide_load, d);
}
/***********************************************************/
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|