On 18.09.2013, at 05:19, Christian Borntraeger wrote: > From: Heinz Graalfs <graa...@linux.vnet.ibm.com> > > This patch adds the necessary life migration pieces to the sclp code > by using vmstate_register. > > Signed-off-by: Heinz Graalfs <graa...@linux.vnet.ibm.com> > Signed-off-by: Christian Borntraeger <borntrae...@de.ibm.com> > --- > hw/char/sclpconsole.c | 19 ++++++++++++++++++- > 1 file changed, 18 insertions(+), 1 deletion(-) > > diff --git a/hw/char/sclpconsole.c b/hw/char/sclpconsole.c > index fd270be..856230f 100644 > --- a/hw/char/sclpconsole.c > +++ b/hw/char/sclpconsole.c > @@ -197,9 +197,26 @@ static void trigger_ascii_console_data(void *opaque, int > n, int level) > sclp_service_interrupt(0); > } > > +static const VMStateDescription vmstate_sclpconsole = { > + .name = "sclpconsole", > + .version_id = 0, > + .minimum_version_id = 0, > + .minimum_version_id_old = 0, > + .fields = (VMStateField[]) { > + VMSTATE_BOOL(event.event_pending, SCLPConsole), > + VMSTATE_UINT8_ARRAY(iov, SCLPConsole, SIZE_BUFFER_VT220), > + VMSTATE_UINT32(iov_sclp, SCLPConsole), > + VMSTATE_UINT32(iov_bs, SCLPConsole), > + VMSTATE_UINT32(iov_data_len, SCLPConsole), > + VMSTATE_UINT32(iov_sclp_rest, SCLPConsole), > + VMSTATE_END_OF_LIST() > + } > +}; > + > /* qemu object creation and initialization functions */ > > /* tell character layer our call-back functions */ > + > static int console_init(SCLPEvent *event) > { > static bool console_available; > @@ -223,7 +240,7 @@ static int console_init(SCLPEvent *event) > scon->irq_read_vt220 = *qemu_allocate_irqs(trigger_ascii_console_data, > NULL, 1); > > - return 0; > + return vmstate_register(NULL, 0, &vmstate_sclpconsole, scon);
If I understand Anthony correctly a vmstate_register() call means you didn't convert something to QOM correctly :). Alex