Home
last modified time | relevance | path

Searched refs:kvm (Results 1 – 25 of 219) sorted by relevance

123456789

/linux/arch/powerpc/include/asm/
H A Dkvm_book3s_uvmem.h9 int kvmppc_uvmem_slot_init(struct kvm *kvm, const struct kvm_memory_slot *slot);
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);
22 int kvmppc_send_page_to_uv(struct kvm *kvm, unsigned long gfn);
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,
[all …]
/linux/arch/x86/kvm/mmu/
H A Dpage_track.c23 static bool kvm_external_write_tracking_enabled(struct kvm *kvm) in kvm_external_write_tracking_enabled() argument
30 return smp_load_acquire(&kvm->arch.external_write_tracking_enabled); in kvm_external_write_tracking_enabled()
36 bool kvm_page_track_write_tracking_enabled(struct kvm *kvm) in kvm_page_track_write_tracking_enabled() argument
38 return kvm_external_write_tracking_enabled(kvm) || in kvm_page_track_write_tracking_enabled()
39 kvm_shadow_root_allocated(kvm) || !tdp_enabled; in kvm_page_track_write_tracking_enabled()
60 int kvm_page_track_create_memslot(struct kvm *kvm, in kvm_page_track_create_memslot() argument
64 if (!kvm_page_track_write_tracking_enabled(kvm)) in kvm_page_track_create_memslot()
90 void __kvm_write_track_add_gfn(struct kvm *kvm, struct kvm_memory_slot *slot, in __kvm_write_track_add_gfn() argument
93 lockdep_assert_held_write(&kvm->mmu_lock); in __kvm_write_track_add_gfn()
95 lockdep_assert_once(lockdep_is_held(&kvm->slots_lock) || in __kvm_write_track_add_gfn()
[all …]
H A Dpage_track.h10 bool kvm_page_track_write_tracking_enabled(struct kvm *kvm);
14 int kvm_page_track_create_memslot(struct kvm *kvm,
18 void __kvm_write_track_add_gfn(struct kvm *kvm, struct kvm_memory_slot *slot,
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);
30 void __kvm_page_track_write(struct kvm *kvm, gpa_t gpa, const u8 *new, int bytes);
31 void kvm_page_track_delete_slot(struct kvm *kvm, struct kvm_memory_slot *slot);
33 static inline bool kvm_page_track_has_external_user(struct kvm *kvm) in kvm_page_track_has_external_user() argument
[all …]
H A Dtdp_mmu.h10 void kvm_mmu_init_tdp_mmu(struct kvm *kvm);
11 void kvm_mmu_uninit_tdp_mmu(struct kvm *kvm);
20 void kvm_tdp_mmu_put_root(struct kvm *kvm, struct kvm_mmu_page *root);
30 static inline enum kvm_tdp_mmu_root_types kvm_gfn_range_filter_to_root_types(struct kvm *kvm, in kvm_gfn_range_filter_to_root_types() argument
35 if (!kvm_has_mirrored_tdp(kvm)) in kvm_gfn_range_filter_to_root_types()
51 if (unlikely(!kvm_is_addr_direct(vcpu->kvm, fault->addr))) in tdp_mmu_get_root_for_fault()
66 bool kvm_tdp_mmu_zap_leafs(struct kvm *kvm, gfn_t start, gfn_t end, bool flush);
67 bool kvm_tdp_mmu_zap_possible_nx_huge_page(struct kvm *kvm,
69 void kvm_tdp_mmu_zap_all(struct kvm *kvm);
70 void kvm_tdp_mmu_invalidate_roots(struct kvm *kvm,
[all …]
/linux/arch/loongarch/kvm/
H A Dvm.c28 static void kvm_vm_init_features(struct kvm *kvm) in kvm_vm_init_features() argument
33 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_LSX); in kvm_vm_init_features()
35 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_LASX); in kvm_vm_init_features()
37 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_X86BT); in kvm_vm_init_features()
39 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_ARMBT); in kvm_vm_init_features()
41 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_MIPSBT); in kvm_vm_init_features()
43 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_PTW); in kvm_vm_init_features()
45 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_MSGINT); in kvm_vm_init_features()
49 kvm->arch.kvm_features |= BIT(KVM_LOONGARCH_VM_FEAT_PMU); in kvm_vm_init_features()
52 kvm->arch.pv_features |= BIT(KVM_FEATURE_IPI); in kvm_vm_init_features()
[all …]
H A Dmmu.c26 static inline void kvm_ptw_prepare(struct kvm *kvm, kvm_ptw_ctx *ctx) in kvm_ptw_prepare() argument
28 ctx->level = kvm->arch.root_level; in kvm_ptw_prepare()
30 ctx->invalid_ptes = kvm->arch.invalid_ptes; in kvm_ptw_prepare()
31 ctx->pte_shifts = kvm->arch.pte_shifts; in kvm_ptw_prepare()
34 ctx->opaque = kvm; in kvm_ptw_prepare()
90 struct kvm *kvm; in kvm_flush_pte() local
92 kvm = ctx->opaque; in kvm_flush_pte()
94 kvm->stat.hugepages--; in kvm_flush_pte()
96 kvm->stat.pages--; in kvm_flush_pte()
149 static kvm_pte_t *kvm_populate_gpa(struct kvm *kvm, in kvm_populate_gpa() argument
[all …]
H A DMakefile6 include $(srctree)/virt/kvm/Makefile.kvm
8 obj-$(CONFIG_KVM) += kvm.o
12 kvm-y += exit.o
13 kvm-y += interrupt.o
14 kvm-y += main.o
15 kvm-y += mmu.o
16 kvm-y += timer.o
17 kvm-y += tlb.o
18 kvm-y += vcpu.o
19 kvm-y += vm.o
[all …]
/linux/virt/kvm/
H A Deventfd.c37 kvm_arch_irqfd_allowed(struct kvm *kvm, struct kvm_irqfd *args) in kvm_arch_irqfd_allowed() argument
47 struct kvm *kvm = irqfd->kvm; in irqfd_inject() local
50 kvm_set_irq(kvm, KVM_USERSPACE_IRQ_SOURCE_ID, irqfd->gsi, 1, in irqfd_inject()
52 kvm_set_irq(kvm, KVM_USERSPACE_IRQ_SOURCE_ID, irqfd->gsi, 0, in irqfd_inject()
55 kvm_set_irq(kvm, KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID, in irqfd_inject()
64 srcu_read_lock_held(&resampler->kvm->irq_srcu)) in irqfd_resampler_notify()
77 struct kvm *kvm; in irqfd_resampler_ack() local
82 kvm = resampler->kvm; in irqfd_resampler_ack()
84 kvm_set_irq(kvm, KVM_IRQFD_RESAMPLE_IRQ_SOURCE_ID, in irqfd_resampler_ack()
87 idx = srcu_read_lock(&kvm->irq_srcu); in irqfd_resampler_ack()
[all …]
H A Dkvm_main.c13 #include <kvm/iodev.h>
16 #include <linux/kvm.h>
66 #include <trace/events/kvm.h>
108 * kvm->lock --> kvm->slots_lock --> kvm->irq_lock
133 * - Prevent a compat task from opening /dev/kvm
152 static void kvm_uevent_notify_change(unsigned int type, struct kvm *kvm);
158 __weak void kvm_arch_guest_memory_reclaimed(struct kvm *kv in kvm_arch_guest_memory_reclaimed()
157 kvm_arch_guest_memory_reclaimed(struct kvm * kvm) kvm_arch_guest_memory_reclaimed() argument
244 kvm_make_vcpus_request_mask(struct kvm * kvm,unsigned int req,unsigned long * vcpu_bitmap) kvm_make_vcpus_request_mask() argument
270 kvm_make_all_cpus_request(struct kvm * kvm,unsigned int req) kvm_make_all_cpus_request() argument
293 kvm_flush_remote_tlbs(struct kvm * kvm) kvm_flush_remote_tlbs() argument
314 kvm_flush_remote_tlbs_range(struct kvm * kvm,gfn_t gfn,u64 nr_pages) kvm_flush_remote_tlbs_range() argument
327 kvm_flush_remote_tlbs_memslot(struct kvm * kvm,const struct kvm_memory_slot * memslot) kvm_flush_remote_tlbs_memslot() argument
341 kvm_flush_shadow_all(struct kvm * kvm) kvm_flush_shadow_all() argument
441 kvm_vcpu_init(struct kvm_vcpu * vcpu,struct kvm * kvm,unsigned id) kvm_vcpu_init() argument
482 kvm_destroy_vcpus(struct kvm * kvm) kvm_destroy_vcpus() argument
560 kvm_handle_hva_range(struct kvm * kvm,const struct kvm_mmu_notifier_range * range) kvm_handle_hva_range() argument
653 struct kvm *kvm = mmu_notifier_to_kvm(mn); kvm_age_hva_range() local
673 kvm_mmu_invalidate_start(struct kvm * kvm) kvm_mmu_invalidate_start() argument
689 kvm_mmu_invalidate_range_add(struct kvm * kvm,gfn_t start,gfn_t end) kvm_mmu_invalidate_range_add() argument
715 kvm_mmu_unmap_gfn_range(struct kvm * kvm,struct kvm_gfn_range * range) kvm_mmu_unmap_gfn_range() argument
724 struct kvm *kvm = mmu_notifier_to_kvm(mn); kvm_mmu_notifier_invalidate_range_start() local
771 kvm_mmu_invalidate_end(struct kvm * kvm) kvm_mmu_invalidate_end() argument
800 struct kvm *kvm = mmu_notifier_to_kvm(mn); kvm_mmu_notifier_invalidate_range_end() local
870 struct kvm *kvm = mmu_notifier_to_kvm(mn); kvm_mmu_notifier_release() local
887 kvm_init_mmu_notifier(struct kvm * kvm) kvm_init_mmu_notifier() argument
898 struct kvm *kvm = container_of(bl, struct kvm, pm_notifier); kvm_pm_notifier_call() local
903 kvm_init_pm_notifier(struct kvm * kvm) kvm_init_pm_notifier() argument
911 kvm_destroy_pm_notifier(struct kvm * kvm) kvm_destroy_pm_notifier() argument
916 kvm_init_pm_notifier(struct kvm * kvm) kvm_init_pm_notifier() argument
920 kvm_destroy_pm_notifier(struct kvm * kvm) kvm_destroy_pm_notifier() argument
935 kvm_free_memslot(struct kvm * kvm,struct kvm_memory_slot * slot) kvm_free_memslot() argument
947 kvm_free_memslots(struct kvm * kvm,struct kvm_memslots * slots) kvm_free_memslots() argument
979 kvm_destroy_vm_debugfs(struct kvm * kvm) kvm_destroy_vm_debugfs() argument
997 kvm_create_vm_debugfs(struct kvm * kvm,const char * fdname) kvm_create_vm_debugfs() argument
1073 kvm_arch_pre_destroy_vm(struct kvm * kvm) kvm_arch_pre_destroy_vm() argument
1083 kvm_arch_create_vm_debugfs(struct kvm * kvm) kvm_arch_create_vm_debugfs() argument
1088 kvm_get_bus_for_destruction(struct kvm * kvm,enum kvm_bus idx) kvm_get_bus_for_destruction() argument
1100 struct kvm *kvm = kvm_arch_alloc_vm(); kvm_create_vm() local
1233 kvm_destroy_devices(struct kvm * kvm) kvm_destroy_devices() argument
1254 kvm_destroy_vm(struct kvm * kvm) kvm_destroy_vm() argument
1312 kvm_get_kvm(struct kvm * kvm) kvm_get_kvm() argument
1322 kvm_get_kvm_safe(struct kvm * kvm) kvm_get_kvm_safe() argument
1328 kvm_put_kvm(struct kvm * kvm) kvm_put_kvm() argument
1342 kvm_put_kvm_no_destroy(struct kvm * kvm) kvm_put_kvm_no_destroy() argument
1350 struct kvm *kvm = filp->private_data; kvm_vm_release() local
1358 kvm_trylock_all_vcpus(struct kvm * kvm) kvm_trylock_all_vcpus() argument
1380 kvm_lock_all_vcpus(struct kvm * kvm) kvm_lock_all_vcpus() argument
1405 kvm_unlock_all_vcpus(struct kvm * kvm) kvm_unlock_all_vcpus() argument
1432 kvm_get_inactive_memslots(struct kvm * kvm,int as_id) kvm_get_inactive_memslots() argument
1512 kvm_replace_memslot(struct kvm * kvm,struct kvm_memory_slot * old,struct kvm_memory_slot * new) kvm_replace_memslot() argument
1573 check_memory_region_flags(struct kvm * kvm,const struct kvm_userspace_memory_region2 * mem) check_memory_region_flags() argument
1600 kvm_swap_active_memslots(struct kvm * kvm,int as_id) kvm_swap_active_memslots() argument
1658 kvm_prepare_memory_region(struct kvm * kvm,const struct kvm_memory_slot * old,struct kvm_memory_slot * new,enum kvm_mr_change change) kvm_prepare_memory_region() argument
1696 kvm_commit_memory_region(struct kvm * kvm,struct kvm_memory_slot * old,const struct kvm_memory_slot * new,enum kvm_mr_change change) kvm_commit_memory_region() argument
1773 kvm_activate_memslot(struct kvm * kvm,struct kvm_memory_slot * old,struct kvm_memory_slot * new) kvm_activate_memslot() argument
1798 kvm_invalidate_memslot(struct kvm * kvm,struct kvm_memory_slot * old,struct kvm_memory_slot * invalid_slot) kvm_invalidate_memslot() argument
1840 kvm_create_memslot(struct kvm * kvm,struct kvm_memory_slot * new) kvm_create_memslot() argument
1848 kvm_delete_memslot(struct kvm * kvm,struct kvm_memory_slot * old,struct kvm_memory_slot * invalid_slot) kvm_delete_memslot() argument
1860 kvm_move_memslot(struct kvm * kvm,struct kvm_memory_slot * old,struct kvm_memory_slot * new,struct kvm_memory_slot * invalid_slot) kvm_move_memslot() argument
1873 kvm_update_flags_memslot(struct kvm * kvm,struct kvm_memory_slot * old,struct kvm_memory_slot * new) kvm_update_flags_memslot() argument
1886 kvm_set_memslot(struct kvm * kvm,struct kvm_memory_slot * old,struct kvm_memory_slot * new,enum kvm_mr_change change) kvm_set_memslot() argument
1994 kvm_set_memory_region(struct kvm * kvm,const struct kvm_userspace_memory_region2 * mem) kvm_set_memory_region() argument
2127 kvm_set_internal_memslot(struct kvm * kvm,const struct kvm_userspace_memory_region2 * mem) kvm_set_internal_memslot() argument
2140 kvm_vm_ioctl_set_memory_region(struct kvm * kvm,struct kvm_userspace_memory_region2 * mem) kvm_vm_ioctl_set_memory_region() argument
2158 kvm_get_dirty_log(struct kvm * kvm,struct kvm_dirty_log * log,int * is_dirty,struct kvm_memory_slot ** memslot) kvm_get_dirty_log() argument
2221 kvm_get_dirty_log_protect(struct kvm * kvm,struct kvm_dirty_log * log) kvm_get_dirty_log_protect() argument
2312 kvm_vm_ioctl_get_dirty_log(struct kvm * kvm,struct kvm_dirty_log * log) kvm_vm_ioctl_get_dirty_log() argument
2331 kvm_clear_dirty_log_protect(struct kvm * kvm,struct kvm_clear_dirty_log * log) kvm_clear_dirty_log_protect() argument
2407 kvm_vm_ioctl_clear_dirty_log(struct kvm * kvm,struct kvm_clear_dirty_log * log) kvm_vm_ioctl_clear_dirty_log() argument
2422 kvm_supported_mem_attributes(struct kvm * kvm) kvm_supported_mem_attributes() argument
2434 kvm_range_has_memory_attributes(struct kvm * kvm,gfn_t start,gfn_t end,unsigned long mask,unsigned long attrs) kvm_range_has_memory_attributes() argument
2465 kvm_handle_gfn_range(struct kvm * kvm,struct kvm_mmu_notifier_range * range) kvm_handle_gfn_range() argument
2517 kvm_pre_set_memory_attributes(struct kvm * kvm,struct kvm_gfn_range * range) kvm_pre_set_memory_attributes() argument
2537 kvm_vm_set_mem_attributes(struct kvm * kvm,gfn_t start,gfn_t end,unsigned long attributes) kvm_vm_set_mem_attributes() argument
2599 kvm_vm_ioctl_set_mem_attributes(struct kvm * kvm,struct kvm_memory_attributes * attrs) kvm_vm_ioctl_set_mem_attributes() argument
2628 gfn_to_memslot(struct kvm * kvm,gfn_t gfn) gfn_to_memslot() argument
2668 kvm_is_visible_gfn(struct kvm * kvm,gfn_t gfn) kvm_is_visible_gfn() argument
2741 gfn_to_hva(struct kvm * kvm,gfn_t gfn) gfn_to_hva() argument
2772 gfn_to_hva_prot(struct kvm * kvm,gfn_t gfn,bool * writable) gfn_to_hva_prot() argument
3095 __gfn_to_page(struct kvm * kvm,gfn_t gfn,bool write) __gfn_to_page() argument
3199 kvm_read_guest_page(struct kvm * kvm,gfn_t gfn,void * data,int offset,int len) kvm_read_guest_page() argument
3217 kvm_read_guest(struct kvm * kvm,gpa_t gpa,void * data,unsigned long len) kvm_read_guest() argument
3289 __kvm_write_guest_page(struct kvm * kvm,struct kvm_memory_slot * memslot,gfn_t gfn,const void * data,int offset,int len) __kvm_write_guest_page() argument
3309 kvm_write_guest_page(struct kvm * kvm,gfn_t gfn,const void * data,int offset,int len) kvm_write_guest_page() argument
3327 kvm_write_guest(struct kvm * kvm,gpa_t gpa,const void * data,unsigned long len) kvm_write_guest() argument
3410 kvm_gfn_to_hva_cache_init(struct kvm * kvm,struct gfn_to_hva_cache * ghc,gpa_t gpa,unsigned long len) kvm_gfn_to_hva_cache_init() argument
3418 kvm_write_guest_offset_cached(struct kvm * kvm,struct gfn_to_hva_cache * ghc,void * data,unsigned int offset,unsigned long len) kvm_write_guest_offset_cached() argument
3449 kvm_write_guest_cached(struct kvm * kvm,struct gfn_to_hva_cache * ghc,void * data,unsigned long len) kvm_write_guest_cached() argument
3456 kvm_read_guest_offset_cached(struct kvm * kvm,struct gfn_to_hva_cache * ghc,void * data,unsigned int offset,unsigned long len) kvm_read_guest_offset_cached() argument
3486 kvm_read_guest_cached(struct kvm * kvm,struct gfn_to_hva_cache * ghc,void * data,unsigned long len) kvm_read_guest_cached() argument
3493 kvm_clear_guest(struct kvm * kvm,gpa_t gpa,unsigned long len) kvm_clear_guest() argument
3513 mark_page_dirty_in_slot(struct kvm * kvm,const struct kvm_memory_slot * memslot,gfn_t gfn) mark_page_dirty_in_slot() argument
3539 mark_page_dirty(struct kvm * kvm,gfn_t gfn) mark_page_dirty() argument
3699 struct kvm *kvm = vcpu->kvm; kvm_vcpu_max_halt_poll_ns() local
3963 struct kvm *kvm = me->kvm; kvm_vcpu_on_spin() local
4036 kvm_page_in_dirty_ring(struct kvm * kvm,unsigned long pgoff) kvm_page_in_dirty_ring() argument
4152 kvm_vm_ioctl_create_vcpu(struct kvm * kvm,unsigned long id) kvm_vm_ioctl_create_vcpu() argument
4381 struct kvm *kvm = vcpu->kvm; kvm_wait_for_vcpu_online() local
4751 struct kvm *kvm = dev->kvm; kvm_device_release() local
4805 kvm_ioctl_create_device(struct kvm * kvm,struct kvm_create_device * cd) kvm_ioctl_create_device() argument
4864 kvm_vm_ioctl_check_extension_generic(struct kvm * kvm,long arg) kvm_vm_ioctl_check_extension_generic() argument
4941 kvm_vm_ioctl_enable_dirty_log_ring(struct kvm * kvm,u32 size) kvm_vm_ioctl_enable_dirty_log_ring() argument
4979 kvm_vm_ioctl_reset_dirty_pages(struct kvm * kvm) kvm_vm_ioctl_reset_dirty_pages() argument
5004 kvm_vm_ioctl_enable_cap(struct kvm * kvm,struct kvm_enable_cap * cap) kvm_vm_ioctl_enable_cap() argument
5010 kvm_are_all_memslots_empty(struct kvm * kvm) kvm_are_all_memslots_empty() argument
5025 kvm_vm_ioctl_enable_cap_generic(struct kvm * kvm,struct kvm_enable_cap * cap) kvm_vm_ioctl_enable_cap_generic() argument
5096 struct kvm *kvm = file->private_data; kvm_vm_stats_read() local
5105 struct kvm *kvm = file->private_data; kvm_vm_stats_release() local
5118 kvm_vm_ioctl_get_stats_fd(struct kvm * kvm) kvm_vm_ioctl_get_stats_fd() argument
5151 struct kvm *kvm = filp->private_data; kvm_vm_ioctl() local
5416 struct kvm *kvm = filp->private_data; kvm_vm_compat_ioctl() local
5484 struct kvm *kvm; kvm_dev_ioctl_create_vm() local
5869 kvm_get_bus_srcu(struct kvm * kvm,enum kvm_bus idx) kvm_get_bus_srcu() argument
5977 kvm_io_bus_register_dev(struct kvm * kvm,enum kvm_bus bus_idx,gpa_t addr,int len,struct kvm_io_device * dev) kvm_io_bus_register_dev() argument
6020 kvm_io_bus_unregister_dev(struct kvm * kvm,enum kvm_bus bus_idx,struct kvm_io_device * dev) kvm_io_bus_unregister_dev() argument
6068 kvm_io_bus_get_dev(struct kvm * kvm,enum kvm_bus bus_idx,gpa_t addr) kvm_io_bus_get_dev() argument
6122 kvm_get_stat_per_vm(struct kvm * kvm,size_t offset,u64 * val) kvm_get_stat_per_vm() argument
6129 kvm_clear_stat_per_vm(struct kvm * kvm,size_t offset) kvm_clear_stat_per_vm() argument
6136 kvm_get_stat_per_vcpu(struct kvm * kvm,size_t offset,u64 * val) kvm_get_stat_per_vcpu() argument
6149 kvm_clear_stat_per_vcpu(struct kvm * kvm,size_t offset) kvm_clear_stat_per_vcpu() argument
6219 struct kvm *kvm; vm_stat_get() local
6235 struct kvm *kvm; vm_stat_clear() local
6255 struct kvm *kvm; vcpu_stat_get() local
6271 struct kvm *kvm; vcpu_stat_clear() local
6289 kvm_uevent_notify_change(unsigned int type,struct kvm * kvm) kvm_uevent_notify_change() argument
[all...]
H A Dirqchip.c21 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()
29 lockdep_is_held(&kvm->irq_lock)); 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
52 if (!kvm_arch_irqchip_in_kernel(kvm) || (msi->flags & ~KVM_MSI_VALID_DEVID)) in kvm_send_userspace_msi()
61 return kvm_set_msi(&route, kvm, KVM_USERSPACE_IRQ_SOURCE_ID, 1, false); in kvm_send_userspace_msi()
70 int kvm_set_irq(struct kvm *kvm, int irq_source_id, u32 irq, int level, in kvm_set_irq() argument
82 idx = srcu_read_lock(&kvm->irq_srcu); in kvm_set_irq()
[all …]
H A Dkvm_mm.h6 #include <linux/kvm.h>
17 #define KVM_MMU_LOCK_INIT(kvm) rwlock_init(&(kvm)->mmu_lock)
18 #define KVM_MMU_LOCK(kvm) write_lock(&(kvm)->mmu_lock) argument
19 #define KVM_MMU_UNLOCK(kvm) write_unlock(&(kvm)->mmu_lock) argument
21 #define KVM_MMU_LOCK_INIT(kvm) spin_lock_init(&(kvm)->mmu_lock)
22 #define KVM_MMU_LOCK(kvm) spin_loc
14 KVM_MMU_LOCK_INIT(kvm) global() argument
15 KVM_MMU_LOCK(kvm) global() argument
16 KVM_MMU_UNLOCK(kvm) global() argument
20 KVM_MMU_UNLOCK(kvm) global() argument
63 gfn_to_pfn_cache_invalidate_start(struct kvm * kvm,unsigned long start,unsigned long end) gfn_to_pfn_cache_invalidate_start() argument
83 kvm_gmem_bind(struct kvm * kvm,struct kvm_memory_slot * slot,unsigned int fd,loff_t offset) kvm_gmem_bind() argument
[all...]
H A Dcoalesced_mmio.c48 struct kvm_coalesced_mmio_ring *ring = dev->kvm->coalesced_mmio_ring; in coalesced_mmio_write()
54 spin_lock(&dev->kvm->ring_lock); in coalesced_mmio_write()
65 spin_unlock(&dev->kvm->ring_lock); in coalesced_mmio_write()
77 spin_unlock(&dev->kvm->ring_lock); in coalesced_mmio_write()
95 int kvm_coalesced_mmio_init(struct kvm *kvm) in kvm_coalesced_mmio_init() argument
103 kvm->coalesced_mmio_ring = page_address(page); in kvm_coalesced_mmio_init()
110 spin_lock_init(&kvm->ring_lock); in kvm_coalesced_mmio_init()
111 INIT_LIST_HEAD(&kvm->coalesced_zones); in kvm_coalesced_mmio_init()
116 void kvm_coalesced_mmio_free(struct kvm *kvm) in kvm_coalesced_mmio_free() argument
118 if (kvm->coalesced_mmio_ring) in kvm_coalesced_mmio_free()
[all …]
H A Dcoalesced_mmio.h21 struct kvm *kvm; member
25 int kvm_coalesced_mmio_init(struct kvm *kvm);
26 void kvm_coalesced_mmio_free(struct kvm *kvm);
27 int kvm_vm_ioctl_register_coalesced_mmio(struct kvm *kvm,
29 int kvm_vm_ioctl_unregister_coalesced_mmio(struct kvm *kvm,
34 static inline int kvm_coalesced_mmio_init(struct kvm *kvm) { return 0; } in kvm_coalesced_mmio_init() argument
35 static inline void kvm_coalesced_mmio_free(struct kvm *kvm) { } in kvm_coalesced_mmio_free() argument
/linux/arch/s390/kvm/s390/
H A Ds390.c13 #define pr_fmt(fmt) "kvm-s390: " fmt
22 #include <linux/kvm.h>
267 /* available cpu features supported by kvm */
302 * disable preemption whenever we touch the epoch of kvm and the VCPUs,
308 struct kvm *kvm; in kvm_clock_sync() local
313 list_for_each_entry(kvm, &vm_list, vm_list) { in kvm_clock_sync()
314 kvm_for_each_vcpu(i, vcpu, kvm) { in kvm_clock_sync()
317 kvm->arch.epoch = vcpu->arch.sie_block->epoch; in kvm_clock_sync()
318 kvm in kvm_clock_sync()
562 kvm_s390_keyop(struct kvm_s390_mmu_cache * mc,struct kvm * kvm,int op,unsigned long addr,union skey skey) kvm_s390_keyop() argument
603 kvm_vm_ioctl_check_extension(struct kvm * kvm,long ext) kvm_vm_ioctl_check_extension() argument
733 kvm_arch_sync_dirty_log(struct kvm * kvm,struct kvm_memory_slot * memslot) kvm_arch_sync_dirty_log() argument
747 kvm_vm_ioctl_get_dirty_log(struct kvm * kvm,struct kvm_dirty_log * log) kvm_vm_ioctl_get_dirty_log() argument
753 icpt_operexc_on_all_vcpus(struct kvm * kvm) icpt_operexc_on_all_vcpus() argument
763 kvm_vm_ioctl_enable_cap(struct kvm * kvm,struct kvm_enable_cap * cap) kvm_vm_ioctl_enable_cap() argument
949 kvm_s390_get_mem_control(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_mem_control() argument
968 kvm_s390_set_mem_control(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_mem_control() argument
1063 kvm_s390_vcpu_crypto_reset_all(struct kvm * kvm) kvm_s390_vcpu_crypto_reset_all() argument
1079 kvm_s390_vm_set_crypto(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_vm_set_crypto() argument
1159 kvm_s390_vcpu_pci_enable_interp(struct kvm * kvm) kvm_s390_vcpu_pci_enable_interp() argument
1185 kvm_s390_sync_request_broadcast(struct kvm * kvm,int req) kvm_s390_sync_request_broadcast() argument
1199 kvm_s390_vm_start_migration(struct kvm * kvm) kvm_s390_vm_start_migration() argument
1245 kvm_s390_vm_stop_migration(struct kvm * kvm) kvm_s390_vm_stop_migration() argument
1272 kvm_s390_vm_set_migration(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_vm_set_migration() argument
1294 kvm_s390_vm_get_migration(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_vm_get_migration() argument
1309 kvm_s390_set_tod_ext(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_tod_ext() argument
1326 kvm_s390_set_tod_high(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_tod_high() argument
1341 kvm_s390_set_tod_low(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_tod_low() argument
1354 kvm_s390_set_tod(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_tod() argument
1391 kvm_s390_get_tod_clock(struct kvm * kvm,struct kvm_s390_vm_tod_clock * gtod) kvm_s390_get_tod_clock() argument
1411 kvm_s390_get_tod_ext(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_tod_ext() argument
1425 kvm_s390_get_tod_high(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_tod_high() argument
1437 kvm_s390_get_tod_low(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_tod_low() argument
1449 kvm_s390_get_tod(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_tod() argument
1473 kvm_s390_set_processor(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_processor() argument
1519 kvm_s390_set_processor_feat(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_processor_feat() argument
1545 kvm_s390_set_processor_subfunc(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_processor_subfunc() argument
1634 kvm_s390_set_uv_feat(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_uv_feat() argument
1658 kvm_s390_set_cpu_model(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_cpu_model() argument
1679 kvm_s390_get_processor(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_processor() argument
1707 kvm_s390_get_machine(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_machine() argument
1741 kvm_s390_get_processor_feat(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_processor_feat() argument
1756 kvm_s390_get_machine_feat(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_machine_feat() argument
1771 kvm_s390_get_processor_subfunc(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_processor_subfunc() argument
1842 kvm_s390_get_machine_subfunc(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_machine_subfunc() argument
1913 kvm_s390_get_processor_uv_feat(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_processor_uv_feat() argument
1925 kvm_s390_get_machine_uv_feat(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_machine_uv_feat() argument
1940 kvm_s390_get_cpu_model(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_cpu_model() argument
1982 kvm_s390_update_topology_change_report(struct kvm * kvm,bool val) kvm_s390_update_topology_change_report() argument
1995 kvm_s390_set_topo_change_indication(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_set_topo_change_indication() argument
2005 kvm_s390_get_topo_change_indication(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_get_topo_change_indication() argument
2018 kvm_s390_vm_set_attr(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_vm_set_attr() argument
2049 kvm_s390_vm_get_attr(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_vm_get_attr() argument
2077 kvm_s390_vm_has_attr(struct kvm * kvm,struct kvm_device_attr * attr) kvm_s390_vm_has_attr() argument
2155 kvm_s390_get_skeys(struct kvm * kvm,struct kvm_s390_skeys * args) kvm_s390_get_skeys() argument
2195 kvm_s390_set_skeys(struct kvm * kvm,struct kvm_s390_skeys * args) kvm_s390_set_skeys() argument
2265 kvm_s390_get_cmma_bits(struct kvm * kvm,struct kvm_s390_cmma_log * args) kvm_s390_get_cmma_bits() argument
2322 kvm_s390_set_cmma_bits(struct kvm * kvm,const struct kvm_s390_cmma_log * args) kvm_s390_set_cmma_bits() argument
2380 kvm_s390_cpus_from_pv(struct kvm * kvm,u16 * rc,u16 * rrc) kvm_s390_cpus_from_pv() argument
2421 kvm_s390_cpus_to_pv(struct kvm * kvm,u16 * rc,u16 * rrc) kvm_s390_cpus_to_pv() argument
2492 kvm_s390_pv_dmp(struct kvm * kvm,struct kvm_pv_cmd * cmd,struct kvm_s390_pv_dmp dmp) kvm_s390_pv_dmp() argument
2554 kvm_s390_handle_pv(struct kvm * kvm,struct kvm_pv_cmd * cmd) kvm_s390_handle_pv() argument
2805 kvm_s390_vm_mem_op_abs(struct kvm * kvm,struct kvm_s390_mem_op * mop) kvm_s390_vm_mem_op_abs() argument
2841 kvm_s390_vm_mem_op_cmpxchg(struct kvm * kvm,struct kvm_s390_mem_op * mop) kvm_s390_vm_mem_op_cmpxchg() argument
2875 kvm_s390_vm_mem_op(struct kvm * kvm,struct kvm_s390_mem_op * mop) kvm_s390_vm_mem_op() argument
2902 struct kvm *kvm = filp->private_data; kvm_arch_vm_ioctl() local
3100 kvm_s390_set_crycb_format(struct kvm * kvm) kvm_s390_set_crycb_format() argument
3132 kvm_arch_crypto_set_masks(struct kvm * kvm,unsigned long * apm,unsigned long * aqm,unsigned long * adm) kvm_arch_crypto_set_masks() argument
3182 kvm_arch_crypto_clear_masks(struct kvm * kvm) kvm_arch_crypto_clear_masks() argument
3207 kvm_s390_crypto_init(struct kvm * kvm) kvm_s390_crypto_init() argument
3225 sca_dispose(struct kvm * kvm) sca_dispose() argument
3232 kvm_arch_free_vm(struct kvm * kvm) kvm_arch_free_vm() argument
3240 kvm_arch_init_vm(struct kvm * kvm,unsigned long type) kvm_arch_init_vm() argument
3407 kvm_arch_destroy_vm(struct kvm * kvm) kvm_arch_destroy_vm() argument
3467 sca_can_add_vcpu(struct kvm * kvm,unsigned int id) sca_can_add_vcpu() argument
3600 kvm_has_pckmo_subfunc(struct kvm * kvm,unsigned long nr) kvm_has_pckmo_subfunc() argument
3608 kvm_has_pckmo_ecc(struct kvm * kvm) kvm_has_pckmo_ecc() argument
3619 kvm_has_pckmo_hmac(struct kvm * kvm) kvm_has_pckmo_hmac() argument
3771 kvm_arch_vcpu_precreate(struct kvm * kvm,unsigned int id) kvm_arch_vcpu_precreate() argument
4414 __kvm_s390_set_tod_clock(struct kvm * kvm,const struct kvm_s390_vm_tod_clock * gtod) __kvm_s390_set_tod_clock() argument
4442 kvm_s390_try_set_tod_clock(struct kvm * kvm,const struct kvm_s390_vm_tod_clock * gtod) kvm_s390_try_set_tod_clock() argument
5166 __disable_ibs_on_all_vcpus(struct kvm * kvm) __disable_ibs_on_all_vcpus() argument
5742 kvm_arch_irqchip_in_kernel(struct kvm * kvm) kvm_arch_irqchip_in_kernel() argument
5748 kvm_arch_prepare_memory_region(struct kvm * kvm,const struct kvm_memory_slot * old,struct kvm_memory_slot * new,enum kvm_mr_change change) kvm_arch_prepare_memory_region() argument
5769 kvm_s390_update_cmma_dirty(struct kvm * kvm,struct kvm_memory_slot * old) kvm_s390_update_cmma_dirty() argument
5780 kvm_arch_commit_memory_region(struct kvm * kvm,struct kvm_memory_slot * old,const struct kvm_memory_slot * new,enum kvm_mr_change change) kvm_arch_commit_memory_region() argument
5839 kvm_test_age_gfn(struct kvm * kvm,struct kvm_gfn_range * range) kvm_test_age_gfn() argument
5853 kvm_age_gfn(struct kvm * kvm,struct kvm_gfn_range * range) kvm_age_gfn() argument
5871 kvm_unmap_gfn_range(struct kvm * kvm,struct kvm_gfn_range * range) kvm_unmap_gfn_range() argument
[all...]
/linux/arch/powerpc/kvm/
H A Dbook3s_hv_uvmem.c233 struct kvm *kvm; member
248 int kvmppc_uvmem_slot_init(struct kvm *kvm, const struct kvm_memory_slot *slot) in kvmppc_uvmem_slot_init() argument
263 mutex_lock(&kvm->arch.uvmem_lock); in kvmppc_uvmem_slot_init()
264 list_add(&p->list, &kvm->arch.uvmem_pfns); in kvmppc_uvmem_slot_init()
265 mutex_unlock(&kvm->arch.uvmem_lock); in kvmppc_uvmem_slot_init()
273 void kvmppc_uvmem_slot_free(struct kvm *kvm, const struct kvm_memory_slot *slot) in kvmppc_uvmem_slot_free() argument
277 mutex_lock(&kvm->arch.uvmem_lock); in kvmppc_uvmem_slot_free()
278 list_for_each_entry_safe(p, next, &kvm->arch.uvmem_pfns, list) { in kvmppc_uvmem_slot_free()
286 mutex_unlock(&kvm->arch.uvmem_lock); in kvmppc_uvmem_slot_free()
289 static void kvmppc_mark_gfn(unsigned long gfn, struct kvm *kvm, in kvmppc_mark_gfn() argument
[all …]
H A Dbook3s_64_mmu_radix.c102 int lpid = vcpu->kvm->arch.lpid; in kvmhv_copy_tofrom_guest_radix()
146 struct kvm *kvm = vcpu->kvm; in kvmppc_mmu_walk_radix_tree() local
180 ret = kvm_read_guest(kvm, addr, &rpte, sizeof(rpte)); in kvmppc_mmu_walk_radix_tree()
242 struct kvm *kvm = vcpu->kvm; in kvmppc_mmu_radix_translate_table() local
258 ret = kvm_read_guest(kvm, ptbl, &entry, sizeof(entry)); in kvmppc_mmu_radix_translate_table()
289 vcpu->kvm->arch.process_table, pid, &pte); in kvmppc_mmu_radix_xlate()
315 void kvmppc_radix_tlbie_page(struct kvm *kvm, unsigned long addr, in kvmppc_radix_tlbie_page() argument
353 static void kvmppc_radix_flush_pwc(struct kvm *kvm, u64 lpid) in kvmppc_radix_flush_pwc() argument
374 static unsigned long kvmppc_radix_update_pte(struct kvm *kvm, pte_t *ptep, in kvmppc_radix_update_pte() argument
381 static void kvmppc_radix_set_pte_at(struct kvm *kvm, unsigned long addr, in kvmppc_radix_set_pte_at() argument
[all …]
H A DMakefile6 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 := \
53 kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
58 kvm-book3s_64-builtin-objs-$(CONFIG_KVM_BOOK3S_64_HANDLER) += \
62 kvm-hv-y += \
[all …]
H A Dbook3s_64_mmu_hv.c47 static long kvmppc_virtmode_do_h_enter(struct kvm *kvm, unsigned long flags,
53 struct kvm *kvm; member
118 void kvmppc_set_hpt(struct kvm *kvm, struct kvm_hpt_info *info) in kvmppc_set_hpt() argument
120 atomic64_set(&kvm->arch.mmio_update, 0); in kvmppc_set_hpt()
121 kvm->arch.hpt = *info; in kvmppc_set_hpt()
122 kvm->arch.sdr1 = __pa(info->virt) | (info->order - 18); in kvmppc_set_hpt()
125 info->virt, (long)info->order, kvm->arch.lpid); in kvmppc_set_hpt()
128 int kvmppc_alloc_reset_hpt(struct kvm *kvm, int order) in kvmppc_alloc_reset_hpt() argument
133 mutex_lock(&kvm->arch.mmu_setup_lock); in kvmppc_alloc_reset_hpt()
134 if (kvm->arch.mmu_ready) { in kvmppc_alloc_reset_hpt()
[all …]
H A Dbook3s_hv_rm_mmu.c32 static int global_invalidates(struct kvm *kvm) in global_invalidates() argument
44 if (kvm->arch.online_vcores == 1 && local_paca->kvm_hstate.kvm_vcpu) in global_invalidates()
56 cpumask_setall(&kvm->arch.need_tlb_flush); in global_invalidates()
58 cpumask_clear_cpu(cpu, &kvm->arch.need_tlb_flush); in global_invalidates()
68 void kvmppc_add_revmap_chain(struct kvm *kvm, struct revmap_entry *rev, in kvmppc_add_revmap_chain() argument
76 head = &kvm->arch.hpt.rev[i]; in kvmppc_add_revmap_chain()
79 tail = &kvm->arch.hpt.rev[head->back]; in kvmppc_add_revmap_chain()
109 static void kvmppc_set_dirty_from_hpte(struct kvm *kvm, in kvmppc_set_dirty_from_hpte() argument
118 memslot = __gfn_to_memslot(kvm_memslots_raw(kvm), gfn); in kvmppc_set_dirty_from_hpte()
124 static unsigned long *revmap_for_hpte(struct kvm *kvm, unsigned long hpte_v, in revmap_for_hpte() argument
[all …]
H A Dbook3s_hv_nested.c277 *lpcr = kvmppc_filter_lpcr_hv(vcpu->kvm, in load_l2_hv_regs()
306 if (vcpu->kvm->arch.l1_ptcr == 0) in kvmhv_enter_nested_guest()
350 l2 = kvmhv_get_nested(vcpu->kvm, l2_hv.lpid, true); in kvmhv_enter_nested_guest()
570 struct kvm *kvm = vcpu->kvm; in kvmhv_set_partition_table() local
575 srcu_idx = srcu_read_lock(&kvm->srcu); in kvmhv_set_partition_table()
578 !kvm_is_visible_gfn(vcpu->kvm, (ptcr & PRTB_MASK) >> PAGE_SHIFT)) in kvmhv_set_partition_table()
580 srcu_read_unlock(&kvm->srcu, srcu_idx); in kvmhv_set_partition_table()
582 kvm->arch.l1_ptcr = ptcr; in kvmhv_set_partition_table()
619 gp = kvmhv_get_nested(vcpu->kvm, l1_lpid, false); in kvmhv_copy_tofrom_guest_nested()
675 struct kvm *kvm = gp->l1_host; in kvmhv_update_ptbl_cache() local
[all …]
H A Dbook3s_64_vio.c36 static struct kvmppc_spapr_tce_table *kvmppc_find_table(struct kvm *kvm, in kvmppc_find_table() argument
41 list_for_each_entry_lockless(stt, &kvm->arch.spapr_tce_tables, list) in kvmppc_find_table()
81 void kvm_spapr_tce_release_iommu_group(struct kvm *kvm, in kvm_spapr_tce_release_iommu_group() argument
90 list_for_each_entry_rcu(stt, &kvm->arch.spapr_tce_tables, list) { in kvm_spapr_tce_release_iommu_group()
109 long kvm_spapr_tce_attach_iommu_group(struct kvm *kvm, int tablefd, in kvm_spapr_tce_attach_iommu_group() argument
124 list_for_each_entry_rcu(stt, &kvm->arch.spapr_tce_tables, list) { in kvm_spapr_tce_attach_iommu_group()
260 struct kvm *kvm = stt->kvm; in kvm_spapr_tce_release() local
262 mutex_lock(&kvm->lock); in kvm_spapr_tce_release()
264 mutex_unlock(&kvm->lock); in kvm_spapr_tce_release()
274 account_locked_vm(kvm->mm, in kvm_spapr_tce_release()
[all …]
/linux/arch/riscv/kvm/
H A Dvm.c31 int kvm_arch_init_vm(struct kvm *kvm, unsigned long type) in kvm_arch_init_vm() argument
35 r = kvm_riscv_mmu_alloc_pgd(kvm); in kvm_arch_init_vm()
39 r = kvm_riscv_gstage_vmid_init(kvm); in kvm_arch_init_vm()
41 kvm_riscv_mmu_free_pgd(kvm); in kvm_arch_init_vm()
45 kvm_riscv_aia_init_vm(kvm); in kvm_arch_init_vm()
47 kvm_riscv_guest_timer_init(kvm); in kvm_arch_init_vm()
52 void kvm_arch_destroy_vm(struct kvm *kvm) in kvm_arch_destroy_vm() argument
54 kvm_destroy_vcpus(kvm); in kvm_arch_destroy_vm()
56 kvm_riscv_aia_destroy_vm(kvm); in kvm_arch_destroy_vm()
59 int kvm_vm_ioctl_irq_line(struct kvm *kvm, struct kvm_irq_level *irql, in kvm_vm_ioctl_irq_line() argument
[all …]
/linux/arch/arm64/kvm/
H A Dnested.c8 #include <linux/kvm.h>
48 int kvm_init_nested(struct kvm *kvm) in kvm_init_nested() argument
50 kvm->arch.nested_mmus = kvmalloc_objs(struct kvm_s2_mmu *, in kvm_init_nested()
53 kvm->arch.nested_mmus_size = 0; in kvm_init_nested()
54 atomic_set(&kvm->arch.vncr_tlb_count, 0);
56 return kvm->arch.nested_mmus ? 0 : -ENOMEM; in init_nested_s2_mmu()
59 void kvm_destroy_nested(struct kvm *kvm) in init_nested_s2_mmu()
61 for (int i = 0; i < kvm in init_nested_s2_mmu()
55 init_nested_s2_mmu(struct kvm * kvm,struct kvm_s2_mmu * mmu) init_nested_s2_mmu() argument
72 struct kvm *kvm = vcpu->kvm; kvm_vcpu_init_nested() local
439 vtcr_to_tg0_pgshift(struct kvm * kvm,u64 vtcr) vtcr_to_tg0_pgshift() argument
470 vtcr_to_tg0_pgsize(struct kvm * kvm,u64 vtcr) vtcr_to_tg0_pgsize() argument
680 struct kvm *kvm = kvm_s2_mmu_to_kvm(mmu); compute_tlb_inval_range() local
737 kvm_s2_mmu_iterate_by_vmid(struct kvm * kvm,u16 vmid,const union tlbi_info * info,void (* tlbi_callback)(struct kvm_s2_mmu *,const union tlbi_info *)) kvm_s2_mmu_iterate_by_vmid() argument
759 struct kvm *kvm = vcpu->kvm; lookup_s2_mmu() local
808 struct kvm *kvm = vcpu->kvm; get_s2_mmu_nested() local
1021 invalidate_vncr(struct kvm * kvm,struct vncr_tlb * vt) invalidate_vncr() argument
1049 kvm_for_each_vncr_tlb(idx,vcpup,tlbp,kvm) global() argument
1054 kvm_invalidate_vncr_ipa(struct kvm * kvm,u64 start,u64 end) kvm_invalidate_vncr_ipa() argument
1089 invalidate_vncr_va(struct kvm * kvm,struct s1e2_tlbi_scope * scope) invalidate_vncr_va() argument
1263 kvm_nested_s2_wp(struct kvm * kvm) kvm_nested_s2_wp() argument
1282 kvm_nested_s2_unmap(struct kvm * kvm,bool may_block) kvm_nested_s2_unmap() argument
1301 kvm_nested_s2_flush(struct kvm * kvm) kvm_nested_s2_flush() argument
1318 kvm_arch_flush_shadow_all(struct kvm * kvm) kvm_arch_flush_shadow_all() argument
1676 limit_nv_id_reg(struct kvm * kvm,u32 reg,u64 val) limit_nv_id_reg() argument
1860 set_sysreg_masks(struct kvm * kvm,int sr,struct resx resx) set_sysreg_masks() argument
1871 struct kvm *kvm = vcpu->kvm; kvm_init_nv_sysregs() local
[all...]
/linux/tools/perf/
H A Dbuiltin-kvm.c27 #include "util/kvm-stat.h"
516 static void print_result(struct perf_kvm_stat *kvm);
585 static void kvm_display(struct perf_kvm_stat *kvm) in kvm_display()
588 print_result(kvm); in kvm_display()
595 static void kvm_display(struct perf_kvm_stat *kvm) in kvm_display()
598 print_result(kvm);
614 filename = "perf.data.kvm"; in get_filename_for_perf_kvm()
621 static bool register_kvm_events_ops(struct perf_kvm_stat *kvm, uint16_t e_machine) in register_kvm_events_ops()
626 if (!strcmp(events_ops->name, kvm->report_event)) { in register_kvm_events_ops()
627 kvm in register_kvm_events_ops()
583 kvm_display(struct perf_kvm_stat * kvm) kvm_display() argument
593 kvm_display(struct perf_kvm_stat * kvm) kvm_display() argument
619 register_kvm_events_ops(struct perf_kvm_stat * kvm,uint16_t e_machine) register_kvm_events_ops() argument
721 find_create_kvm_event(struct perf_kvm_stat * kvm,struct event_key * key,struct perf_sample * sample) find_create_kvm_event() argument
755 handle_begin_event(struct perf_kvm_stat * kvm,struct vcpu_event_record * vcpu_record,struct event_key * key,struct perf_sample * sample) handle_begin_event() argument
788 update_kvm_event(struct perf_kvm_stat * kvm,struct kvm_event * event,int vcpu_id,u64 time_diff) update_kvm_event() argument
808 is_child_event(struct perf_kvm_stat * kvm,struct evsel * evsel,struct perf_sample * sample,struct event_key * key) is_child_event() argument
830 handle_child_event(struct perf_kvm_stat * kvm,struct vcpu_event_record * vcpu_record,struct event_key * key,struct perf_sample * sample) handle_child_event() argument
856 handle_end_event(struct perf_kvm_stat * kvm,struct vcpu_event_record * vcpu_record,struct event_key * key,struct perf_sample * sample) handle_end_event() argument
942 handle_kvm_event(struct perf_kvm_stat * kvm,struct thread * thread,struct evsel * evsel,struct perf_sample * sample) handle_kvm_event() argument
972 is_valid_key(struct perf_kvm_stat * kvm) is_valid_key() argument
1006 sort_result(struct perf_kvm_stat * kvm) sort_result() argument
1019 print_vcpu_info(struct perf_kvm_stat * kvm) print_vcpu_info() argument
1054 print_result(struct perf_kvm_stat * kvm) print_result() argument
1117 struct perf_kvm_stat *kvm = container_of(tool, struct perf_kvm_stat, tool); process_lost_event() local
1124 skip_sample(struct perf_kvm_stat * kvm,struct perf_sample * sample) skip_sample() argument
1141 struct perf_kvm_stat *kvm = container_of(tool, struct perf_kvm_stat, process_sample_event() local
1166 cpu_isa_config(struct perf_kvm_stat * kvm) cpu_isa_config() argument
1214 perf_kvm__mmap_read_idx(struct perf_kvm_stat * kvm,int idx,u64 * mmap_time) perf_kvm__mmap_read_idx() argument
1264 perf_kvm__mmap_read(struct perf_kvm_stat * kvm) perf_kvm__mmap_read() argument
1314 perf_kvm__timerfd_create(struct perf_kvm_stat * kvm) perf_kvm__timerfd_create() argument
1341 perf_kvm__handle_timerfd(struct perf_kvm_stat * kvm) perf_kvm__handle_timerfd() argument
1408 kvm_events_live_report(struct perf_kvm_stat * kvm) kvm_events_live_report() argument
1488 kvm_live_open_events(struct perf_kvm_stat * kvm) kvm_live_open_events() argument
1549 read_events(struct perf_kvm_stat * kvm) read_events() argument
1598 parse_target_str(struct perf_kvm_stat * kvm) parse_target_str() argument
1611 kvm_events_report_vcpu(struct perf_kvm_stat * kvm) kvm_events_report_vcpu() argument
1649 kvm_events_record(struct perf_kvm_stat * kvm,int argc,const char ** argv) kvm_events_record() argument
1729 kvm_events_report(struct perf_kvm_stat * kvm,int argc,const char ** argv) kvm_events_report() argument
1821 kvm_events_live(struct perf_kvm_stat * kvm,int argc,const char ** argv) kvm_events_live() argument
1965 struct perf_kvm_stat kvm = { kvm_cmd_stat() local
[all...]
/linux/include/linux/
H A Dkvm_dirty_ring.h35 static inline u32 kvm_dirty_ring_get_rsvd_entries(struct kvm *kvm) in kvm_dirty_ring_get_rsvd_entries() argument
40 static inline bool kvm_use_dirty_bitmap(struct kvm *kvm) in kvm_use_dirty_bitmap() argument
45 static inline int kvm_dirty_ring_alloc(struct kvm *kvm, struct kvm_dirty_ring *ring, in kvm_dirty_ring_alloc() argument
51 static inline int kvm_dirty_ring_reset(struct kvm *kvm, in kvm_dirty_ring_reset() argument
75 int kvm_cpu_dirty_log_size(struct kvm *kvm);
76 bool kvm_use_dirty_bitmap(struct kvm *kvm);
77 bool kvm_arch_allow_write_without_running_vcpu(struct kvm *kvm);
78 u32 kvm_dirty_ring_get_rsvd_entries(struct kvm *kvm);
79 int kvm_dirty_ring_alloc(struct kvm *kvm, struct kvm_dirty_ring *ring,
81 int kvm_dirty_ring_reset(struct kvm *kvm, struct kvm_dirty_ring *ring,

123456789