@@ -112,7 +112,6 @@ typedef struct {
const VMStateInfo *info;
enum VMStateFlags flags;
const VMStateDescription *vmsd;
- int version_id;
bool (*field_exists)(void *opaque, int version_id);
} VMStateField;
@@ -74,10 +74,7 @@ int vmstate_load_state(QEMUFile *f, const VMStateDescription *vmsd,
}
}
while (field->name) {
- if ((field->field_exists &&
- field->field_exists(opaque, version_id)) ||
- (!field->field_exists &&
- field->version_id <= version_id)) {
+ if (!field->field_exists || field->field_exists(opaque, version_id)) {
void *base_addr = vmstate_base_addr(opaque, field);
int i, n_elems = vmstate_n_elems(opaque, field);
int size = vmstate_size(opaque, field);
And after all this work, fields don't have version_id anymore. Signed-off-by: Juan Quintela <quintela@redhat.com> --- include/migration/vmstate.h | 1 - vmstate.c | 5 +---- 2 files changed, 1 insertion(+), 5 deletions(-)