mirror of https://github.com/proxmox/mirror_qemu
machine: query kvm-shadow-mem machine property
Commit e79d5a6 ("machine: remove qemu_machine_opts global list") removed the global option descriptions and moved them to MachineState's QOM properties. Query kvm-shadow-mem by accessing machine properties through designated wrappers. Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>master
parent
b16565b396
commit
4689b77bda
|
@ -284,6 +284,7 @@ static void machine_initfn(Object *obj)
|
||||||
MachineState *ms = MACHINE(obj);
|
MachineState *ms = MACHINE(obj);
|
||||||
|
|
||||||
ms->kernel_irqchip_allowed = true;
|
ms->kernel_irqchip_allowed = true;
|
||||||
|
ms->kvm_shadow_mem = -1;
|
||||||
|
|
||||||
object_property_add_str(obj, "accel",
|
object_property_add_str(obj, "accel",
|
||||||
machine_get_accel, machine_set_accel, NULL);
|
machine_get_accel, machine_set_accel, NULL);
|
||||||
|
@ -414,6 +415,11 @@ bool machine_kernel_irqchip_required(MachineState *machine)
|
||||||
return machine->kernel_irqchip_required;
|
return machine->kernel_irqchip_required;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int machine_kvm_shadow_mem(MachineState *machine)
|
||||||
|
{
|
||||||
|
return machine->kvm_shadow_mem;
|
||||||
|
}
|
||||||
|
|
||||||
static const TypeInfo machine_info = {
|
static const TypeInfo machine_info = {
|
||||||
.name = TYPE_MACHINE,
|
.name = TYPE_MACHINE,
|
||||||
.parent = TYPE_OBJECT,
|
.parent = TYPE_OBJECT,
|
||||||
|
|
|
@ -69,6 +69,7 @@ bool machine_usb(MachineState *machine);
|
||||||
bool machine_iommu(MachineState *machine);
|
bool machine_iommu(MachineState *machine);
|
||||||
bool machine_kernel_irqchip_allowed(MachineState *machine);
|
bool machine_kernel_irqchip_allowed(MachineState *machine);
|
||||||
bool machine_kernel_irqchip_required(MachineState *machine);
|
bool machine_kernel_irqchip_required(MachineState *machine);
|
||||||
|
int machine_kvm_shadow_mem(MachineState *machine);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* MachineClass:
|
* MachineClass:
|
||||||
|
|
|
@ -890,8 +890,7 @@ int kvm_arch_init(MachineState *ms, KVMState *s)
|
||||||
}
|
}
|
||||||
qemu_register_reset(kvm_unpoison_all, NULL);
|
qemu_register_reset(kvm_unpoison_all, NULL);
|
||||||
|
|
||||||
shadow_mem = qemu_opt_get_size(qemu_get_machine_opts(),
|
shadow_mem = machine_kvm_shadow_mem(ms);
|
||||||
"kvm_shadow_mem", -1);
|
|
||||||
if (shadow_mem != -1) {
|
if (shadow_mem != -1) {
|
||||||
shadow_mem /= 4096;
|
shadow_mem /= 4096;
|
||||||
ret = kvm_vm_ioctl(s, KVM_SET_NR_MMU_PAGES, shadow_mem);
|
ret = kvm_vm_ioctl(s, KVM_SET_NR_MMU_PAGES, shadow_mem);
|
||||||
|
|
Loading…
Reference in New Issue