[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 02/12] hw/pl110.c: Add post-load hook to invalidate
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH 02/12] hw/pl110.c: Add post-load hook to invalidate display |
Date: |
Wed, 4 Jan 2012 13:56:16 +0000 |
Add a post-load hook which invalidates the display. In particular, if we
don't do this and the display size we've just reloaded is larger than
the default then we will segfault trying to read off the end of the buffer.
Signed-off-by: Peter Maydell <address@hidden>
---
hw/pl110.c | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/hw/pl110.c b/hw/pl110.c
index 303a9bc..0e1f415 100644
--- a/hw/pl110.c
+++ b/hw/pl110.c
@@ -60,10 +60,13 @@ typedef struct {
qemu_irq irq;
} pl110_state;
+static int vmstate_pl110_post_load(void *opaque, int version_id);
+
static const VMStateDescription vmstate_pl110 = {
.name = "pl110",
.version_id = 2,
.minimum_version_id = 1,
+ .post_load = vmstate_pl110_post_load,
.fields = (VMStateField[]) {
VMSTATE_INT32(version, pl110_state),
VMSTATE_UINT32_ARRAY(timing, pl110_state, 4),
@@ -430,6 +433,14 @@ static void pl110_mux_ctrl_set(void *opaque, int line, int
level)
s->mux_ctrl = level;
}
+static int vmstate_pl110_post_load(void *opaque, int version_id)
+{
+ pl110_state *s = opaque;
+ /* Make sure we redraw, and at the right size */
+ pl110_invalidate_display(s);
+ return 0;
+}
+
static int pl110_init(SysBusDevice *dev)
{
pl110_state *s = FROM_SYSBUS(pl110_state, dev);
--
1.7.1
- [Qemu-devel] [PULL 00/12] arm-devs queue, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 06/12] hw/omap1.c: Separate dpll_ctl from omap_mpu_state, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 11/12] arm: add dummy gic security registers, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 12/12] add L2x0/PL310 cache controller device, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 09/12] arm: add missing scu registers, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 02/12] hw/pl110.c: Add post-load hook to invalidate display,
Peter Maydell <=
- [Qemu-devel] [PATCH 08/12] hw/omap_gpmc: Fix region map/unmap when configuring prefetch engine, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 10/12] arm: Set frequencies for arm_timer, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 04/12] hw/omap1.c: Separate PWL from omap_mpu_state, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 01/12] hw/pl181.c: Add save/load support, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 03/12] hw/omap1.c: omap_mpuio_init() need not be public, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 05/12] hw/omap1.c: Separate PWT from omap_mpu_state, Peter Maydell, 2012/01/04
- [Qemu-devel] [PATCH 07/12] hw/omap1.c: Drop unused includes, Peter Maydell, 2012/01/04
- Re: [Qemu-devel] [PULL 00/12] arm-devs queue, Anthony Liguori, 2012/01/04