| /Linux-v5.10/arch/x86/kvm/mmu/ |
| D | tdp_mmu.c | 65 gfn_t start, gfn_t end, bool can_yield); 69 gfn_t max_gfn = 1ULL << (shadow_phys_bits - PAGE_SHIFT); in kvm_tdp_mmu_free_root() 98 static struct kvm_mmu_page *alloc_tdp_mmu_page(struct kvm_vcpu *vcpu, gfn_t gfn, in alloc_tdp_mmu_page() 154 static void handle_changed_spte(struct kvm *kvm, int as_id, gfn_t gfn, 174 static void handle_changed_spte_dirty_log(struct kvm *kvm, int as_id, gfn_t gfn, in handle_changed_spte_dirty_log() 204 static void __handle_changed_spte(struct kvm *kvm, int as_id, gfn_t gfn, in __handle_changed_spte() 302 static void handle_changed_spte(struct kvm *kvm, int as_id, gfn_t gfn, in handle_changed_spte() 402 gfn_t start, gfn_t end, bool can_yield) in zap_gfn_range() 437 bool kvm_tdp_mmu_zap_gfn_range(struct kvm *kvm, gfn_t start, gfn_t end) in kvm_tdp_mmu_zap_gfn_range() 459 gfn_t max_gfn = 1ULL << (shadow_phys_bits - PAGE_SHIFT); in kvm_tdp_mmu_zap_all() [all …]
|
| D | mmu_internal.h | 38 gfn_t gfn; 42 gfn_t *gfns; 88 bool mmu_need_write_protect(struct kvm_vcpu *vcpu, gfn_t gfn, 91 void kvm_mmu_gfn_disallow_lpage(struct kvm_memory_slot *slot, gfn_t gfn); 92 void kvm_mmu_gfn_allow_lpage(struct kvm_memory_slot *slot, gfn_t gfn); 136 int kvm_mmu_hugepage_adjust(struct kvm_vcpu *vcpu, gfn_t gfn, 139 void disallowed_hugepage_adjust(u64 spte, gfn_t gfn, int cur_level,
|
| D | tdp_mmu.h | 15 bool kvm_tdp_mmu_zap_gfn_range(struct kvm *kvm, gfn_t start, gfn_t end); 38 gfn_t gfn, unsigned long mask, 45 struct kvm_memory_slot *slot, gfn_t gfn);
|
| D | tdp_iter.h | 18 gfn_t goal_gfn; 24 gfn_t gfn; 55 int min_level, gfn_t goal_gfn);
|
| D | tdp_iter.c | 18 static gfn_t round_gfn_for_level(gfn_t gfn, int level) in round_gfn_for_level() 28 int min_level, gfn_t goal_gfn) in tdp_iter_start() 169 gfn_t goal_gfn = iter->goal_gfn; in tdp_iter_refresh_walk()
|
| D | mmu.c | 224 static gfn_t get_mmio_spte_gfn(u64 spte) in get_mmio_spte_gfn() 239 static bool set_mmio_spte(struct kvm_vcpu *vcpu, u64 *sptep, gfn_t gfn, in set_mmio_spte() 287 static gfn_t pse36_gfn_delta(u32 gpte) in pse36_gfn_delta() 701 static gfn_t kvm_mmu_page_get_gfn(struct kvm_mmu_page *sp, int index) in kvm_mmu_page_get_gfn() 709 static void kvm_mmu_page_set_gfn(struct kvm_mmu_page *sp, int index, gfn_t gfn) in kvm_mmu_page_set_gfn() 727 static struct kvm_lpage_info *lpage_info_slot(gfn_t gfn, in lpage_info_slot() 738 gfn_t gfn, int count) in update_gfn_disallow_lpage_count() 750 void kvm_mmu_gfn_disallow_lpage(struct kvm_memory_slot *slot, gfn_t gfn) in kvm_mmu_gfn_disallow_lpage() 755 void kvm_mmu_gfn_allow_lpage(struct kvm_memory_slot *slot, gfn_t gfn) in kvm_mmu_gfn_allow_lpage() 764 gfn_t gfn; in account_shadowed() [all …]
|
| D | page_track.c | 59 static void update_gfn_track(struct kvm_memory_slot *slot, gfn_t gfn, in update_gfn_track() 87 struct kvm_memory_slot *slot, gfn_t gfn, in kvm_slot_page_track_add_page() 122 struct kvm_memory_slot *slot, gfn_t gfn, in kvm_slot_page_track_remove_page() 141 bool kvm_page_track_is_active(struct kvm_vcpu *vcpu, gfn_t gfn, in kvm_page_track_is_active()
|
| D | mmutrace.h | 205 TP_PROTO(u64 *sptep, gfn_t gfn, u64 spte), 210 __field(gfn_t, gfn) 228 TP_PROTO(u64 addr, gfn_t gfn, unsigned access), 233 __field(gfn_t, gfn) 328 TP_PROTO(int level, gfn_t gfn, u64 *sptep),
|
| D | paging_tmpl.h | 87 gfn_t table_gfn[PT_MAX_FULL_LEVELS]; 95 gfn_t gfn; 99 static gfn_t gpte_to_gfn_lvl(pt_element_t gpte, int lvl) in gpte_to_gfn_lvl() 243 gfn_t table_gfn; in FNAME() 318 gfn_t table_gfn; in FNAME() 331 gfn_t gfn; in FNAME() 533 gfn_t gfn; in FNAME() 640 gfn_t base_gfn = gw->gfn; in FNAME() 662 gfn_t table_gfn; in FNAME() 754 gfn_t mask = ~(KVM_PAGES_PER_HPAGE(walker->level) - 1); in FNAME() [all …]
|
| D | mmu_audit.c | 96 gfn_t gfn; in audit_mappings() 133 gfn_t gfn; in inspect_spte_has_rmap()
|
| D | spte.h | 253 gfn_t gfn, kvm_pfn_t pfn, u64 old_spte, bool speculative,
|
| D | spte.c | 85 gfn_t gfn, kvm_pfn_t pfn, u64 old_spte, bool speculative, in make_spte()
|
| /Linux-v5.10/include/linux/ |
| D | kvm_host.h | 342 gfn_t base_gfn; 704 int gfn_to_page_many_atomic(struct kvm_memory_slot *slot, gfn_t gfn, 707 struct page *gfn_to_page(struct kvm *kvm, gfn_t gfn); 708 unsigned long gfn_to_hva(struct kvm *kvm, gfn_t gfn); 709 unsigned long gfn_to_hva_prot(struct kvm *kvm, gfn_t gfn, bool *writable); 710 unsigned long gfn_to_hva_memslot(struct kvm_memory_slot *slot, gfn_t gfn); 711 unsigned long gfn_to_hva_memslot_prot(struct kvm_memory_slot *slot, gfn_t gfn, 717 kvm_pfn_t gfn_to_pfn(struct kvm *kvm, gfn_t gfn); 718 kvm_pfn_t gfn_to_pfn_prot(struct kvm *kvm, gfn_t gfn, bool write_fault, 720 kvm_pfn_t gfn_to_pfn_memslot(struct kvm_memory_slot *slot, gfn_t gfn); [all …]
|
| D | kvm_types.h | 38 typedef u64 gfn_t; typedef 58 gfn_t gfn;
|
| /Linux-v5.10/arch/mips/kvm/ |
| D | mmu.c | 271 bool kvm_mips_flush_gpa_pt(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn) in kvm_mips_flush_gpa_pt() 397 int kvm_mips_mkclean_gpa_pt(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn) in BUILD_PTE_RANGE_OP() 417 gfn_t gfn_offset, unsigned long mask) in kvm_arch_mmu_enable_log_dirty_pt_masked() 419 gfn_t base_gfn = slot->base_gfn + gfn_offset; in kvm_arch_mmu_enable_log_dirty_pt_masked() 420 gfn_t start = base_gfn + __ffs(mask); in kvm_arch_mmu_enable_log_dirty_pt_masked() 421 gfn_t end = base_gfn + __fls(mask); in kvm_arch_mmu_enable_log_dirty_pt_masked() 434 static int kvm_mips_mkold_gpa_pt(struct kvm *kvm, gfn_t start_gfn, in BUILD_PTE_RANGE_OP() 435 gfn_t end_gfn) in BUILD_PTE_RANGE_OP() 445 int (*handler)(struct kvm *kvm, gfn_t gfn, in handle_hva_to_gpa() 460 gfn_t gfn, gfn_end; in handle_hva_to_gpa() [all …]
|
| /Linux-v5.10/arch/x86/include/asm/ |
| D | kvm_page_track.h | 57 struct kvm_memory_slot *slot, gfn_t gfn, 60 struct kvm_memory_slot *slot, gfn_t gfn, 62 bool kvm_page_track_is_active(struct kvm_vcpu *vcpu, gfn_t gfn,
|
| D | kvm_host.h | 123 static inline gfn_t gfn_to_index(gfn_t gfn, gfn_t base_gfn, int level) in gfn_to_index() 711 gfn_t mmio_gfn; 728 gfn_t gfns[ASYNC_PF_PER_VCPU]; 1183 u64 (*get_mt_mask)(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio); 1233 gfn_t offset, unsigned long mask); 1313 gfn_t gfn; 1364 gfn_t gfn_offset, unsigned long mask); 1500 gfn_t gfn, void *data, int offset, int len, 1528 int kvm_mmu_unprotect_page(struct kvm *kvm, gfn_t gfn); 1691 extern bool kvm_find_async_pf_gfn(struct kvm_vcpu *vcpu, gfn_t gfn);
|
| /Linux-v5.10/virt/kvm/ |
| D | kvm_main.c | 1520 gfn_t offset; in kvm_get_dirty_log_protect() 1589 gfn_t offset; in kvm_clear_dirty_log_protect() 1669 struct kvm_memory_slot *gfn_to_memslot(struct kvm *kvm, gfn_t gfn) in gfn_to_memslot() 1675 struct kvm_memory_slot *kvm_vcpu_gfn_to_memslot(struct kvm_vcpu *vcpu, gfn_t gfn) in kvm_vcpu_gfn_to_memslot() 1681 bool kvm_is_visible_gfn(struct kvm *kvm, gfn_t gfn) in kvm_is_visible_gfn() 1689 bool kvm_vcpu_is_visible_gfn(struct kvm_vcpu *vcpu, gfn_t gfn) in kvm_vcpu_is_visible_gfn() 1697 unsigned long kvm_host_page_size(struct kvm_vcpu *vcpu, gfn_t gfn) in kvm_host_page_size() 1726 static unsigned long __gfn_to_hva_many(struct kvm_memory_slot *slot, gfn_t gfn, in __gfn_to_hva_many() 1727 gfn_t *nr_pages, bool write) in __gfn_to_hva_many() 1741 static unsigned long gfn_to_hva_many(struct kvm_memory_slot *slot, gfn_t gfn, in gfn_to_hva_many() [all …]
|
| /Linux-v5.10/arch/x86/kvm/ |
| D | mmu.h | 216 void kvm_zap_gfn_range(struct kvm *kvm, gfn_t gfn_start, gfn_t gfn_end);
|
| D | x86.h | 170 gva_t gva, gfn_t gfn, unsigned access) in vcpu_cache_mmio_info() 267 u8 kvm_mtrr_get_guest_memory_type(struct kvm_vcpu *vcpu, gfn_t gfn); 271 bool kvm_mtrr_check_gfn_range_consistency(struct kvm_vcpu *vcpu, gfn_t gfn,
|
| D | mtrr.c | 313 gfn_t start, end; in update_mtrr() 619 u8 kvm_mtrr_get_guest_memory_type(struct kvm_vcpu *vcpu, gfn_t gfn) in kvm_mtrr_get_guest_memory_type() 695 bool kvm_mtrr_check_gfn_range_consistency(struct kvm_vcpu *vcpu, gfn_t gfn, in kvm_mtrr_check_gfn_range_consistency()
|
| /Linux-v5.10/drivers/gpu/drm/i915/gvt/ |
| D | kvmgt.c | 87 gfn_t gfn; 105 gfn_t gfn; 272 static struct gvt_dma *__gvt_cache_find_gfn(struct intel_vgpu *vgpu, gfn_t gfn) in __gvt_cache_find_gfn() 290 static int __gvt_cache_add(struct intel_vgpu *vgpu, gfn_t gfn, in __gvt_cache_add() 399 __kvmgt_protect_table_find(struct kvmgt_guest_info *info, gfn_t gfn) in __kvmgt_protect_table_find() 414 gfn_t gfn) in kvmgt_gfn_is_write_protected() 422 static void kvmgt_protect_table_add(struct kvmgt_guest_info *info, gfn_t gfn) in kvmgt_protect_table_add() 438 gfn_t gfn) in kvmgt_protect_table_del() 1771 gfn_t gfn; in kvmgt_page_track_flush_slot()
|
| /Linux-v5.10/arch/arm64/kvm/ |
| D | mmu.c | 589 gfn_t gfn_offset, unsigned long mask) in kvm_mmu_write_protect_pt_masked() 607 gfn_t gfn_offset, unsigned long mask) in kvm_arch_mmu_enable_log_dirty_pt_masked() 754 gfn_t gfn; in user_mem_abort() 958 gfn_t gfn; in kvm_handle_guest_abort() 1081 gfn_t gpa; in handle_hva_to_gpa()
|
| /Linux-v5.10/arch/powerpc/kvm/ |
| D | e500_mmu_host.c | 323 u64 gvaddr, gfn_t gfn, struct kvm_book3e_206_tlb_entry *gtlbe, in kvmppc_e500_shadow_map() 560 u64 gvaddr, gfn_t gfn, struct kvm_book3e_206_tlb_entry *gtlbe, in kvmppc_e500_tlb1_map() 612 gfn_t gfn = gpaddr >> PAGE_SHIFT; in kvmppc_mmu_map()
|
| /Linux-v5.10/arch/mips/include/asm/ |
| D | kvm_host.h | 949 bool kvm_mips_flush_gpa_pt(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn); 950 int kvm_mips_mkclean_gpa_pt(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn);
|