mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
kvm: convert "-machine kernel_irqchip" to an accelerator property
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
4376c40ded
commit
11bc4a13d1
5 changed files with 62 additions and 73 deletions
|
@ -178,44 +178,6 @@ GlobalProperty hw_compat_2_1[] = {
|
|||
};
|
||||
const size_t hw_compat_2_1_len = G_N_ELEMENTS(hw_compat_2_1);
|
||||
|
||||
static void machine_set_kernel_irqchip(Object *obj, Visitor *v,
|
||||
const char *name, void *opaque,
|
||||
Error **errp)
|
||||
{
|
||||
Error *err = NULL;
|
||||
MachineState *ms = MACHINE(obj);
|
||||
OnOffSplit mode;
|
||||
|
||||
visit_type_OnOffSplit(v, name, &mode, &err);
|
||||
if (err) {
|
||||
error_propagate(errp, err);
|
||||
return;
|
||||
} else {
|
||||
switch (mode) {
|
||||
case ON_OFF_SPLIT_ON:
|
||||
ms->kernel_irqchip_allowed = true;
|
||||
ms->kernel_irqchip_required = true;
|
||||
ms->kernel_irqchip_split = false;
|
||||
break;
|
||||
case ON_OFF_SPLIT_OFF:
|
||||
ms->kernel_irqchip_allowed = false;
|
||||
ms->kernel_irqchip_required = false;
|
||||
ms->kernel_irqchip_split = false;
|
||||
break;
|
||||
case ON_OFF_SPLIT_SPLIT:
|
||||
ms->kernel_irqchip_allowed = true;
|
||||
ms->kernel_irqchip_required = true;
|
||||
ms->kernel_irqchip_split = true;
|
||||
break;
|
||||
default:
|
||||
/* The value was checked in visit_type_OnOffSplit() above. If
|
||||
* we get here, then something is wrong in QEMU.
|
||||
*/
|
||||
abort();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static char *machine_get_kernel(Object *obj, Error **errp)
|
||||
{
|
||||
MachineState *ms = MACHINE(obj);
|
||||
|
@ -757,12 +719,6 @@ static void machine_class_init(ObjectClass *oc, void *data)
|
|||
mc->numa_mem_align_shift = 23;
|
||||
mc->numa_auto_assign_ram = numa_default_auto_assign_ram;
|
||||
|
||||
object_class_property_add(oc, "kernel-irqchip", "on|off|split",
|
||||
NULL, machine_set_kernel_irqchip,
|
||||
NULL, NULL, &error_abort);
|
||||
object_class_property_set_description(oc, "kernel-irqchip",
|
||||
"Configure KVM in-kernel irqchip", &error_abort);
|
||||
|
||||
object_class_property_add_str(oc, "kernel",
|
||||
machine_get_kernel, machine_set_kernel, &error_abort);
|
||||
object_class_property_set_description(oc, "kernel",
|
||||
|
@ -862,8 +818,6 @@ static void machine_initfn(Object *obj)
|
|||
MachineState *ms = MACHINE(obj);
|
||||
MachineClass *mc = MACHINE_GET_CLASS(obj);
|
||||
|
||||
ms->kernel_irqchip_allowed = true;
|
||||
ms->kernel_irqchip_split = mc->default_kernel_irqchip_split;
|
||||
ms->dump_guest_core = true;
|
||||
ms->mem_merge = true;
|
||||
ms->enable_graphics = true;
|
||||
|
@ -919,21 +873,6 @@ bool machine_usb(MachineState *machine)
|
|||
return machine->usb;
|
||||
}
|
||||
|
||||
bool machine_kernel_irqchip_allowed(MachineState *machine)
|
||||
{
|
||||
return machine->kernel_irqchip_allowed;
|
||||
}
|
||||
|
||||
bool machine_kernel_irqchip_required(MachineState *machine)
|
||||
{
|
||||
return machine->kernel_irqchip_required;
|
||||
}
|
||||
|
||||
bool machine_kernel_irqchip_split(MachineState *machine)
|
||||
{
|
||||
return machine->kernel_irqchip_split;
|
||||
}
|
||||
|
||||
int machine_phandle_start(MachineState *machine)
|
||||
{
|
||||
return machine->phandle_start;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue