Message ID | 20231020090731.28701-11-quintela@redhat.com |
---|---|
State | New |
Headers | show |
Series | migration: Check for duplicates on vmstate_register() | expand |
On 10/20/23 05:07, Juan Quintela wrote: > Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Stefan Berger <stefanb@linux.ibm.com> > --- > docs/devel/migration.rst | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/docs/devel/migration.rst b/docs/devel/migration.rst > index c3e1400c0c..bfd8710c95 100644 > --- a/docs/devel/migration.rst > +++ b/docs/devel/migration.rst > @@ -165,13 +165,17 @@ An example (from hw/input/pckbd.c) > } > }; > > -We are declaring the state with name "pckbd". > -The ``version_id`` is 3, and the fields are 4 uint8_t in a KBDState structure. > -We registered this with: > +We are declaring the state with name "pckbd". The ``version_id`` is > +3, and there are 4 uint8_t fields in the KBDState structure. We > +registered this ``VMSTATEDescription`` with one of the following > +functions. The first one will generate a device ``instance_id`` > +different for each registration. Use the second one if you already > +have an id that is different for each instance of the device: > > .. code:: c > > - vmstate_register(NULL, 0, &vmstate_kbd, s); > + vmstate_register_any(NULL, &vmstate_kbd, s); > + vmstate_register(NULL, instance_id, &vmstate_kbd, s); > > For devices that are ``qdev`` based, we can register the device in the class > init function:
diff --git a/docs/devel/migration.rst b/docs/devel/migration.rst index c3e1400c0c..bfd8710c95 100644 --- a/docs/devel/migration.rst +++ b/docs/devel/migration.rst @@ -165,13 +165,17 @@ An example (from hw/input/pckbd.c) } }; -We are declaring the state with name "pckbd". -The ``version_id`` is 3, and the fields are 4 uint8_t in a KBDState structure. -We registered this with: +We are declaring the state with name "pckbd". The ``version_id`` is +3, and there are 4 uint8_t fields in the KBDState structure. We +registered this ``VMSTATEDescription`` with one of the following +functions. The first one will generate a device ``instance_id`` +different for each registration. Use the second one if you already +have an id that is different for each instance of the device: .. code:: c - vmstate_register(NULL, 0, &vmstate_kbd, s); + vmstate_register_any(NULL, &vmstate_kbd, s); + vmstate_register(NULL, instance_id, &vmstate_kbd, s); For devices that are ``qdev`` based, we can register the device in the class init function:
Signed-off-by: Juan Quintela <quintela@redhat.com> --- docs/devel/migration.rst | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-)