diff options
-rw-r--r-- | hw/apic.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -745,6 +745,8 @@ static void apic_save(QEMUFile *f, void *opaque) qemu_put_be32s(f, &s->initial_count); qemu_put_be64s(f, &s->initial_count_load_time); qemu_put_be64s(f, &s->next_time); + + qemu_put_timer(f, s->timer); } static int apic_load(QEMUFile *f, void *opaque, int version_id) @@ -752,7 +754,7 @@ static int apic_load(QEMUFile *f, void *opaque, int version_id) APICState *s = opaque; int i; - if (version_id != 1) + if (version_id > 2) return -EINVAL; /* XXX: what if the base changes? (registered memory regions) */ @@ -779,6 +781,9 @@ static int apic_load(QEMUFile *f, void *opaque, int version_id) qemu_get_be32s(f, &s->initial_count); qemu_get_be64s(f, &s->initial_count_load_time); qemu_get_be64s(f, &s->next_time); + + if (version_id >= 2) + qemu_get_timer(f, s->timer); return 0; } |