aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2024-12-18 07:42:41 -0600
committerPaolo Bonzini <pbonzini@redhat.com>2024-12-19 19:33:37 +0100
commit0017f5713a20a2b6f42c3d5c255c4ab066cdcd87 (patch)
tree4e2c7bf3e48f07438138d51aafb51b0bba18eeaa
parentcb9f4b28ee115f14f336a4a87c593fa1685e42df (diff)
downloadqemu-0017f5713a20a2b6f42c3d5c255c4ab066cdcd87.zip
qemu-0017f5713a20a2b6f42c3d5c255c4ab066cdcd87.tar.gz
qemu-0017f5713a20a2b6f42c3d5c255c4ab066cdcd87.tar.bz2
migration: Use device_class_set_props_n
Export the migration_properties array size from options.c; use that to feed device_class_set_props_n. We must remove DEFINE_PROP_END_OF_LIST so the count is correct. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Tested-by: Lei Yang <leiyang@redhat.com> Link: https://lore.kernel.org/r/20241218134251.4724-15-richard.henderson@linaro.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--migration/migration.c3
-rw-r--r--migration/options.c2
-rw-r--r--migration/options.h1
3 files changed, 4 insertions, 2 deletions
diff --git a/migration/migration.c b/migration/migration.c
index 6b3b85d..d23d392 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -3822,7 +3822,8 @@ static void migration_class_init(ObjectClass *klass, void *data)
DeviceClass *dc = DEVICE_CLASS(klass);
dc->user_creatable = false;
- (device_class_set_props)(dc, migration_properties);
+ device_class_set_props_n(dc, migration_properties,
+ migration_properties_count);
}
static void migration_instance_finalize(Object *obj)
diff --git a/migration/options.c b/migration/options.c
index 24cc847..70ff565 100644
--- a/migration/options.c
+++ b/migration/options.c
@@ -196,8 +196,8 @@ const Property migration_properties[] = {
MIGRATION_CAPABILITY_SWITCHOVER_ACK),
DEFINE_PROP_MIG_CAP("x-dirty-limit", MIGRATION_CAPABILITY_DIRTY_LIMIT),
DEFINE_PROP_MIG_CAP("mapped-ram", MIGRATION_CAPABILITY_MAPPED_RAM),
- DEFINE_PROP_END_OF_LIST(),
};
+const size_t migration_properties_count = ARRAY_SIZE(migration_properties);
bool migrate_auto_converge(void)
{
diff --git a/migration/options.h b/migration/options.h
index a360f93..762be4e 100644
--- a/migration/options.h
+++ b/migration/options.h
@@ -21,6 +21,7 @@
/* migration properties */
extern const Property migration_properties[];
+extern const size_t migration_properties_count;
/* capabilities */