mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-18 06:15:12 +00:00
KVM: MIPS: Use kvm_vcpu_cache to allocate vCPUs
For reasons unknown, MIPS configures the vCPU allocation cache but allocates vCPUs via kzalloc(). Allocate from the vCPU cache in preparation for moving vCPU allocation to common KVM code. Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
ff030fdf55
commit
5233009fab
@ -286,7 +286,7 @@ struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm, unsigned int id)
|
|||||||
void *gebase, *p, *handler, *refill_start, *refill_end;
|
void *gebase, *p, *handler, *refill_start, *refill_end;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
struct kvm_vcpu *vcpu = kzalloc(sizeof(struct kvm_vcpu), GFP_KERNEL);
|
struct kvm_vcpu *vcpu = kmem_cache_zalloc(kvm_vcpu_cache, GFP_KERNEL);
|
||||||
|
|
||||||
if (!vcpu) {
|
if (!vcpu) {
|
||||||
err = -ENOMEM;
|
err = -ENOMEM;
|
||||||
@ -401,7 +401,7 @@ out_uninit_cpu:
|
|||||||
kvm_vcpu_uninit(vcpu);
|
kvm_vcpu_uninit(vcpu);
|
||||||
|
|
||||||
out_free_cpu:
|
out_free_cpu:
|
||||||
kfree(vcpu);
|
kmem_cache_free(kvm_vcpu_cache, vcpu);
|
||||||
|
|
||||||
out:
|
out:
|
||||||
return ERR_PTR(err);
|
return ERR_PTR(err);
|
||||||
@ -418,7 +418,7 @@ void kvm_arch_vcpu_free(struct kvm_vcpu *vcpu)
|
|||||||
kvm_mmu_free_memory_caches(vcpu);
|
kvm_mmu_free_memory_caches(vcpu);
|
||||||
kfree(vcpu->arch.guest_ebase);
|
kfree(vcpu->arch.guest_ebase);
|
||||||
kfree(vcpu->arch.kseg0_commpage);
|
kfree(vcpu->arch.kseg0_commpage);
|
||||||
kfree(vcpu);
|
kmem_cache_free(kvm_vcpu_cache, vcpu);
|
||||||
}
|
}
|
||||||
|
|
||||||
void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu)
|
void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user