/openbmc/linux/arch/powerpc/include/asm/ |
H A D | kvm_book3s_uvmem.h | 10 void kvmppc_uvmem_slot_free(struct kvm *kvm, 12 unsigned long kvmppc_h_svm_page_in(struct kvm *kvm, 16 unsigned long kvmppc_h_svm_page_out(struct kvm *kvm, 20 unsigned long kvmppc_h_svm_init_start(struct kvm *kvm); 21 unsigned long kvmppc_h_svm_init_done(struct kvm *kvm); 23 unsigned long kvmppc_h_svm_init_abort(struct kvm *kvm); 25 struct kvm *kvm, bool skip_page_out); 26 int kvmppc_uvmem_memslot_create(struct kvm *kvm, 28 void kvmppc_uvmem_memslot_delete(struct kvm *kvm, 53 kvmppc_h_svm_page_in(struct kvm *kvm, unsigned long gra, in kvmppc_h_svm_page_in() argument [all …]
|
H A D | kvm_ppc.h | 172 extern void kvmppc_rmap_reset(struct kvm *kvm); 279 int (*prepare_memory_region)(struct kvm *kvm, 292 int (*init_vm)(struct kvm *kvm); 293 void (*destroy_vm)(struct kvm *kvm); 312 int (*enable_nested)(struct kvm *kvm); 317 int (*enable_svm)(struct kvm *kvm); 318 int (*svm_off)(struct kvm *kvm); 319 int (*enable_dawr1)(struct kvm *kvm); 321 int (*create_vm_debugfs)(struct kvm *kvm); 627 struct kvm *kvm) in kvmppc_get_passthru_irqmap() argument [all …]
|
/openbmc/linux/arch/x86/kvm/mmu/ |
H A D | page_track.c | 23 bool kvm_page_track_write_tracking_enabled(struct kvm *kvm) in kvm_page_track_write_tracking_enabled() argument 47 int kvm_page_track_create_memslot(struct kvm *kvm, in kvm_page_track_create_memslot() argument 100 void __kvm_write_track_remove_gfn(struct kvm *kvm, in __kvm_write_track_remove_gfn() argument 123 bool kvm_gfn_is_write_tracked(struct kvm *kvm, in kvm_gfn_is_write_tracked() argument 139 void kvm_page_track_cleanup(struct kvm *kvm) in kvm_page_track_cleanup() argument 147 int kvm_page_track_init(struct kvm *kvm) in kvm_page_track_init() argument 160 int kvm_page_track_register_notifier(struct kvm *kvm, in kvm_page_track_register_notifier() argument 165 if (!kvm || kvm->mm != current->mm) in kvm_page_track_register_notifier() 183 void kvm_page_track_unregister_notifier(struct kvm *kvm, in kvm_page_track_unregister_notifier() argument 255 int kvm_write_track_add_gfn(struct kvm *kvm, gfn_t gfn) in kvm_write_track_add_gfn() argument [all …]
|
H A D | page_track.h | 10 bool kvm_page_track_write_tracking_enabled(struct kvm *kvm); 14 int kvm_page_track_create_memslot(struct kvm *kvm, 20 void __kvm_write_track_remove_gfn(struct kvm *kvm, 23 bool kvm_gfn_is_write_tracked(struct kvm *kvm, 27 int kvm_page_track_init(struct kvm *kvm); 28 void kvm_page_track_cleanup(struct kvm *kvm); 33 static inline bool kvm_page_track_has_external_user(struct kvm *kvm) in kvm_page_track_has_external_user() argument 38 static inline int kvm_page_track_init(struct kvm *kvm) { return 0; } in kvm_page_track_init() argument 39 static inline void kvm_page_track_cleanup(struct kvm *kvm) { } in kvm_page_track_cleanup() argument 41 static inline void __kvm_page_track_write(struct kvm *kvm, gpa_t gpa, in __kvm_page_track_write() argument [all …]
|
H A D | tdp_mmu.h | 10 void kvm_mmu_init_tdp_mmu(struct kvm *kvm); 11 void kvm_mmu_uninit_tdp_mmu(struct kvm *kvm); 25 void kvm_tdp_mmu_zap_all(struct kvm *kvm); 26 void kvm_tdp_mmu_invalidate_all_roots(struct kvm *kvm); 27 void kvm_tdp_mmu_zap_invalidated_roots(struct kvm *kvm); 37 bool kvm_tdp_mmu_wrprot_slot(struct kvm *kvm, 39 bool kvm_tdp_mmu_clear_dirty_slot(struct kvm *kvm, 41 void kvm_tdp_mmu_clear_dirty_pt_masked(struct kvm *kvm, 45 void kvm_tdp_mmu_zap_collapsible_sptes(struct kvm *kvm, 48 bool kvm_tdp_mmu_write_protect_gfn(struct kvm *kvm, [all …]
|
H A D | tdp_mmu.c | 15 void kvm_mmu_init_tdp_mmu(struct kvm *kvm) in kvm_mmu_init_tdp_mmu() argument 33 void kvm_mmu_uninit_tdp_mmu(struct kvm *kvm) in kvm_mmu_uninit_tdp_mmu() argument 223 struct kvm *kvm = vcpu->kvm; in kvm_tdp_mmu_get_vcpu_root_hpa() local 841 void kvm_tdp_mmu_zap_all(struct kvm *kvm) in kvm_tdp_mmu_zap_all() argument 865 void kvm_tdp_mmu_zap_invalidated_roots(struct kvm *kvm) in kvm_tdp_mmu_zap_invalidated_roots() argument 910 void kvm_tdp_mmu_invalidate_all_roots(struct kvm *kvm) in kvm_tdp_mmu_invalidate_all_roots() argument 1044 struct kvm *kvm = vcpu->kvm; in kvm_tdp_mmu_map() local 1309 bool kvm_tdp_mmu_wrprot_slot(struct kvm *kvm, in kvm_tdp_mmu_wrprot_slot() argument 1490 void kvm_tdp_mmu_try_split_huge_pages(struct kvm *kvm, in kvm_tdp_mmu_try_split_huge_pages() argument 1567 bool kvm_tdp_mmu_clear_dirty_slot(struct kvm *kvm, in kvm_tdp_mmu_clear_dirty_slot() argument [all …]
|
/openbmc/linux/virt/kvm/ |
H A D | eventfd.c | 46 struct kvm *kvm = irqfd->kvm; in irqfd_inject() local 76 struct kvm *kvm; in irqfd_resampler_ack() local 81 kvm = resampler->kvm; in irqfd_resampler_ack() 95 struct kvm *kvm = resampler->kvm; in irqfd_resampler_shutdown() local 125 struct kvm *kvm = irqfd->kvm; in irqfd_shutdown() local 183 struct kvm *kvm, int irq_source_id, in kvm_arch_set_irq_inatomic() argument 200 struct kvm *kvm = irqfd->kvm; in irqfd_wakeup() local 322 irqfd->kvm = kvm; in kvm_irqfd_assign() 374 resampler->kvm = kvm; in kvm_irqfd_assign() 532 kvm_eventfd_init(struct kvm *kvm) in kvm_eventfd_init() argument [all …]
|
H A D | kvm_main.c | 488 vcpu->kvm = kvm; in kvm_vcpu_init() 3535 struct kvm *kvm = vcpu->kvm; in kvm_vcpu_max_halt_poll_ns() local 3773 struct kvm *kvm = me->kvm; in kvm_vcpu_on_spin() local 4422 struct kvm *kvm = dev->kvm; in kvm_device_release() local 4500 dev->kvm = kvm; in kvm_ioctl_create_device() 5081 struct kvm *kvm; in kvm_dev_ioctl_create_vm() local 5799 struct kvm *kvm; in vm_stat_get() local 5815 struct kvm *kvm; in vm_stat_clear() local 5835 struct kvm *kvm; in vcpu_stat_get() local 5851 struct kvm *kvm; in vcpu_stat_clear() local [all …]
|
H A D | irqchip.c | 21 int kvm_irq_map_gsi(struct kvm *kvm, in kvm_irq_map_gsi() argument 28 irq_rt = srcu_dereference_check(kvm->irq_routing, &kvm->irq_srcu, in kvm_irq_map_gsi() 40 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin) in kvm_irq_map_chip_pin() argument 44 irq_rt = srcu_dereference(kvm->irq_routing, &kvm->irq_srcu); in kvm_irq_map_chip_pin() 48 int kvm_send_userspace_msi(struct kvm *kvm, struct kvm_msi *msi) in kvm_send_userspace_msi() argument 70 int kvm_set_irq(struct kvm *kvm, int irq_source_id, u32 irq, int level, in kvm_set_irq() argument 119 void kvm_free_irq_routing(struct kvm *kvm) in kvm_free_irq_routing() argument 127 static int setup_routing_entry(struct kvm *kvm, in setup_routing_entry() argument 159 void __attribute__((weak)) kvm_arch_irq_routing_update(struct kvm *kvm) in kvm_arch_irq_routing_update() argument 163 bool __weak kvm_arch_can_set_irq_routing(struct kvm *kvm) in kvm_arch_can_set_irq_routing() argument [all …]
|
/openbmc/linux/arch/arm64/kvm/vgic/ |
H A D | vgic-init.c | 52 void kvm_vgic_early_init(struct kvm *kvm) in kvm_vgic_early_init() argument 71 int kvm_vgic_create(struct kvm *kvm, u32 type) in kvm_vgic_create() argument 112 if (atomic_read(&kvm->online_vcpus) > kvm->max_vcpus) { in kvm_vgic_create() 140 static int kvm_vgic_dist_init(struct kvm *kvm, unsigned int nr_spis) in kvm_vgic_dist_init() argument 262 int vgic_init(struct kvm *kvm) in vgic_init() argument 275 if (kvm->created_vcpus != atomic_read(&kvm->online_vcpus)) in vgic_init() 343 static void kvm_vgic_dist_destroy(struct kvm *kvm) in kvm_vgic_dist_destroy() argument 390 struct kvm *kvm = vcpu->kvm; in kvm_vgic_vcpu_destroy() local 397 void kvm_vgic_destroy(struct kvm *kvm) in kvm_vgic_destroy() argument 423 int vgic_lazy_init(struct kvm *kvm) in vgic_lazy_init() argument [all …]
|
H A D | vgic.h | 190 void vgic_kick_vcpus(struct kvm *kvm); 211 int vgic_v2_map_resources(struct kvm *kvm); 239 int vgic_v3_map_resources(struct kvm *kvm); 245 bool vgic_v3_check_base(struct kvm *kvm); 251 bool vgic_has_its(struct kvm *kvm); 269 int vgic_lazy_init(struct kvm *kvm); 270 int vgic_init(struct kvm *kvm); 272 void vgic_debug_init(struct kvm *kvm); 273 void vgic_debug_destroy(struct kvm *kvm); 340 int vgic_v4_init(struct kvm *kvm); [all …]
|
/openbmc/linux/include/linux/ |
H A D | kvm_host.h | 323 struct kvm *kvm; member 951 void kvm_destroy_vcpus(struct kvm *kvm); 984 void kvm_get_kvm(struct kvm *kvm); 985 bool kvm_get_kvm_safe(struct kvm *kvm); 986 void kvm_put_kvm(struct kvm *kvm); 1229 struct kvm *__kvm = kvm; \ 1251 struct kvm *__kvm = kvm; \ 1621 int kvm_irq_map_gsi(struct kvm *kvm, 1772 struct kvm *kvm; member 2018 void kvm_eventfd_init(struct kvm *kvm); [all …]
|
/openbmc/linux/arch/x86/kvm/ |
H A D | irq_comm.c | 31 struct kvm *kvm, int irq_source_id, int level, in kvm_set_pic_irq() argument 39 struct kvm *kvm, int irq_source_id, int level, in kvm_set_ioapic_irq() argument 149 struct kvm *kvm, int irq_source_id, int level, in kvm_hv_set_sint() argument 159 struct kvm *kvm, int irq_source_id, int level, in kvm_arch_set_irq_inatomic() argument 194 int kvm_request_irq_source_id(struct kvm *kvm) in kvm_request_irq_source_id() argument 271 bool kvm_arch_can_set_irq_routing(struct kvm *kvm) in kvm_arch_can_set_irq_routing() argument 276 int kvm_set_routing_entry(struct kvm *kvm, in kvm_set_routing_entry() argument 387 int kvm_setup_default_irq_routing(struct kvm *kvm) in kvm_setup_default_irq_routing() argument 395 int kvm_setup_empty_irq_routing(struct kvm *kvm) in kvm_setup_empty_irq_routing() argument 410 struct kvm *kvm = vcpu->kvm; in kvm_scan_ioapic_routes() local [all …]
|
H A D | irq.h | 25 struct kvm; 53 struct kvm *kvm; member 62 int kvm_pic_init(struct kvm *kvm); 63 void kvm_pic_destroy(struct kvm *kvm); 64 int kvm_pic_read_irq(struct kvm *kvm); 67 static inline int irqchip_split(struct kvm *kvm) in irqchip_split() argument 76 static inline int irqchip_kernel(struct kvm *kvm) in irqchip_kernel() argument 85 static inline int pic_in_kernel(struct kvm *kvm) in pic_in_kernel() argument 90 static inline int irqchip_in_kernel(struct kvm *kvm) in irqchip_in_kernel() argument 108 int kvm_setup_default_irq_routing(struct kvm *kvm); [all …]
|
/openbmc/linux/arch/s390/kvm/ |
H A D | pv.c | 21 bool kvm_s390_pv_is_protected(struct kvm *kvm) in kvm_s390_pv_is_protected() argument 58 static void kvm_s390_clear_pv_state(struct kvm *kvm) in kvm_s390_clear_pv_state() argument 157 static void kvm_s390_pv_dealloc_vm(struct kvm *kvm) in kvm_s390_pv_dealloc_vm() argument 165 static int kvm_s390_pv_alloc_vm(struct kvm *kvm) in kvm_s390_pv_alloc_vm() argument 214 static int kvm_s390_pv_dispose_one_leftover(struct kvm *kvm, in kvm_s390_pv_dispose_one_leftover() argument 249 static void kvm_s390_destroy_lower_2g(struct kvm *kvm) in kvm_s390_destroy_lower_2g() argument 320 int kvm_s390_pv_set_aside(struct kvm *kvm, u16 *rc, u16 *rrc) in kvm_s390_pv_set_aside() argument 386 int kvm_s390_pv_deinit_vm(struct kvm *kvm, u16 *rc, u16 *rrc) in kvm_s390_pv_deinit_vm() argument 538 struct kvm *kvm = container_of(subscription, struct kvm, arch.pv.mmu_notifier); in kvm_s390_pv_mmu_notifier_release() local 558 int kvm_s390_pv_init_vm(struct kvm *kvm, u16 *rc, u16 *rrc) in kvm_s390_pv_init_vm() argument [all …]
|
H A D | kvm-s390.c | 270 static int sca_switch_to_extended(struct kvm *kvm); 303 struct kvm *kvm; in kvm_clock_sync() local 707 int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm, in kvm_vm_ioctl_get_dirty_log() argument 2985 struct kvm *kvm = filp->private_data; in kvm_arch_vm_ioctl() local 3279 static void sca_dispose(struct kvm *kvm) in sca_dispose() argument 3288 void kvm_arch_free_vm(struct kvm *kvm) in kvm_arch_free_vm() argument 3347 kvm->arch.sie_page2->kvm = kvm; in kvm_arch_init_vm() 3409 kvm->arch.gmap->private = kvm; in kvm_arch_init_vm() 3455 void kvm_arch_destroy_vm(struct kvm *kvm) in kvm_arch_destroy_vm() argument 3763 static bool kvm_has_pckmo_ecc(struct kvm *kvm) in kvm_has_pckmo_ecc() argument [all …]
|
H A D | kvm-s390.h | 86 static inline int kvm_is_ucontrol(struct kvm *kvm) in kvm_is_ucontrol() argument 299 void kvm_s390_clear_float_irqs(struct kvm *kvm); 325 int kvm_s390_reinject_io_int(struct kvm *kvm, 370 void kvm_s390_vsie_init(struct kvm *kvm); 371 void kvm_s390_vsie_destroy(struct kvm *kvm); 466 void kvm_s390_destroy_adapters(struct kvm *kvm); 476 void kvm_s390_gisa_init(struct kvm *kvm); 477 void kvm_s390_gisa_clear(struct kvm *kvm); 478 void kvm_s390_gisa_destroy(struct kvm *kvm); 479 void kvm_s390_gisa_disable(struct kvm *kvm); [all …]
|
/openbmc/linux/arch/powerpc/kvm/ |
H A D | book3s_hv_uvmem.c | 233 struct kvm *kvm; member 309 unsigned long uvmem_pfn, struct kvm *kvm) in kvmppc_gfn_secure_uvmem_pfn() argument 362 struct kvm *kvm, unsigned long *gfn) in kvmppc_next_nontransitioned_gfn() argument 391 static int kvmppc_memslot_page_merge(struct kvm *kvm, in kvmppc_memslot_page_merge() argument 465 unsigned long kvmppc_h_svm_init_start(struct kvm *kvm) in kvmppc_h_svm_init_start() argument 589 struct kvm *kvm, unsigned long gpa, in kvmppc_svm_page_out() argument 611 struct kvm *kvm, bool skip_page_out) in kvmppc_uvmem_drop_pages() argument 659 unsigned long kvmppc_h_svm_init_abort(struct kvm *kvm) in kvmppc_h_svm_init_abort() argument 722 pvt->kvm = kvm; in kvmppc_uvmem_get_page() 794 static int kvmppc_uv_migrate_mem_slot(struct kvm *kvm, in kvmppc_uv_migrate_mem_slot() argument [all …]
|
H A D | Makefile | 6 ccflags-y := -Ivirt/kvm -Iarch/powerpc/kvm 8 include $(srctree)/virt/kvm/Makefile.kvm 16 kvm-e500-objs := \ 26 kvm-objs-$(CONFIG_KVM_E500V2) := $(kvm-e500-objs) 28 kvm-e500mc-objs := \ 38 kvm-objs-$(CONFIG_KVM_E500MC) := $(kvm-e500mc-objs) 40 kvm-pr-y := \ 62 kvm-hv-y += \ 106 kvm-objs-$(CONFIG_KVM_BOOK3S_64) := $(kvm-book3s_64-module-objs) 120 kvm-objs-$(CONFIG_KVM_BOOK3S_32) := $(kvm-book3s_32-objs) [all …]
|
H A D | book3s_64_mmu_hv.c | 53 struct kvm *kvm; member 217 struct kvm *kvm = vcpu->kvm; in kvmppc_map_vrma() local 344 struct kvm *kvm = vcpu->kvm; in kvmppc_mmu_book3s_64_hv_xlate() local 509 struct kvm *kvm = vcpu->kvm; in kvmppc_book3s_hv_page_fault() local 1229 struct kvm *kvm = resize->kvm; in resize_hpt_rehash_hpte() local 1383 struct kvm *kvm = resize->kvm; in resize_hpt_rehash() local 1398 struct kvm *kvm = resize->kvm; in resize_hpt_pivot() local 1446 struct kvm *kvm = resize->kvm; in resize_hpt_prepare_work() local 1729 struct kvm *kvm = ctx->kvm; in kvm_htab_read() local 1828 struct kvm *kvm = ctx->kvm; in kvm_htab_write() local [all …]
|
H A D | book3s_64_mmu_radix.c | 141 struct kvm *kvm = vcpu->kvm; in kvmppc_mmu_walk_radix_tree() local 237 struct kvm *kvm = vcpu->kvm; in kvmppc_mmu_radix_translate_table() local 559 void kvmppc_free_radix(struct kvm *kvm) in kvmppc_free_radix() argument 564 pgd_free(kvm->mm, kvm->arch.pgtable); in kvmppc_free_radix() 822 struct kvm *kvm = vcpu->kvm; in kvmppc_book3s_instantiate_page() local 943 struct kvm *kvm = vcpu->kvm; in kvmppc_book3s_radix_page_fault() local 1260 struct kvm *kvm; member 1272 struct kvm *kvm = inode->i_private; in debugfs_radix_open() local 1280 p->kvm = kvm; in debugfs_radix_open() 1302 struct kvm *kvm; in debugfs_radix_read() local [all …]
|
/openbmc/linux/arch/riscv/kvm/ |
H A D | Makefile | 8 include $(srctree)/virt/kvm/Makefile.kvm 12 kvm-y += main.o 13 kvm-y += vm.o 14 kvm-y += vmid.o 15 kvm-y += tlb.o 16 kvm-y += mmu.o 17 kvm-y += vcpu.o 18 kvm-y += vcpu_exit.o 19 kvm-y += vcpu_fp.o 24 kvm-y += vcpu_sbi.o [all …]
|
H A D | aia_device.c | 15 static void unlock_vcpus(struct kvm *kvm, int vcpu_lock_idx) in unlock_vcpus() argument 25 static void unlock_all_vcpus(struct kvm *kvm) in unlock_all_vcpus() argument 27 unlock_vcpus(kvm, atomic_read(&kvm->online_vcpus) - 1); in unlock_all_vcpus() 30 static bool lock_all_vcpus(struct kvm *kvm) in lock_all_vcpus() argument 49 struct kvm *kvm = dev->kvm; in aia_create() local 77 static int aia_config(struct kvm *kvm, unsigned long type, in aia_config() argument 190 static int aia_imsic_addr(struct kvm *kvm, u64 *addr, in aia_imsic_addr() argument 252 static int aia_init(struct kvm *kvm) in aia_init() argument 266 if (kvm->created_vcpus != atomic_read(&kvm->online_vcpus)) in aia_init() 640 void kvm_riscv_aia_init_vm(struct kvm *kvm) in kvm_riscv_aia_init_vm() argument [all …]
|
H A D | mmu.c | 137 static int gstage_set_pte(struct kvm *kvm, u32 level, in gstage_set_pte() argument 177 static int gstage_map_page(struct kvm *kvm, in gstage_map_page() argument 228 static void gstage_op_pte(struct kvm *kvm, gpa_t addr, in gstage_op_pte() argument 346 int kvm_riscv_gstage_ioremap(struct kvm *kvm, gpa_t gpa, in kvm_riscv_gstage_ioremap() argument 417 void kvm_arch_flush_shadow_all(struct kvm *kvm) in kvm_arch_flush_shadow_all() argument 422 void kvm_arch_flush_shadow_memslot(struct kvm *kvm, in kvm_arch_flush_shadow_memslot() argument 433 void kvm_arch_commit_memory_region(struct kvm *kvm, in kvm_arch_commit_memory_region() argument 447 int kvm_arch_prepare_memory_region(struct kvm *kvm, in kvm_arch_prepare_memory_region() argument 619 struct kvm *kvm = vcpu->kvm; in kvm_riscv_gstage_map() local 711 int kvm_riscv_gstage_alloc_pgd(struct kvm *kvm) in kvm_riscv_gstage_alloc_pgd() argument [all …]
|
H A D | vm.c | 30 int kvm_arch_init_vm(struct kvm *kvm, unsigned long type) in kvm_arch_init_vm() argument 51 void kvm_arch_destroy_vm(struct kvm *kvm) in kvm_arch_destroy_vm() argument 58 int kvm_vm_ioctl_irq_line(struct kvm *kvm, struct kvm_irq_level *irql, in kvm_vm_ioctl_irq_line() argument 68 struct kvm *kvm, int irq_source_id, in kvm_set_msi() argument 86 struct kvm *kvm, int irq_source_id, in kvm_riscv_set_irq() argument 92 int kvm_riscv_setup_default_irq_routing(struct kvm *kvm, u32 lines) in kvm_riscv_setup_default_irq_routing() argument 113 bool kvm_arch_can_set_irq_routing(struct kvm *kvm) in kvm_arch_can_set_irq_routing() argument 118 int kvm_set_routing_entry(struct kvm *kvm, in kvm_set_routing_entry() argument 150 struct kvm *kvm, int irq_source_id, int level, in kvm_arch_set_irq_inatomic() argument 168 bool kvm_arch_irqchip_in_kernel(struct kvm *kvm) in kvm_arch_irqchip_in_kernel() argument [all …]
|