mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
qom: Allow optional sugar props
Global properties have an @optional field, which allows to apply a given property to a given type even if one of its subclasses doesn't support it. This is especially used in the compat code when dealing with the "disable-modern" and "disable-legacy" properties and the "virtio-pci" type. Allow object_register_sugar_prop() to set this field as well. Signed-off-by: Greg Kurz <groug@kaod.org> Message-Id: <159738953558.377274.16617742952571083440.stgit@bahia.lan> Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Reviewed-by: Eduardo Habkost <ehabkost@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This commit is contained in:
parent
5b19cb63d9
commit
a8dc82ce82
4 changed files with 18 additions and 9 deletions
17
softmmu/vl.c
17
softmmu/vl.c
|
@ -1663,16 +1663,20 @@ static int machine_set_property(void *opaque,
|
|||
return 0;
|
||||
}
|
||||
if (g_str_equal(qom_name, "igd-passthru")) {
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("xen"), qom_name, value);
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("xen"), qom_name, value,
|
||||
false);
|
||||
return 0;
|
||||
}
|
||||
if (g_str_equal(qom_name, "kvm-shadow-mem")) {
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("kvm"), qom_name, value);
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("kvm"), qom_name, value,
|
||||
false);
|
||||
return 0;
|
||||
}
|
||||
if (g_str_equal(qom_name, "kernel-irqchip")) {
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("kvm"), qom_name, value);
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("whpx"), qom_name, value);
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("kvm"), qom_name, value,
|
||||
false);
|
||||
object_register_sugar_prop(ACCEL_CLASS_NAME("whpx"), qom_name, value,
|
||||
false);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -2298,9 +2302,10 @@ static void qemu_process_sugar_options(void)
|
|||
|
||||
val = g_strdup_printf("%d",
|
||||
(uint32_t) qemu_opt_get_number(qemu_find_opts_singleton("smp-opts"), "cpus", 1));
|
||||
object_register_sugar_prop("memory-backend", "prealloc-threads", val);
|
||||
object_register_sugar_prop("memory-backend", "prealloc-threads", val,
|
||||
false);
|
||||
g_free(val);
|
||||
object_register_sugar_prop("memory-backend", "prealloc", "on");
|
||||
object_register_sugar_prop("memory-backend", "prealloc", "on", false);
|
||||
}
|
||||
|
||||
if (watchdog) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue