/arch/powerpc/kvm/ |
D | book3s_hv_uvmem.c | 360 static bool kvmppc_next_nontransitioned_gfn(const struct kvm_memory_slot *memslot, in kvmppc_next_nontransitioned_gfn() argument 391 const struct kvm_memory_slot *memslot, bool merge) in kvmppc_memslot_page_merge() argument 393 unsigned long gfn = memslot->base_gfn; in kvmppc_memslot_page_merge() 402 end = start + (memslot->npages << PAGE_SHIFT); in kvmppc_memslot_page_merge() 425 const struct kvm_memory_slot *memslot) in __kvmppc_uvmem_memslot_delete() argument 427 uv_unregister_mem_slot(kvm->arch.lpid, memslot->id); in __kvmppc_uvmem_memslot_delete() 428 kvmppc_uvmem_slot_free(kvm, memslot); in __kvmppc_uvmem_memslot_delete() 429 kvmppc_memslot_page_merge(kvm, memslot, true); in __kvmppc_uvmem_memslot_delete() 433 const struct kvm_memory_slot *memslot) in __kvmppc_uvmem_memslot_create() argument 437 if (kvmppc_memslot_page_merge(kvm, memslot, false)) in __kvmppc_uvmem_memslot_create() [all …]
|
D | book3s_64_mmu_hv.c | 205 void kvmppc_map_vrma(struct kvm_vcpu *vcpu, struct kvm_memory_slot *memslot, in kvmppc_map_vrma() argument 219 npages = memslot->npages >> (porder - PAGE_SHIFT); in kvmppc_map_vrma() 493 struct kvm_memory_slot *memslot; in kvmppc_book3s_hv_page_fault() local 556 memslot = gfn_to_memslot(kvm, gfn); in kvmppc_book3s_hv_page_fault() 558 trace_kvm_page_fault_enter(vcpu, hpte, memslot, ea, dsisr); in kvmppc_book3s_hv_page_fault() 561 if (!memslot || (memslot->flags & KVM_MEMSLOT_INVALID)) in kvmppc_book3s_hv_page_fault() 569 if (gfn_base < memslot->base_gfn) in kvmppc_book3s_hv_page_fault() 581 hva = gfn_to_hva_memslot(memslot, gfn); in kvmppc_book3s_hv_page_fault() 593 pfn = __gfn_to_pfn_memslot(memslot, gfn, false, NULL, in kvmppc_book3s_hv_page_fault() 683 rmap = &memslot->arch.rmap[gfn_base - memslot->base_gfn]; in kvmppc_book3s_hv_page_fault() [all …]
|
D | book3s_64_mmu_radix.c | 413 const struct kvm_memory_slot *memslot, in kvmppc_unmap_pte() argument 429 if (!memslot) { in kvmppc_unmap_pte() 430 memslot = gfn_to_memslot(kvm, gfn); in kvmppc_unmap_pte() 431 if (!memslot) in kvmppc_unmap_pte() 444 kvmhv_remove_nest_rmap_range(kvm, memslot, gpa, hpa, page_size); in kvmppc_unmap_pte() 446 if ((old & _PAGE_DIRTY) && memslot->dirty_bitmap) in kvmppc_unmap_pte() 447 kvmppc_update_dirty_map(memslot, gfn, page_size); in kvmppc_unmap_pte() 811 struct kvm_memory_slot *memslot, in kvmppc_book3s_instantiate_page() argument 836 hva = gfn_to_hva_memslot(memslot, gfn); in kvmppc_book3s_instantiate_page() 843 pfn = __gfn_to_pfn_memslot(memslot, gfn, false, NULL, in kvmppc_book3s_instantiate_page() [all …]
|
D | book3s_hv_rm_mmu.c | 102 void kvmppc_update_dirty_map(const struct kvm_memory_slot *memslot, in kvmppc_update_dirty_map() argument 107 if (!psize || !memslot->dirty_bitmap) in kvmppc_update_dirty_map() 110 gfn -= memslot->base_gfn; in kvmppc_update_dirty_map() 111 set_dirty_bits_atomic(memslot->dirty_bitmap, gfn, npages); in kvmppc_update_dirty_map() 118 struct kvm_memory_slot *memslot; in kvmppc_set_dirty_from_hpte() local 124 memslot = __gfn_to_memslot(kvm_memslots_raw(kvm), gfn); in kvmppc_set_dirty_from_hpte() 125 if (memslot && memslot->dirty_bitmap) in kvmppc_set_dirty_from_hpte() 126 kvmppc_update_dirty_map(memslot, gfn, psize); in kvmppc_set_dirty_from_hpte() 135 struct kvm_memory_slot *memslot; in revmap_for_hpte() local 140 memslot = __gfn_to_memslot(kvm_memslots_raw(kvm), gfn); in revmap_for_hpte() [all …]
|
D | trace_hv.h | 274 struct kvm_memory_slot *memslot, unsigned long ea, 277 TP_ARGS(vcpu, hptep, memslot, ea, dsisr), 297 __entry->base_gfn = memslot ? memslot->base_gfn : -1UL; 298 __entry->slot_flags = memslot ? memslot->flags : 0;
|
D | book3s_hv_nested.c | 750 struct kvm_memory_slot *memslot; in kvmhv_release_all_nested() local 772 kvm_for_each_memslot(memslot, kvm_memslots(kvm)) in kvmhv_release_all_nested() 773 kvmhv_free_memslot_nest_rmap(memslot); in kvmhv_release_all_nested() 990 const struct kvm_memory_slot *memslot, in kvmhv_remove_nest_rmap_range() argument 997 if (!memslot) in kvmhv_remove_nest_rmap_range() 999 gfn = (gpa >> PAGE_SHIFT) - memslot->base_gfn; in kvmhv_remove_nest_rmap_range() 1006 unsigned long *rmap = &memslot->arch.rmap[gfn]; in kvmhv_remove_nest_rmap_range() 1483 struct kvm_memory_slot *memslot; in __kvmhv_nested_page_fault() local 1553 memslot = gfn_to_memslot(kvm, gfn); in __kvmhv_nested_page_fault() 1554 if (!memslot || (memslot->flags & KVM_MEMSLOT_INVALID)) { in __kvmhv_nested_page_fault() [all …]
|
D | book3s.h | 11 struct kvm_memory_slot *memslot);
|
D | book3s_64_vio_hv.c | 81 struct kvm_memory_slot *memslot; in kvmppc_rm_tce_to_ua() local 83 memslot = __gfn_to_memslot(kvm_memslots_raw(kvm), gfn); in kvmppc_rm_tce_to_ua() 84 if (!memslot) in kvmppc_rm_tce_to_ua() 87 *ua = __gfn_to_hva_memslot(memslot, gfn) | in kvmppc_rm_tce_to_ua()
|
D | book3s_64_vio.c | 347 struct kvm_memory_slot *memslot; in kvmppc_tce_to_ua() local 349 memslot = __gfn_to_memslot(kvm_memslots(kvm), gfn); in kvmppc_tce_to_ua() 350 if (!memslot) in kvmppc_tce_to_ua() 353 *ua = __gfn_to_hva_memslot(memslot, gfn) | in kvmppc_tce_to_ua()
|
D | book3s.c | 829 void kvm_arch_sync_dirty_log(struct kvm *kvm, struct kvm_memory_slot *memslot) in kvm_arch_sync_dirty_log() argument 844 void kvmppc_core_flush_memslot(struct kvm *kvm, struct kvm_memory_slot *memslot) in kvmppc_core_flush_memslot() argument 846 kvm->arch.kvm_ops->flush_memslot(kvm, memslot); in kvmppc_core_flush_memslot() 850 struct kvm_memory_slot *memslot, in kvmppc_core_prepare_memory_region() argument 854 return kvm->arch.kvm_ops->prepare_memory_region(kvm, memslot, mem, in kvmppc_core_prepare_memory_region()
|
D | book3s_pr.c | 1864 struct kvm_memory_slot *memslot; in kvm_vm_ioctl_get_dirty_log_pr() local 1873 r = kvm_get_dirty_log(kvm, log, &is_dirty, &memslot); in kvm_vm_ioctl_get_dirty_log_pr() 1879 ga = memslot->base_gfn << PAGE_SHIFT; in kvm_vm_ioctl_get_dirty_log_pr() 1880 ga_end = ga + (memslot->npages << PAGE_SHIFT); in kvm_vm_ioctl_get_dirty_log_pr() 1885 n = kvm_dirty_bitmap_bytes(memslot); in kvm_vm_ioctl_get_dirty_log_pr() 1886 memset(memslot->dirty_bitmap, 0, n); in kvm_vm_ioctl_get_dirty_log_pr() 1896 struct kvm_memory_slot *memslot) in kvmppc_core_flush_memslot_pr() argument 1902 struct kvm_memory_slot *memslot, in kvmppc_core_prepare_memory_region_pr() argument
|
D | book3s_hv.c | 4787 struct kvm_memory_slot *memslot; in kvm_vm_ioctl_get_dirty_log_hv() local 4800 memslot = id_to_memslot(slots, log->slot); in kvm_vm_ioctl_get_dirty_log_hv() 4802 if (!memslot || !memslot->dirty_bitmap) in kvm_vm_ioctl_get_dirty_log_hv() 4809 n = kvm_dirty_bitmap_bytes(memslot); in kvm_vm_ioctl_get_dirty_log_hv() 4810 buf = memslot->dirty_bitmap + n / sizeof(long); in kvm_vm_ioctl_get_dirty_log_hv() 4814 r = kvmppc_hv_get_dirty_log_radix(kvm, memslot, buf); in kvm_vm_ioctl_get_dirty_log_hv() 4816 r = kvmppc_hv_get_dirty_log_hpt(kvm, memslot, buf); in kvm_vm_ioctl_get_dirty_log_hv() 4826 p = memslot->dirty_bitmap; in kvm_vm_ioctl_get_dirty_log_hv() 4834 kvmppc_harvest_vpa_dirty(&vcpu->arch.vpa, memslot, buf); in kvm_vm_ioctl_get_dirty_log_hv() 4835 kvmppc_harvest_vpa_dirty(&vcpu->arch.dtl, memslot, buf); in kvm_vm_ioctl_get_dirty_log_hv() [all …]
|
D | booke.c | 1809 void kvm_arch_sync_dirty_log(struct kvm *kvm, struct kvm_memory_slot *memslot) in kvm_arch_sync_dirty_log() argument 1824 struct kvm_memory_slot *memslot, in kvmppc_core_prepare_memory_region() argument 1839 void kvmppc_core_flush_memslot(struct kvm *kvm, struct kvm_memory_slot *memslot) in kvmppc_core_flush_memslot() argument
|
/arch/arm64/kvm/ |
D | mmu.c | 70 static bool memslot_is_logging(struct kvm_memory_slot *memslot) in memslot_is_logging() argument 72 return memslot->dirty_bitmap && !(memslot->flags & KVM_MEM_READONLY); in memslot_is_logging() 210 struct kvm_memory_slot *memslot) in stage2_flush_memslot() argument 212 phys_addr_t addr = memslot->base_gfn << PAGE_SHIFT; in stage2_flush_memslot() 213 phys_addr_t end = addr + PAGE_SIZE * memslot->npages; in stage2_flush_memslot() 228 struct kvm_memory_slot *memslot; in stage2_flush_vm() local 236 kvm_for_each_memslot(memslot, slots) in stage2_flush_vm() 237 stage2_flush_memslot(kvm, memslot); in stage2_flush_vm() 735 struct kvm_memory_slot *memslot) in stage2_unmap_memslot() argument 737 hva_t hva = memslot->userspace_addr; in stage2_unmap_memslot() [all …]
|
D | arm.c | 1484 void kvm_arch_sync_dirty_log(struct kvm *kvm, struct kvm_memory_slot *memslot) in kvm_arch_sync_dirty_log() argument 1490 const struct kvm_memory_slot *memslot) in kvm_arch_flush_remote_tlbs_memslot() argument
|
/arch/powerpc/include/asm/ |
D | kvm_book3s.h | 197 const struct kvm_memory_slot *memslot, 204 struct kvm_memory_slot *memslot, 213 extern void kvm_unmap_radix(struct kvm *kvm, struct kvm_memory_slot *memslot, 215 extern bool kvm_age_radix(struct kvm *kvm, struct kvm_memory_slot *memslot, 217 extern bool kvm_test_age_radix(struct kvm *kvm, struct kvm_memory_slot *memslot, 220 struct kvm_memory_slot *memslot, unsigned long *map); 222 const struct kvm_memory_slot *memslot); 240 extern void kvmppc_update_dirty_map(const struct kvm_memory_slot *memslot, 257 struct kvm_memory_slot *memslot, unsigned long *map); 259 struct kvm_memory_slot *memslot,
|
D | kvm_book3s_64.h | 495 static inline bool slot_is_aligned(struct kvm_memory_slot *memslot, in slot_is_aligned() argument 502 return !(memslot->base_gfn & mask) && !(memslot->npages & mask); in slot_is_aligned() 642 const struct kvm_memory_slot *memslot,
|
D | kvm_ppc.h | 168 struct kvm_memory_slot *memslot, unsigned long porder); 203 struct kvm_memory_slot *memslot, 214 struct kvm_memory_slot *memslot); 275 void (*flush_memslot)(struct kvm *kvm, struct kvm_memory_slot *memslot); 277 struct kvm_memory_slot *memslot,
|
/arch/s390/kvm/ |
D | pv.c | 119 struct kvm_memory_slot *memslot; in kvm_s390_pv_alloc_vm() local 133 memslot = kvm_memslots(kvm)->memslots; in kvm_s390_pv_alloc_vm() 134 npages = memslot->base_gfn + memslot->npages; in kvm_s390_pv_alloc_vm()
|
D | kvm-s390.c | 613 void kvm_arch_sync_dirty_log(struct kvm *kvm, struct kvm_memory_slot *memslot) in kvm_arch_sync_dirty_log() argument 622 cur_gfn = memslot->base_gfn; in kvm_arch_sync_dirty_log() 623 last_gfn = memslot->base_gfn + memslot->npages; in kvm_arch_sync_dirty_log() 626 vmaddr = gfn_to_hva_memslot(memslot, cur_gfn); in kvm_arch_sync_dirty_log() 654 struct kvm_memory_slot *memslot; in kvm_vm_ioctl_get_dirty_log() local 666 r = kvm_get_dirty_log(kvm, log, &is_dirty, &memslot); in kvm_vm_ioctl_get_dirty_log() 672 n = kvm_dirty_bitmap_bytes(memslot); in kvm_vm_ioctl_get_dirty_log() 673 memset(memslot->dirty_bitmap, 0, n); in kvm_vm_ioctl_get_dirty_log() 5047 struct kvm_memory_slot *memslot, in kvm_arch_prepare_memory_region() argument
|
/arch/x86/include/asm/uv/ |
D | uv_geo.h | 57 char memslot; /* The memory slot on the bus */ member
|
/arch/x86/kvm/mmu/ |
D | mmu.c | 5445 slot_handle_level_range(struct kvm *kvm, const struct kvm_memory_slot *memslot, in slot_handle_level_range() argument 5452 for_each_slot_rmap_range(memslot, start_level, end_level, start_gfn, in slot_handle_level_range() 5455 flush |= fn(kvm, iterator.rmap, memslot); in slot_handle_level_range() 5472 slot_handle_level(struct kvm *kvm, const struct kvm_memory_slot *memslot, in slot_handle_level() argument 5476 return slot_handle_level_range(kvm, memslot, fn, start_level, in slot_handle_level() 5477 end_level, memslot->base_gfn, in slot_handle_level() 5478 memslot->base_gfn + memslot->npages - 1, in slot_handle_level() 5483 slot_handle_level_4k(struct kvm *kvm, const struct kvm_memory_slot *memslot, in slot_handle_level_4k() argument 5486 return slot_handle_level(kvm, memslot, fn, PG_LEVEL_4K, in slot_handle_level_4k() 5735 struct kvm_memory_slot *memslot; in kvm_zap_gfn_range() local [all …]
|
/arch/x86/kvm/ |
D | xen.c | 113 BUG_ON(!ghc->memslot); in kvm_xen_update_runstate_guest() 204 mark_page_dirty_in_slot(v->kvm, ghc->memslot, ghc->gpa >> PAGE_SHIFT); in kvm_xen_update_runstate_guest() 237 !kvm_is_error_hva(ghc->hva) && ghc->memslot)) { in __kvm_xen_has_interrupt()
|
/arch/mips/kvm/ |
D | mips.c | 236 struct kvm_memory_slot *memslot, in kvm_arch_prepare_memory_region() argument 982 void kvm_arch_sync_dirty_log(struct kvm *kvm, struct kvm_memory_slot *memslot) in kvm_arch_sync_dirty_log() argument 994 const struct kvm_memory_slot *memslot) in kvm_arch_flush_remote_tlbs_memslot() argument
|
/arch/x86/include/asm/ |
D | kvm_host.h | 1580 const struct kvm_memory_slot *memslot, 1583 const struct kvm_memory_slot *memslot); 1585 const struct kvm_memory_slot *memslot);
|