aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
Diffstat (limited to 'hw')
-rw-r--r--hw/s390x/s390-stattrib.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/hw/s390x/s390-stattrib.c b/hw/s390x/s390-stattrib.c
index a1d2135a60..adf07ef312 100644
--- a/hw/s390x/s390-stattrib.c
+++ b/hw/s390x/s390-stattrib.c
@@ -365,22 +365,22 @@ static inline void s390_stattrib_set_migration_enabled(Object *obj, bool value,
s->migration_enabled = value;
}
+static SaveVMHandlers savevm_s390_stattrib_handlers = {
+ .save_setup = cmma_save_setup,
+ .save_live_iterate = cmma_save_iterate,
+ .save_live_complete_precopy = cmma_save_complete,
+ .save_live_pending = cmma_save_pending,
+ .save_cleanup = cmma_save_cleanup,
+ .load_state = cmma_load,
+ .is_active = cmma_active,
+};
+
static void s390_stattrib_instance_init(Object *obj)
{
S390StAttribState *sas = S390_STATTRIB(obj);
- SaveVMHandlers *ops;
-
- /* ops will always be freed by qemu when unregistering */
- ops = g_new0(SaveVMHandlers, 1);
-
- ops->save_setup = cmma_save_setup;
- ops->save_live_iterate = cmma_save_iterate;
- ops->save_live_complete_precopy = cmma_save_complete;
- ops->save_live_pending = cmma_save_pending;
- ops->save_cleanup = cmma_save_cleanup;
- ops->load_state = cmma_load;
- ops->is_active = cmma_active;
- register_savevm_live(NULL, TYPE_S390_STATTRIB, 0, 0, ops, sas);
+
+ register_savevm_live(NULL, TYPE_S390_STATTRIB, 0, 0,
+ &savevm_s390_stattrib_handlers, sas);
object_property_add_bool(obj, "migration-enabled",
s390_stattrib_get_migration_enabled,