migration: Add canary to VMSTATE_END_OF_LIST
commit89c568489122de996920b760c34e81b925cc8181
authorDr. David Alan Gilbert <dgilbert@redhat.com>
Thu, 13 Jan 2022 19:44:51 +0000 (13 19:44 +0000)
committerJuan Quintela <quintela@redhat.com>
Mon, 6 Feb 2023 18:22:56 +0000 (6 19:22 +0100)
tree0e850cd4c9cc0626d856c70aa97102f1d7d7429b
parent74ecf6ac2b7e53cf480f1f2dc7a3af41525fb588
migration: Add canary to VMSTATE_END_OF_LIST

We fairly regularly forget VMSTATE_END_OF_LIST markers off descriptions;
given that the current check is only for ->name being NULL, sometimes
we get unlucky and the code apparently works and no one spots the error.

Explicitly add a flag, VMS_END that should be set, and assert it is
set during the traversal.

Note: This can't go in until we update the copy of vmstate.h in slirp.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
include/migration/vmstate.h
migration/savevm.c
migration/vmstate.c