On Tue, Sep 09, 2014 at 03:28:43PM +0200, Paolo Bonzini wrote:
> Il 09/09/2014 15:26, Juan Quintela ha scritto:
> > Paolo Bonzini <pbonz...@redhat.com> wrote:
> >> From: Pavel Dovgalyuk <pavel.dovga...@ispras.ru>
> >>
> >> VMState added by this patch preserves correct
> >> loading of the PC speaker device state.
> >>
> >> This breaks migration to 2.1 and earlier.
> >>
> >> Signed-off-by: Pavel Dovgalyuk <pavel.dovga...@ispras.ru>
> >> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
> > 
> > This should only be added for new machine types, right?
> 
> We never did that in the past.  Maybe downstream.
> 
> Paolo

That's not too hard: we need two types that only
differ in the vmstate.
Use the correct one to create the device depending
on the pc type.

Put in that light, we definitely did create new
devices while keeping old ones around for
compatibility.


> > Later, Juan.
> > 
> >> @@ -192,6 +203,7 @@ static void pcspk_class_initfn(ObjectClass *klass, 
> >> void *data)
> >>  
> >>      dc->realize = pcspk_realizefn;
> >>      set_bit(DEVICE_CATEGORY_SOUND, dc->categories);
> >> +    dc->vmsd = &vmstate_spk;
> >>      dc->props = pcspk_properties;
> >>      /* Reason: pointer property "pit", realize sets global pcspk_state */
> >>      dc->cannot_instantiate_with_device_add_yet = true;
> 

Reply via email to