Message ID | 1378211609-16121-2-git-send-email-pbonzini@redhat.com |
---|---|
State | New |
Headers | show |
On Tue, Sep 03, 2013 at 02:32:52PM +0200, Paolo Bonzini wrote: > This becomes important when undoing realize's initializations is split > in two places (unrealize and exit). > > The way to fix this could be to split realize further into "alloc" (done > once) and "realize" (can be undone). Or alloc + init ? > > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> > --- > include/hw/qdev-core.h | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h > index 46972f4..d840f06 100644 > --- a/include/hw/qdev-core.h > +++ b/include/hw/qdev-core.h > @@ -86,6 +86,10 @@ struct VMStateDescription; > * object_initialize() in their own #TypeInfo.instance_init and forward the > * realization events appropriately. > * > + * Note that for now it is not possible to unrealize a device and then > + * re-realize it. While this may change in the future, it is a valid > + * assumption for now. > + * > * The @init callback is considered private to a particular bus implementation > * (immediate abstract child types of TYPE_DEVICE). Derived leaf types set an > * "init" callback on their parent class instead. > -- > 1.8.3.1 >
diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index 46972f4..d840f06 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -86,6 +86,10 @@ struct VMStateDescription; * object_initialize() in their own #TypeInfo.instance_init and forward the * realization events appropriately. * + * Note that for now it is not possible to unrealize a device and then + * re-realize it. While this may change in the future, it is a valid + * assumption for now. + * * The @init callback is considered private to a particular bus implementation * (immediate abstract child types of TYPE_DEVICE). Derived leaf types set an * "init" callback on their parent class instead.
This becomes important when undoing realize's initializations is split in two places (unrealize and exit). The way to fix this could be to split realize further into "alloc" (done once) and "realize" (can be undone). Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> --- include/hw/qdev-core.h | 4 ++++ 1 file changed, 4 insertions(+)