Home
last modified time | relevance | path

Searched refs:gfn_t (Results 1 – 25 of 58) sorted by relevance

123

/linux/arch/s390/kvm/
H A Dgmap.h86 bool _gmap_unmap_prefix(struct gmap *gmap, gfn_t gfn, gfn_t end, bool hint);
87 bool gmap_age_gfn(struct gmap *gmap, gfn_t start, gfn_t end);
88 bool gmap_unmap_gfn_range(struct gmap *gmap, struct kvm_memory_slot *slot, gfn_t start, gfn_t end);
90 struct gmap *gmap_new(struct kvm *kvm, gfn_t limit);
91 struct gmap *gmap_new_child(struct gmap *parent, gfn_t limit);
95 void gmap_sync_dirty_log(struct gmap *gmap, gfn_t start, gfn_t end);
96 int gmap_set_limit(struct gmap *gmap, gfn_t limit);
98 int gmap_ucas_map(struct gmap *gmap, gfn_t p_gfn, gfn_t c_gfn, unsigned long count);
99 void gmap_ucas_unmap(struct gmap *gmap, gfn_t c_gfn, unsigned long count);
101 int gmap_pv_destroy_range(struct gmap *gmap, gfn_t start, gfn_t end, bool interruptible);
[all …]
H A Ddat.h348 typedef long (*dat_walk_op)(union crste *crste, gfn_t gfn, gfn_t next, struct dat_walk *w);
360 long (*pte_entry)(union pte *pte, gfn_t gfn, gfn_t next, struct dat_walk *w);
368 gfn_t start;
369 gfn_t end;
489 gfn_t gfn; /* Guest frame */
515 gfn_t gfn, union asce asce, bool uses_skeys);
516 bool dat_crstep_xchg_atomic(union crste *crstep, union crste old, union crste new, gfn_t gfn,
518 void dat_crstep_xchg(union crste *crstep, union crste new, gfn_t gfn, union asce asce);
520 long _dat_walk_gfn_range(gfn_t start, gfn_t end, union asce asce,
523 int dat_entry_walk(struct kvm_s390_mmu_cache *mc, gfn_t gfn, union asce asce, int flags,
[all …]
H A Dgmap.c32 static int gmap_limit_to_type(gfn_t limit) in gmap_limit_to_type()
52 struct gmap *gmap_new(struct kvm *kvm, gfn_t limit) in gmap_new()
113 struct gmap *gmap_new_child(struct gmap *parent, gfn_t limit) in gmap_new_child()
126 int gmap_set_limit(struct gmap *gmap, gfn_t limit) in gmap_set_limit()
255 bool _gmap_unmap_prefix(struct gmap *gmap, gfn_t gfn, gfn_t end, bool hint) in _gmap_unmap_prefix()
259 gfn_t prefix_gfn; in _gmap_unmap_prefix()
283 static long gmap_clear_young_pte(union pte *ptep, gfn_t gfn, gfn_t end, struct dat_walk *walk) in gmap_clear_young_pte()
312 static long gmap_clear_young_crste(union crste *crstep, gfn_t gfn, gfn_t end, struct dat_walk *walk) in gmap_clear_young_crste()
350 bool gmap_age_gfn(struct gmap *gmap, gfn_t start, gfn_t end) in gmap_age_gfn()
372 static long _gmap_unmap_pte(union pte *ptep, gfn_t gfn, gfn_t next, struct dat_walk *w) in _gmap_unmap_pte()
[all …]
H A Ddat.c153 gfn_t gfn, union asce asce) in dat_crstep_xchg_atomic()
188 union pgste __dat_ptep_xchg(union pte *ptep, union pgste pgste, union pte new, gfn_t gfn, in __dat_ptep_xchg()
233 static int dat_split_ste(struct kvm_s390_mmu_cache *mc, union pmd *pmdp, gfn_t gfn, in dat_split_ste()
302 gfn_t gfn, union asce asce, bool uses_skeys) in dat_split_crste()
378 int dat_entry_walk(struct kvm_s390_mmu_cache *mc, gfn_t gfn, union asce asce, int flags, in dat_entry_walk()
513 static long dat_pte_walk_range(gfn_t gfn, gfn_t end, struct page_table *table, struct dat_walk *w) in dat_pte_walk_range()
533 static long dat_crste_walk_range(gfn_t start, gfn_t end, struct crst_table *table, in dat_crste_walk_range()
539 gfn_t cur, next; in dat_crste_walk_range()
592 long _dat_walk_gfn_range(gfn_t start, gfn_t end, union asce asce, in _dat_walk_gfn_range()
613 int dat_get_storage_key(union asce asce, gfn_t gfn, union skey *skey) in dat_get_storage_key()
[all …]
H A Dfaultin.h17 int kvm_s390_get_guest_page(struct kvm *kvm, struct guest_fault *f, gfn_t gfn, bool w);
20 gfn_t gfn, bool wr) in kvm_s390_faultin_gfn_simple()
71 gfn_t start, int n_pages, bool write_attempt) in kvm_s390_get_guest_pages()
/linux/include/linux/
H A Dkvm_host.h267 gfn_t start;
268 gfn_t end;
596 gfn_t base_gfn;
853 gfn_t mmu_invalidate_range_start;
854 gfn_t mmu_invalidate_range_end;
1135 gfn_t start) in kvm_memslot_iter_start()
1193 static inline bool kvm_memslot_iter_is_valid(struct kvm_memslot_iter *iter, gfn_t end) in kvm_memslot_iter_is_valid()
1211 struct kvm_memory_slot *gfn_to_memslot(struct kvm *kvm, gfn_t gfn);
1213 struct kvm_memory_slot *kvm_vcpu_gfn_to_memslot(struct kvm_vcpu *vcpu, gfn_t gfn);
1251 int kvm_prefetch_pages(struct kvm_memory_slot *slot, gfn_t gfn,
[all …]
/linux/arch/x86/kvm/mmu/
H A Dmmu_internal.h73 gfn_t gfn;
171 static inline gfn_t kvm_gfn_root_bits(const struct kvm *kvm, const struct kvm_mmu_page *root) in kvm_gfn_root_bits()
197 static inline gfn_t gfn_round_for_level(gfn_t gfn, int level) in gfn_round_for_level()
203 gfn_t gfn, bool synchronizing, bool prefetch);
205 void kvm_mmu_gfn_disallow_lpage(const struct kvm_memory_slot *slot, gfn_t gfn);
206 void kvm_mmu_gfn_allow_lpage(const struct kvm_memory_slot *slot, gfn_t gfn);
212 static inline void kvm_flush_remote_tlbs_gfn(struct kvm *kvm, gfn_t gfn, int level) in kvm_flush_remote_tlbs_gfn()
274 gfn_t gfn;
405 const struct kvm_memory_slot *slot, gfn_t gfn);
H A Dtdp_mmu.h66 bool kvm_tdp_mmu_zap_leafs(struct kvm *kvm, gfn_t start, gfn_t end, bool flush);
87 gfn_t gfn, unsigned long mask,
93 struct kvm_memory_slot *slot, gfn_t gfn,
98 gfn_t start, gfn_t end,
113 u64 *kvm_tdp_mmu_fast_pf_get_last_sptep(struct kvm_vcpu *vcpu, gfn_t gfn,
H A Dtdp_iter.h81 gfn_t next_last_level_gfn;
87 gfn_t yielded_gfn;
93 gfn_t gfn;
95 gfn_t gfn_bits;
139 int min_level, gfn_t next_last_level_gfn, gfn_t gfn_bits);
H A Dtdp_mmu.c225 gfn_t gfn, union kvm_mmu_page_role role) in tdp_mmu_init_sp()
323 static void handle_changed_spte(struct kvm *kvm, int as_id, gfn_t gfn,
362 static void remove_external_spte(struct kvm *kvm, gfn_t gfn, u64 old_spte, in remove_external_spte()
402 gfn_t base_gfn = sp->gfn; in handle_removed_pt()
411 gfn_t gfn = base_gfn + i * KVM_PAGES_PER_HPAGE(level); in handle_removed_pt()
498 static void *get_external_spt(gfn_t gfn, u64 new_spte, int level) in get_external_spt()
512 gfn_t gfn, u64 old_spte, in set_external_spte_present()
566 static void handle_changed_spte(struct kvm *kvm, int as_id, gfn_t gfn, in handle_changed_spte()
743 u64 old_spte, u64 new_spte, gfn_t gfn, int level) in tdp_mmu_set_spte()
842 static inline gfn_t tdp_mmu_max_gfn_exclusive(void) in tdp_mmu_max_gfn_exclusive()
[all …]
H A Dpage_track.c75 static void update_gfn_write_track(struct kvm_memory_slot *slot, gfn_t gfn, in update_gfn_write_track()
91 gfn_t gfn) in __kvm_write_track_add_gfn()
114 struct kvm_memory_slot *slot, gfn_t gfn) in __kvm_write_track_remove_gfn()
137 const struct kvm_memory_slot *slot, gfn_t gfn) in kvm_gfn_is_write_tracked()
322 int kvm_write_track_add_gfn(struct kvm *kvm, gfn_t gfn) in kvm_write_track_add_gfn()
352 int kvm_write_track_remove_gfn(struct kvm *kvm, gfn_t gfn) in kvm_write_track_remove_gfn()
H A Dpage_track.h19 gfn_t gfn);
21 struct kvm_memory_slot *slot, gfn_t gfn);
24 const struct kvm_memory_slot *slot, gfn_t gfn);
H A Dmmu.c281 static gfn_t kvm_mmu_page_get_gfn(struct kvm_mmu_page *sp, int index);
287 gfn_t gfn = kvm_mmu_page_get_gfn(sp, spte_index(sptep)); in kvm_flush_remote_tlbs_sptep()
301 static gfn_t get_mmio_spte_gfn(u64 spte) in get_mmio_spte_gfn()
639 static gfn_t kvm_mmu_page_get_gfn(struct kvm_mmu_page *sp, int index) in kvm_mmu_page_get_gfn()
677 gfn_t gfn, unsigned int access) in kvm_mmu_page_set_translation()
698 gfn_t gfn = kvm_mmu_page_get_gfn(sp, index); in kvm_mmu_page_set_access()
707 static struct kvm_lpage_info *lpage_info_slot(gfn_t gfn, in lpage_info_slot()
725 gfn_t gfn, int count) in update_gfn_disallow_lpage_count()
739 void kvm_mmu_gfn_disallow_lpage(const struct kvm_memory_slot *slot, gfn_t gfn) in kvm_mmu_gfn_disallow_lpage()
744 void kvm_mmu_gfn_allow_lpage(const struct kvm_memory_slot *slot, gfn_t gfn) in kvm_mmu_gfn_allow_lpage()
[all …]
H A Dpaging_tmpl.h83 gfn_t table_gfn[PT_MAX_FULL_LEVELS];
91 gfn_t gfn;
96 static inline gfn_t pse36_gfn_delta(u32 gpte) in pse36_gfn_delta()
104 static gfn_t gpte_to_gfn_lvl(pt_element_t gpte, int lvl) in gpte_to_gfn_lvl()
205 gfn_t table_gfn; in update_accessed_dirty_bits()
309 gfn_t table_gfn; in walk_addr_generic()
322 gfn_t gfn; in walk_addr_generic()
536 gfn_t gfn; in prefetch_gpte()
621 gfn_t base_gfn = fault->gfn; in fetch()
653 gfn_t table_gfn; in fetch()
[all …]
H A Dmmutrace.h216 TP_PROTO(u64 *sptep, gfn_t gfn, u64 spte),
221 __field(gfn_t, gfn)
239 TP_PROTO(u64 addr, gfn_t gfn, unsigned access),
244 __field(gfn_t, gfn)
339 TP_PROTO(int level, gfn_t gfn, u64 *sptep),
397 TP_PROTO(int as_id, gfn_t gfn, int level, u64 old_spte, u64 new_spte),
H A Dtdp_iter.c40 int min_level, gfn_t next_last_level_gfn, gfn_t gfn_bits) in tdp_iter_start()
/linux/arch/mips/kvm/
H A Dmmu.c270 bool kvm_mips_flush_gpa_pt(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn) in kvm_mips_flush_gpa_pt()
396 int kvm_mips_mkclean_gpa_pt(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn) in BUILD_PTE_RANGE_OP()
416 gfn_t gfn_offset, unsigned long mask) in kvm_arch_mmu_enable_log_dirty_pt_masked()
418 gfn_t base_gfn = slot->base_gfn + gfn_offset; in kvm_arch_mmu_enable_log_dirty_pt_masked()
419 gfn_t start = base_gfn + __ffs(mask); in kvm_arch_mmu_enable_log_dirty_pt_masked()
420 gfn_t end = base_gfn + __fls(mask); in kvm_arch_mmu_enable_log_dirty_pt_masked()
433 static int kvm_mips_mkold_gpa_pt(struct kvm *kvm, gfn_t start_gfn, in BUILD_PTE_RANGE_OP()
434 gfn_t end_gfn) in BUILD_PTE_RANGE_OP()
485 gfn_t gfn = gpa >> PAGE_SHIFT; in _kvm_mips_map_page_fast()
553 gfn_t gfn = gpa >> PAGE_SHIFT; in kvm_mips_map_page()
/linux/arch/x86/kvm/
H A Dmmu.h61 static inline gfn_t kvm_mmu_max_gfn(void) in kvm_mmu_max_gfn()
258 int kvm_tdp_mmu_map_private_pfn(struct kvm_vcpu *vcpu, gfn_t gfn, kvm_pfn_t pfn);
265 static inline gfn_t gfn_to_index(gfn_t gfn, gfn_t base_gfn, int level) in gfn_to_index()
309 static inline gfn_t kvm_gfn_direct_bits(const struct kvm *kvm) in kvm_gfn_direct_bits()
321 static inline bool kvm_is_gfn_alias(struct kvm *kvm, gfn_t gfn) in kvm_is_gfn_alias()
H A Dkvm_onhyperv.h10 int hv_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages);
H A Dkvm_onhyperv.c95 int hv_flush_remote_tlbs_range(struct kvm *kvm, gfn_t start_gfn, gfn_t nr_pages) in hv_flush_remote_tlbs_range()
/linux/arch/x86/include/asm/
H A Dkvm_page_track.h43 void (*track_remove_region)(gfn_t gfn, unsigned long nr_pages,
52 int kvm_write_track_add_gfn(struct kvm *kvm, gfn_t gfn);
53 int kvm_write_track_remove_gfn(struct kvm *kvm, gfn_t gfn);
H A Dkvm_host.h1011 gfn_t mmio_gfn;
1033 gfn_t gfns[ASYNC_PF_PER_VCPU];
1630 gfn_t gfn_direct_bits;
1797 int (*flush_remote_tlbs_range)(struct kvm *kvm, gfn_t gfn,
1798 gfn_t nr_pages);
1858 u8 (*get_mt_mask)(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio);
1864 int (*link_external_spt)(struct kvm *kvm, gfn_t gfn, enum pg_level level,
1867 int (*set_external_spte)(struct kvm *kvm, gfn_t gfn, enum pg_level level,
1871 int (*free_external_spt)(struct kvm *kvm, gfn_t gfn, enum pg_level level,
1875 void (*remove_external_spte)(struct kvm *kvm, gfn_t gfn, enum pg_level level,
[all …]
/linux/arch/loongarch/kvm/
H A Dmmu.c57 gfn_t offset; in kvm_mkclean_pte()
292 static void kvm_flush_range(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn, int lock) in kvm_flush_range()
341 static int kvm_mkclean_gpa_pt(struct kvm *kvm, gfn_t start_gfn, gfn_t end_gfn) in kvm_mkclean_gpa_pt()
363 struct kvm_memory_slot *slot, gfn_t gfn_offset, unsigned long mask) in kvm_arch_mmu_enable_log_dirty_pt_masked()
366 gfn_t base_gfn = slot->base_gfn + gfn_offset; in kvm_arch_mmu_enable_log_dirty_pt_masked()
367 gfn_t start = base_gfn + __ffs(mask); in kvm_arch_mmu_enable_log_dirty_pt_masked()
368 gfn_t end = base_gfn + __fls(mask) + 1; in kvm_arch_mmu_enable_log_dirty_pt_masked()
556 gfn_t gfn = gpa >> PAGE_SHIFT; in kvm_map_page_fast()
666 static int host_pfn_mapping_level(struct kvm *kvm, gfn_t gfn, in host_pfn_mapping_level()
728 static kvm_pte_t *kvm_split_huge(struct kvm_vcpu *vcpu, kvm_pte_t *ptep, gfn_t gfn) in kvm_split_huge()
[all …]
/linux/virt/kvm/
H A Dkvm_main.c315 void kvm_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, u64 nr_pages) in kvm_flush_remote_tlbs_range()
694 void kvm_mmu_invalidate_range_add(struct kvm *kvm, gfn_t start, gfn_t end) in kvm_mmu_invalidate_range_add()
1989 gfn_t start, gfn_t end) in kvm_check_memslot_overlap()
2008 gfn_t base_gfn; in kvm_set_memory_region()
2275 gfn_t offset; in kvm_get_dirty_log_protect()
2344 gfn_t offset; in kvm_clear_dirty_log_protect()
2441 bool kvm_range_has_memory_attributes(struct kvm *kvm, gfn_t start, gfn_t end, in kvm_range_has_memory_attributes()
2544 static int kvm_vm_set_mem_attributes(struct kvm *kvm, gfn_t start, gfn_t end, in kvm_vm_set_mem_attributes()
2609 gfn_t start, end; in kvm_vm_ioctl_set_mem_attributes()
2635 struct kvm_memory_slot *gfn_to_memslot(struct kvm *kvm, gfn_t gfn) in gfn_to_memslot()
[all …]
/linux/include/trace/events/
H A Dkvm.h368 TP_PROTO(gfn_t start, gfn_t end, unsigned long attr),
372 __field(gfn_t, start)
373 __field(gfn_t, end)

123