History

KVM: Drop kvm_arch_vcpu_init() and kvm_arch_vcpu_uninit()

Remove kvm_arch_vcpu_init() and kvm_arch_vcpu_uninit() now that all arch specific implementations are nops.

Sean Christopherson committed 6 years ago

Commit ddd259c1 parent 19bcc8911 files · +2 −65Browse files

Unified · Split

11 files
  1. arch/arm/include/asm/kvm_host.h +0 −1
  2. arch/arm64/include/asm/kvm_host.h +0 −1
  3. arch/arm64/kvm/reset.c +0 −5
  4. arch/mips/kvm/mips.c +0 −10
  5. arch/powerpc/kvm/powerpc.c +0 −10
  6. arch/s390/include/asm/kvm_host.h +0 −1
  7. arch/s390/kvm/kvm-s390.c +0 −5
  8. arch/x86/kvm/x86.c +0 −10
  9. include/linux/kvm_host.h +0 −3
  10. virt/kvm/arm/arm.c +0 −5
  11. virt/kvm/kvm_main.c +2 −14
arch/arm/include/asm/kvm_host.h+0−1
@@ -363,7 +363,6 @@ struct kvm_vcpu *kvm_mpidr_to_vcpu(struct kvm *kvm, unsigned long mpidr); · 362 unmodified lines
363363 static inline bool kvm_arch_requires_vhe(void) { return false; }
364364 static inline void kvm_arch_hardware_unsetup(void) {}
365365 static inline void kvm_arch_sync_events(struct kvm *kvm) {}
366−static inline void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu) {}
367366 static inline void kvm_arch_sched_in(struct kvm_vcpu *vcpu, int cpu) {}
368367 static inline void kvm_arch_vcpu_block_finish(struct kvm_vcpu *vcpu) {}
369368 static inline void kvm_arm_vcpu_destroy(struct kvm_vcpu *vcpu) {}
arch/arm64/include/asm/kvm_host.h+0−1
@@ -54,7 +54,6 @@ int kvm_arm_init_sve(void); · 53 unmodified lines
5454 int __attribute_const__ kvm_target_cpu(void);
5555 int kvm_reset_vcpu(struct kvm_vcpu *vcpu);
5656 void kvm_arm_vcpu_destroy(struct kvm_vcpu *vcpu);
57−void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu);
5857 int kvm_arch_vm_ioctl_check_extension(struct kvm *kvm, long ext);
5958 void __extended_idmap_trampoline(phys_addr_t boot_pgd, phys_addr_t idmap_start);
6059
arch/arm64/kvm/reset.c+0−5
@@ -204,11 +204,6 @@ bool kvm_arm_vcpu_is_finalized(struct kvm_vcpu *vcpu) · 203 unmodified lines
204204 return true;
205205 }
206206
207−void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
208−{
209−
210−}
211−
212207 void kvm_arm_vcpu_destroy(struct kvm_vcpu *vcpu)
213208 {
214209 kfree(vcpu->arch.sve_state);
arch/mips/kvm/mips.c+0−10
@@ -1230,16 +1230,6 @@ static enum hrtimer_restart kvm_mips_comparecount_wakeup(struct hrtimer *timer) · 1229 unmodified lines
12301230 return kvm_mips_count_timeout(vcpu);
12311231 }
12321232
1233−int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
1234−{
1235− return 0;
1236−}
1237−
1238−void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
1239−{
1240−
1241−}
1242−
12431233 int kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu *vcpu,
12441234 struct kvm_translation *tr)
12451235 {
arch/powerpc/kvm/powerpc.c+0−10
@@ -801,16 +801,6 @@ int kvm_cpu_has_pending_timer(struct kvm_vcpu *vcpu) · 800 unmodified lines
801801 return kvmppc_core_pending_dec(vcpu);
802802 }
803803
804−int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
805−{
806− return 0;
807−}
808−
809−void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
810−{
811−
812−}
813−
814804 void kvm_arch_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
815805 {
816806 #ifdef CONFIG_BOOKE
arch/s390/include/asm/kvm_host.h+0−1
@@ -914,7 +914,6 @@ extern int kvm_s390_gisc_unregister(struct kvm *kvm, u32 gisc); · 913 unmodified lines
914914
915915 static inline void kvm_arch_hardware_disable(void) {}
916916 static inline void kvm_arch_sync_events(struct kvm *kvm) {}
917−static inline void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu) {}
918917 static inline void kvm_arch_sched_in(struct kvm_vcpu *vcpu, int cpu) {}
919918 static inline void kvm_arch_free_memslot(struct kvm *kvm,
920919 struct kvm_memory_slot *free, struct kvm_memory_slot *dont) {}
arch/s390/kvm/kvm-s390.c+0−5
@@ -2700,11 +2700,6 @@ static int sca_can_add_vcpu(struct kvm *kvm, unsigned int id) · 2699 unmodified lines
27002700 return rc == 0 && id < KVM_S390_ESCA_CPU_SLOTS;
27012701 }
27022702
2703−int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
2704−{
2705− return 0;
2706−}
2707−
27082703 /* needs disabled preemption to protect from TOD sync and vcpu_load/put */
27092704 static void __start_cpu_timer_accounting(struct kvm_vcpu *vcpu)
27102705 {
arch/x86/kvm/x86.c+0−10
@@ -9575,16 +9575,6 @@ bool kvm_vcpu_is_bsp(struct kvm_vcpu *vcpu) · 9574 unmodified lines
95759575 struct static_key kvm_no_apic_vcpu __read_mostly;
95769576 EXPORT_SYMBOL_GPL(kvm_no_apic_vcpu);
95779577
9578−int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
9579−{
9580− return 0;
9581−}
9582−
9583−void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
9584−{
9585−
9586−}
9587−
95889578 void kvm_arch_sched_in(struct kvm_vcpu *vcpu, int cpu)
95899579 {
95909580 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
include/linux/kvm_host.h+0−3
@@ -864,9 +864,6 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run); · 863 unmodified lines
864864 int kvm_arch_init(void *opaque);
865865 void kvm_arch_exit(void);
866866
867−int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu);
868−void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu);
869−
870867 void kvm_arch_sched_in(struct kvm_vcpu *vcpu, int cpu);
871868
872869 void kvm_arch_vcpu_load(struct kvm_vcpu *vcpu, int cpu);
virt/kvm/arm/arm.c+0−5
@@ -360,11 +360,6 @@ void kvm_arch_vcpu_unblocking(struct kvm_vcpu *vcpu) · 359 unmodified lines
360360 preempt_enable();
361361 }
362362
363−int kvm_arch_vcpu_init(struct kvm_vcpu *vcpu)
364−{
365− return 0;
366−}
367−
368363 void kvm_arch_vcpu_load(struct kvm_vcpu *vcpu, int cpu)
369364 {
370365 int *last_ran;
virt/kvm/kvm_main.c+2−14
@@ -324,7 +324,6 @@ void kvm_reload_remote_mmus(struct kvm *kvm) · 323 unmodified lines
324324 static int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id)
325325 {
326326 struct page *page;
327− int r;
328327
329328 mutex_init(&vcpu->mutex);
330329 vcpu->cpu = -1;
@@ -338,10 +337,8 @@ static int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id) · 7 unmodified lines
338337 INIT_LIST_HEAD(&vcpu->blocked_vcpu_list);
339338
340339 page = alloc_page(GFP_KERNEL | __GFP_ZERO);
341− if (!page) {
342− r = -ENOMEM;
343− goto fail;
344− }
340+ if (!page)
341+ return -ENOMEM;
345342 vcpu->run = page_address(page);
346343
347344 kvm_vcpu_set_in_spin_loop(vcpu, false);
@@ -350,15 +347,7 @@ static int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id) · 2 unmodified lines
350347 vcpu->ready = false;
351348 preempt_notifier_init(&vcpu->preempt_notifier, &kvm_preempt_ops);
352349
353− r = kvm_arch_vcpu_init(vcpu);
354− if (r < 0)
355− goto fail_free_run;
356350 return 0;
357−
358−fail_free_run:
359− free_page((unsigned long)vcpu->run);
360−fail:
361− return r;
362351 }
363352
364353 static void kvm_vcpu_uninit(struct kvm_vcpu *vcpu)
@@ -369,7 +358,6 @@ static void kvm_vcpu_uninit(struct kvm_vcpu *vcpu) · 4 unmodified lines
369358 * descriptors are already gone.
370359 */
371360 put_pid(rcu_dereference_protected(vcpu->pid, 1));
372− kvm_arch_vcpu_uninit(vcpu);
373361 free_page((unsigned long)vcpu->run);
374362 }
375363