Lines Matching refs:kvm

174 int kvm_io_bus_register_dev(struct kvm *kvm, enum kvm_bus bus_idx, gpa_t addr,
176 int kvm_io_bus_unregister_dev(struct kvm *kvm, enum kvm_bus bus_idx,
217 struct kvm *kvm; member
311 struct kvm *kvm, int irq_source_id, int level,
346 struct kvm { struct
414 static inline struct kvm_vcpu *kvm_get_vcpu(struct kvm *kvm, int i) in kvm_get_vcpu() argument
417 return kvm->vcpus[i]; in kvm_get_vcpu()
420 #define kvm_for_each_vcpu(idx, vcpup, kvm) \ argument
422 idx < atomic_read(&kvm->online_vcpus) && \
423 (vcpup = kvm_get_vcpu(kvm, idx)) != NULL; \
426 static inline struct kvm_vcpu *kvm_get_vcpu_by_id(struct kvm *kvm, int id) in kvm_get_vcpu_by_id() argument
431 kvm_for_each_vcpu(i, vcpu, kvm) in kvm_get_vcpu_by_id()
442 int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id);
449 void kvm_vcpu_request_scan_ioapic(struct kvm *kvm);
451 static inline void kvm_vcpu_request_scan_ioapic(struct kvm *kvm) in kvm_vcpu_request_scan_ioapic() argument
473 void kvm_get_kvm(struct kvm *kvm);
474 void kvm_put_kvm(struct kvm *kvm);
476 static inline struct kvm_memslots *kvm_memslots(struct kvm *kvm) in kvm_memslots() argument
478 return rcu_dereference_check(kvm->memslots, in kvm_memslots()
479 srcu_read_lock_held(&kvm->srcu) in kvm_memslots()
480 || lockdep_is_held(&kvm->slots_lock)); in kvm_memslots()
513 int kvm_set_memory_region(struct kvm *kvm,
515 int __kvm_set_memory_region(struct kvm *kvm,
517 void kvm_arch_free_memslot(struct kvm *kvm, struct kvm_memory_slot *free,
519 int kvm_arch_create_memslot(struct kvm *kvm, struct kvm_memory_slot *slot,
521 void kvm_arch_memslots_updated(struct kvm *kvm);
522 int kvm_arch_prepare_memory_region(struct kvm *kvm,
526 void kvm_arch_commit_memory_region(struct kvm *kvm,
533 void kvm_arch_flush_shadow_all(struct kvm *kvm);
535 void kvm_arch_flush_shadow_memslot(struct kvm *kvm,
538 int gfn_to_page_many_atomic(struct kvm *kvm, gfn_t gfn, struct page **pages,
541 struct page *gfn_to_page(struct kvm *kvm, gfn_t gfn);
542 unsigned long gfn_to_hva(struct kvm *kvm, gfn_t gfn);
543 unsigned long gfn_to_hva_prot(struct kvm *kvm, gfn_t gfn, bool *writable);
551 pfn_t gfn_to_pfn_atomic(struct kvm *kvm, gfn_t gfn);
552 pfn_t gfn_to_pfn_async(struct kvm *kvm, gfn_t gfn, bool *async,
554 pfn_t gfn_to_pfn(struct kvm *kvm, gfn_t gfn);
555 pfn_t gfn_to_pfn_prot(struct kvm *kvm, gfn_t gfn, bool write_fault,
565 int kvm_read_guest_page(struct kvm *kvm, gfn_t gfn, void *data, int offset,
567 int kvm_read_guest_atomic(struct kvm *kvm, gpa_t gpa, void *data,
569 int kvm_read_guest(struct kvm *kvm, gpa_t gpa, void *data, unsigned long len);
570 int kvm_read_guest_cached(struct kvm *kvm, struct gfn_to_hva_cache *ghc,
572 int kvm_write_guest_page(struct kvm *kvm, gfn_t gfn, const void *data,
574 int kvm_write_guest(struct kvm *kvm, gpa_t gpa, const void *data,
576 int kvm_write_guest_cached(struct kvm *kvm, struct gfn_to_hva_cache *ghc,
578 int kvm_gfn_to_hva_cache_init(struct kvm *kvm, struct gfn_to_hva_cache *ghc,
580 int kvm_clear_guest_page(struct kvm *kvm, gfn_t gfn, int offset, int len);
581 int kvm_clear_guest(struct kvm *kvm, gpa_t gpa, unsigned long len);
582 struct kvm_memory_slot *gfn_to_memslot(struct kvm *kvm, gfn_t gfn);
583 int kvm_is_visible_gfn(struct kvm *kvm, gfn_t gfn);
584 unsigned long kvm_host_page_size(struct kvm *kvm, gfn_t gfn);
585 void mark_page_dirty(struct kvm *kvm, gfn_t gfn);
594 void kvm_flush_remote_tlbs(struct kvm *kvm);
595 void kvm_reload_remote_mmus(struct kvm *kvm);
596 void kvm_make_mclock_inprogress_request(struct kvm *kvm);
597 void kvm_make_scan_ioapic_request(struct kvm *kvm);
598 bool kvm_make_all_cpus_request(struct kvm *kvm, unsigned int req);
606 int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext);
608 int kvm_get_dirty_log(struct kvm *kvm,
611 int kvm_get_dirty_log_protect(struct kvm *kvm,
614 void kvm_arch_mmu_enable_log_dirty_pt_masked(struct kvm *kvm,
619 int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm,
622 int kvm_vm_ioctl_irq_line(struct kvm *kvm, struct kvm_irq_level *irq_level,
658 struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm, unsigned int id);
674 static inline struct kvm *kvm_arch_alloc_vm(void) in kvm_arch_alloc_vm()
676 return kzalloc(sizeof(struct kvm), GFP_KERNEL); in kvm_arch_alloc_vm()
679 static inline void kvm_arch_free_vm(struct kvm *kvm) in kvm_arch_free_vm() argument
681 kfree(kvm); in kvm_arch_free_vm()
686 void kvm_arch_register_noncoherent_dma(struct kvm *kvm);
687 void kvm_arch_unregister_noncoherent_dma(struct kvm *kvm);
688 bool kvm_arch_has_noncoherent_dma(struct kvm *kvm);
690 static inline void kvm_arch_register_noncoherent_dma(struct kvm *kvm) in kvm_arch_register_noncoherent_dma() argument
694 static inline void kvm_arch_unregister_noncoherent_dma(struct kvm *kvm) in kvm_arch_unregister_noncoherent_dma() argument
698 static inline bool kvm_arch_has_noncoherent_dma(struct kvm *kvm) in kvm_arch_has_noncoherent_dma() argument
719 bool kvm_arch_intc_initialized(struct kvm *kvm);
721 static inline bool kvm_arch_intc_initialized(struct kvm *kvm) in kvm_arch_intc_initialized() argument
727 int kvm_arch_init_vm(struct kvm *kvm, unsigned long type);
728 void kvm_arch_destroy_vm(struct kvm *kvm);
729 void kvm_arch_sync_events(struct kvm *kvm);
742 int kvm_irq_map_gsi(struct kvm *kvm,
744 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin);
746 int kvm_set_irq(struct kvm *kvm, int irq_source_id, u32 irq, int level,
748 int kvm_set_irq_inatomic(struct kvm *kvm, int irq_source_id, u32 irq, int level);
749 int kvm_set_msi(struct kvm_kernel_irq_routing_entry *irq_entry, struct kvm *kvm,
751 bool kvm_irq_has_notifier(struct kvm *kvm, unsigned irqchip, unsigned pin);
752 void kvm_notify_acked_irq(struct kvm *kvm, unsigned irqchip, unsigned pin);
753 void kvm_register_irq_ack_notifier(struct kvm *kvm,
755 void kvm_unregister_irq_ack_notifier(struct kvm *kvm,
757 int kvm_request_irq_source_id(struct kvm *kvm);
758 void kvm_free_irq_source_id(struct kvm *kvm, int irq_source_id);
761 int kvm_iommu_map_pages(struct kvm *kvm, struct kvm_memory_slot *slot);
762 void kvm_iommu_unmap_pages(struct kvm *kvm, struct kvm_memory_slot *slot);
764 static inline int kvm_iommu_map_pages(struct kvm *kvm, in kvm_iommu_map_pages() argument
770 static inline void kvm_iommu_unmap_pages(struct kvm *kvm, in kvm_iommu_unmap_pages() argument
853 static inline int memslot_id(struct kvm *kvm, gfn_t gfn) in memslot_id() argument
855 return gfn_to_memslot(kvm, gfn)->id; in memslot_id()
881 static inline bool kvm_is_error_gpa(struct kvm *kvm, gpa_t gpa) in kvm_is_error_gpa() argument
883 unsigned long hva = gfn_to_hva(kvm, gpa_to_gfn(gpa)); in kvm_is_error_gpa()
908 static inline int mmu_notifier_retry(struct kvm *kvm, unsigned long mmu_seq) in mmu_notifier_retry() argument
910 if (unlikely(kvm->mmu_notifier_count)) in mmu_notifier_retry()
923 if (kvm->mmu_notifier_seq != mmu_seq) in mmu_notifier_retry()
937 int kvm_setup_default_irq_routing(struct kvm *kvm);
938 int kvm_set_irq_routing(struct kvm *kvm,
944 void kvm_free_irq_routing(struct kvm *kvm);
948 static inline void kvm_free_irq_routing(struct kvm *kvm) {} in kvm_free_irq_routing() argument
952 int kvm_send_userspace_msi(struct kvm *kvm, struct kvm_msi *msi);
956 void kvm_eventfd_init(struct kvm *kvm);
957 int kvm_ioeventfd(struct kvm *kvm, struct kvm_ioeventfd *args);
960 int kvm_irqfd(struct kvm *kvm, struct kvm_irqfd *args);
961 void kvm_irqfd_release(struct kvm *kvm);
962 void kvm_irq_routing_update(struct kvm *);
964 static inline int kvm_irqfd(struct kvm *kvm, struct kvm_irqfd *args) in kvm_irqfd() argument
969 static inline void kvm_irqfd_release(struct kvm *kvm) {} in kvm_irqfd_release() argument
974 static inline void kvm_eventfd_init(struct kvm *kvm) {} in kvm_eventfd_init() argument
976 static inline int kvm_irqfd(struct kvm *kvm, struct kvm_irqfd *args) in kvm_irqfd() argument
981 static inline void kvm_irqfd_release(struct kvm *kvm) {} in kvm_irqfd_release() argument
984 static inline void kvm_irq_routing_update(struct kvm *kvm) in kvm_irq_routing_update() argument
989 static inline int kvm_ioeventfd(struct kvm *kvm, struct kvm_ioeventfd *args) in kvm_ioeventfd() argument
999 return vcpu->kvm->bsp_vcpu_id == vcpu->vcpu_id; in kvm_vcpu_is_reset_bsp()
1034 struct kvm *kvm; member