diff options
author | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2017-09-25 12:29:12 +0100 |
---|---|---|
committer | Dr. David Alan Gilbert <dgilbert@redhat.com> | 2017-09-27 11:35:59 +0100 |
commit | 44b1ff319c4781c7ab13f7e119b3114a1e6a52e2 (patch) | |
tree | b8e8aa9c74c890808876e7a5969b69ac25c1930a /migration | |
parent | 9ac78b6171bec47083a9b6ce88dc1f114caea2f9 (diff) |
migration: pre_save return int
Modify the pre_save method on VMStateDescription to return an int
rather than void so that it potentially can fail.
Changed zillions of devices to make them return 0; the only
case I've made it return non-0 is hw/intc/s390_flic_kvm.c that already
had an error_report/return case.
Note: If you add an error exit in your pre_save you must emit
an error_report to say why.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Message-Id: <20170925112917.21340-2-dgilbert@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'migration')
-rw-r--r-- | migration/colo-comm.c | 4 | ||||
-rw-r--r-- | migration/global_state.c | 4 | ||||
-rw-r--r-- | migration/savevm.c | 4 |
3 files changed, 9 insertions, 3 deletions
diff --git a/migration/colo-comm.c b/migration/colo-comm.c index b61aa19a38..df26e4dfe7 100644 --- a/migration/colo-comm.c +++ b/migration/colo-comm.c @@ -34,11 +34,13 @@ COLOMode get_colo_mode(void) } } -static void colo_info_pre_save(void *opaque) +static int colo_info_pre_save(void *opaque) { COLOInfo *s = opaque; s->colo_requested = migrate_colo_enabled(); + + return 0; } static bool colo_info_need(void *opaque) diff --git a/migration/global_state.c b/migration/global_state.c index dfdaf63910..8e8ab5c51e 100644 --- a/migration/global_state.c +++ b/migration/global_state.c @@ -101,12 +101,14 @@ static int global_state_post_load(void *opaque, int version_id) return 0; } -static void global_state_pre_save(void *opaque) +static int global_state_pre_save(void *opaque) { GlobalState *s = opaque; trace_migrate_global_state_pre_save((char *)s->runstate); s->size = strlen((char *)s->runstate) + 1; + + return 0; } static const VMStateDescription vmstate_globalstate = { diff --git a/migration/savevm.c b/migration/savevm.c index 2478352baf..e9feade46a 100644 --- a/migration/savevm.c +++ b/migration/savevm.c @@ -312,7 +312,7 @@ static SaveState savevm_state = { .global_section_id = 0, }; -static void configuration_pre_save(void *opaque) +static int configuration_pre_save(void *opaque) { SaveState *state = opaque; const char *current_name = MACHINE_GET_CLASS(current_machine)->name; @@ -320,6 +320,8 @@ static void configuration_pre_save(void *opaque) state->len = strlen(current_name); state->name = current_name; state->target_page_bits = qemu_target_page_bits(); + + return 0; } static int configuration_pre_load(void *opaque) |