| /linux/drivers/virtio/ |
| H A D | virtio_mem.c | 285 static void virtio_mem_retry(struct virtio_mem *vm); 286 static int virtio_mem_create_resource(struct virtio_mem *vm); 287 static void virtio_mem_delete_resource(struct virtio_mem *vm); 293 static int register_virtio_mem_device(struct virtio_mem *vm) in register_virtio_mem_device() argument 302 list_add_rcu(&vm->next, &virtio_mem_devices); in register_virtio_mem_device() 312 static void unregister_virtio_mem_device(struct virtio_mem *vm) in unregister_virtio_mem_device() argument 316 list_del_rcu(&vm->next); in unregister_virtio_mem_device() 343 static unsigned long virtio_mem_phys_to_bb_id(struct virtio_mem *vm, in virtio_mem_phys_to_bb_id() argument 346 return addr / vm->bbm.bb_size; in virtio_mem_phys_to_bb_id() 352 static uint64_t virtio_mem_bb_id_to_phys(struct virtio_mem *vm, in virtio_mem_bb_id_to_phys() argument [all …]
|
| /linux/tools/testing/selftests/kvm/lib/arm64/ |
| H A D | processor.c | 24 static u64 pgd_index(struct kvm_vm *vm, gva_t gva) in pgd_index() argument 26 unsigned int shift = (vm->mmu.pgtable_levels - 1) * (vm->page_shift - 3) + vm->page_shift; in pgd_index() 27 u64 mask = (1UL << (vm->va_bits - shift)) - 1; in pgd_index() 32 static u64 pud_index(struct kvm_vm *vm, gva_t gva) in pud_index() argument 34 unsigned int shift = 2 * (vm->page_shift - 3) + vm->page_shift; in pud_index() 35 u64 mask = (1UL << (vm->page_shift - 3)) - 1; in pud_index() 37 TEST_ASSERT(vm->mmu.pgtable_levels == 4, in pud_index() 38 "Mode %d does not have 4 page table levels", vm->mode); in pud_index() 43 static u64 pmd_index(struct kvm_vm *vm, gva_t gva) in pmd_index() argument 45 unsigned int shift = (vm->page_shift - 3) + vm->page_shift; in pmd_index() [all …]
|
| /linux/tools/testing/selftests/kvm/lib/x86/ |
| H A D | sev.c | 17 static void encrypt_region(struct kvm_vm *vm, struct userspace_mem_region *region, in encrypt_region() argument 22 const sparsebit_idx_t lowest_page_in_region = gpa_base >> vm->page_shift; in encrypt_region() 28 if (!is_sev_snp_vm(vm)) in encrypt_region() 29 sev_register_encrypted_memory(vm, region); in encrypt_region() 32 const u64 size = (j - i + 1) * vm->page_size; in encrypt_region() 33 const u64 offset = (i - lowest_page_in_region) * vm->page_size; in encrypt_region() 36 vm_mem_set_private(vm, gpa_base + offset, size); in encrypt_region() 38 if (is_sev_snp_vm(vm)) in encrypt_region() 39 snp_launch_update_data(vm, gpa_base + offset, in encrypt_region() 40 (u64)addr_gpa2hva(vm, gpa_base + offset), in encrypt_region() [all …]
|
| /linux/tools/testing/selftests/kvm/s390/ |
| H A D | cmma_test.c | 103 static void create_main_memslot(struct kvm_vm *vm) in create_main_memslot() argument 107 vm_userspace_mem_region_add(vm, VM_MEM_SRC_ANONYMOUS, 0, 0, MAIN_PAGE_COUNT, 0); in create_main_memslot() 110 vm->memslots[i] = 0; in create_main_memslot() 113 static void create_test_memslot(struct kvm_vm *vm) in create_test_memslot() argument 115 vm_userspace_mem_region_add(vm, in create_test_memslot() 117 TEST_DATA_START_GFN << vm->page_shift, in create_test_memslot() 122 vm->memslots[MEM_REGION_TEST_DATA] = TEST_DATA_MEMSLOT; in create_test_memslot() 125 static void create_memslots(struct kvm_vm *vm) in create_memslots() argument 141 create_main_memslot(vm); in create_memslots() 142 create_test_memslot(vm); in create_memslots() [all …]
|
| H A D | user_operexec.c | 25 struct kvm_vm *vm; in test_user_instr0() local 28 vm = vm_create_with_one_vcpu(&vcpu, guest_code_instr0); in test_user_instr0() 29 rc = __vm_enable_cap(vm, KVM_CAP_S390_USER_INSTR0, 0); in test_user_instr0() 37 kvm_vm_free(vm); in test_user_instr0() 48 struct kvm_vm *vm; in test_user_operexec() local 51 vm = vm_create_with_one_vcpu(&vcpu, guest_code_user_operexec); in test_user_operexec() 52 rc = __vm_enable_cap(vm, KVM_CAP_S390_USER_OPEREXEC, 0); in test_user_operexec() 60 kvm_vm_free(vm); in test_user_operexec() 66 vm = vm_create_with_one_vcpu(&vcpu, guest_code_instr0); in test_user_operexec() 67 rc = __vm_enable_cap(vm, KVM_CAP_S390_USER_OPEREXEC, 0); in test_user_operexec() [all …]
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_userptr.c | 14 static void xe_userptr_assert_in_notifier(struct xe_vm *vm) in xe_userptr_assert_in_notifier() argument 16 lockdep_assert(lockdep_is_held_type(&vm->svm.gpusvm.notifier_lock, 0) || in xe_userptr_assert_in_notifier() 17 (lockdep_is_held(&vm->lock) && in xe_userptr_assert_in_notifier() 18 lockdep_is_held_type(&vm->svm.gpusvm.notifier_lock, 1) && in xe_userptr_assert_in_notifier() 19 dma_resv_held(xe_vm_resv(vm)))); in xe_userptr_assert_in_notifier() 52 int __xe_vm_userptr_needs_repin(struct xe_vm *vm) in __xe_vm_userptr_needs_repin() argument 54 lockdep_assert_held_read(&vm->svm.gpusvm.notifier_lock); in __xe_vm_userptr_needs_repin() 56 return (list_empty(&vm->userptr.repin_list) && in __xe_vm_userptr_needs_repin() 57 list_empty(&vm->userptr.invalidated)) ? 0 : -EAGAIN; in __xe_vm_userptr_needs_repin() 63 struct xe_vm *vm = xe_vma_vm(vma); in xe_vma_userptr_pin_pages() local [all …]
|
| H A D | xe_vm.c | 46 static struct drm_gem_object *xe_vm_obj(struct xe_vm *vm) in xe_vm_obj() argument 48 return vm->gpuvm.r_obj; in xe_vm_obj() 60 int xe_vm_drm_exec_lock(struct xe_vm *vm, struct drm_exec *exec) in xe_vm_drm_exec_lock() argument 62 return drm_exec_lock_obj(exec, xe_vm_obj(vm)); in xe_vm_drm_exec_lock() 65 static bool preempt_fences_waiting(struct xe_vm *vm) in preempt_fences_waiting() argument 69 lockdep_assert_held(&vm->lock); in preempt_fences_waiting() 70 xe_vm_assert_held(vm); in preempt_fences_waiting() 72 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) { in preempt_fences_waiting() 91 static int alloc_preempt_fences(struct xe_vm *vm, struct list_head *list, in alloc_preempt_fences() argument 94 lockdep_assert_held(&vm->lock); in alloc_preempt_fences() [all …]
|
| /linux/drivers/gpu/drm/lima/ |
| H A D | lima_vm.c | 18 struct lima_vm *vm; member 35 static void lima_vm_unmap_range(struct lima_vm *vm, u32 start, u32 end) in lima_vm_unmap_range() argument 43 vm->bts[pbe].cpu[bte] = 0; in lima_vm_unmap_range() 47 static int lima_vm_map_page(struct lima_vm *vm, dma_addr_t pa, u32 va) in lima_vm_map_page() argument 52 if (!vm->bts[pbe].cpu) { in lima_vm_map_page() 57 vm->bts[pbe].cpu = dma_alloc_wc( in lima_vm_map_page() 58 vm->dev->dev, LIMA_PAGE_SIZE << LIMA_VM_NUM_PT_PER_BT_SHIFT, in lima_vm_map_page() 59 &vm->bts[pbe].dma, GFP_KERNEL | __GFP_NOWARN | __GFP_ZERO); in lima_vm_map_page() 60 if (!vm->bts[pbe].cpu) in lima_vm_map_page() 63 pts = vm->bts[pbe].dma; in lima_vm_map_page() [all …]
|
| /linux/tools/testing/selftests/kvm/lib/loongarch/ |
| H A D | processor.c | 18 static u64 virt_pte_index(struct kvm_vm *vm, gva_t gva, int level) in virt_pte_index() argument 23 shift = level * (vm->page_shift - 3) + vm->page_shift; in virt_pte_index() 24 mask = (1UL << (vm->page_shift - 3)) - 1; in virt_pte_index() 28 static u64 pte_addr(struct kvm_vm *vm, u64 entry) in pte_addr() argument 30 return entry & ~((0x1UL << vm->page_shift) - 1); in pte_addr() 33 static u64 ptrs_per_pte(struct kvm_vm *vm) in ptrs_per_pte() argument 35 return 1 << (vm->page_shift - 3); in ptrs_per_pte() 38 static void virt_set_pgtable(struct kvm_vm *vm, gpa_t table, gpa_t child) in virt_set_pgtable() argument 43 ptep = addr_gpa2hva(vm, tabl in virt_set_pgtable() 49 virt_arch_pgd_alloc(struct kvm_vm * vm) virt_arch_pgd_alloc() argument 75 virt_populate_pte(struct kvm_vm * vm,gva_t gva,int alloc) virt_populate_pte() argument 109 addr_arch_gva2gpa(struct kvm_vm * vm,gva_t gva) addr_arch_gva2gpa() argument 119 virt_arch_pg_map(struct kvm_vm * vm,gva_t gva,gpa_t gpa) virt_arch_pg_map() argument 142 pte_dump(FILE * stream,struct kvm_vm * vm,u8 indent,u64 page,int level) pte_dump() argument 160 virt_arch_dump(FILE * stream,struct kvm_vm * vm,u8 indent) virt_arch_dump() argument 204 vm_init_descriptor_tables(struct kvm_vm * vm) vm_init_descriptor_tables() argument 218 vm_install_exception_handler(struct kvm_vm * vm,int vector,handler_fn handler) vm_install_exception_handler() argument 284 struct kvm_vm *vm = vcpu->vm; loongarch_vcpu_setup() local 372 vm_arch_vcpu_add(struct kvm_vm * vm,u32 vcpu_id) vm_arch_vcpu_add() argument [all...] |
| /linux/drivers/gpu/drm/panthor/ |
| H A D | panthor_mmu.c | 51 struct panthor_vm *vm; member 110 } vm; member 437 struct panthor_vm *vm; member 469 struct panthor_vm *vm = cookie; in alloc_pt() local 473 if (unlikely(!vm->root_page_table)) { in alloc_pt() 476 drm_WARN_ON(&vm->ptdev->base, vm->op_ctx); in alloc_pt() 477 p = alloc_pages_node(dev_to_node(vm->ptdev->base.dev), in alloc_pt() 480 vm->root_page_table = page; in alloc_pt() 487 if (drm_WARN_ON(&vm->ptdev->base, size != SZ_4K)) in alloc_pt() 493 if (drm_WARN_ON(&vm->ptdev->base, !vm->op_ctx) || in alloc_pt() [all …]
|
| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_vm.c | 122 struct amdgpu_vm *vm; member 136 static void amdgpu_vm_assert_locked(struct amdgpu_vm *vm) in amdgpu_vm_assert_locked() argument 138 dma_resv_assert_held(vm->root.bo->tbo.base.resv); in amdgpu_vm_assert_locked() 156 struct amdgpu_vm *vm = vm_bo->vm; in amdgpu_vm_bo_lock_lists() local 159 if (amdgpu_vm_is_bo_always_valid(vm, bo)) { in amdgpu_vm_bo_lock_lists() 161 amdgpu_vm_assert_locked(vm); in amdgpu_vm_bo_lock_lists() 164 return &vm->kernel; in amdgpu_vm_bo_lock_lists() 166 return &vm->always_valid; in amdgpu_vm_bo_lock_lists() 169 spin_lock(&vm_bo->vm->individual_lock); in amdgpu_vm_bo_lock_lists() 170 return &vm->individual; in amdgpu_vm_bo_lock_lists() [all …]
|
| /linux/drivers/virt/acrn/ |
| H A D | vm.c | 25 struct acrn_vm *acrn_vm_create(struct acrn_vm *vm, in acrn_vm_create() argument 37 mutex_init(&vm->regions_mapping_lock); in acrn_vm_create() 38 INIT_LIST_HEAD(&vm->ioreq_clients); in acrn_vm_create() 39 spin_lock_init(&vm->ioreq_clients_lock); in acrn_vm_create() 40 vm->vmid = vm_param->vmid; in acrn_vm_create() 41 vm->vcpu_num = vm_param->vcpu_num; in acrn_vm_create() 43 if (acrn_ioreq_init(vm, vm_param->ioreq_buf) < 0) { in acrn_vm_create() 45 vm->vmid = ACRN_INVALID_VMID; in acrn_vm_create() 50 list_add(&vm->list, &acrn_vm_list); in acrn_vm_create() 53 acrn_ioeventfd_init(vm); in acrn_vm_create() [all …]
|
| H A D | ioreq.c | 39 static int ioreq_complete_request(struct acrn_vm *vm, u16 vcpu, in ioreq_complete_request() argument 64 ret = hcall_notify_req_finish(vm->vmid, vcpu); in ioreq_complete_request() 79 if (vcpu >= client->vm->vcpu_num) in acrn_ioreq_complete_request() 84 acrn_req = (struct acrn_io_request *)client->vm->ioreq_buf; in acrn_ioreq_complete_request() 88 ret = ioreq_complete_request(client->vm, vcpu, acrn_req); in acrn_ioreq_complete_request() 93 int acrn_ioreq_request_default_complete(struct acrn_vm *vm, u16 vcpu) in acrn_ioreq_request_default_complete() argument 97 spin_lock_bh(&vm->ioreq_clients_lock); in acrn_ioreq_request_default_complete() 98 if (vm->default_client) in acrn_ioreq_request_default_complete() 99 ret = acrn_ioreq_complete_request(vm->default_client, in acrn_ioreq_request_default_complete() 101 spin_unlock_bh(&vm->ioreq_clients_lock); in acrn_ioreq_request_default_complete() [all …]
|
| H A D | ioeventfd.c | 43 static void acrn_ioeventfd_shutdown(struct acrn_vm *vm, struct hsm_ioeventfd *p) in acrn_ioeventfd_shutdown() argument 45 lockdep_assert_held(&vm->ioeventfds_lock); in acrn_ioeventfd_shutdown() 52 static bool hsm_ioeventfd_is_conflict(struct acrn_vm *vm, in hsm_ioeventfd_is_conflict() argument 57 lockdep_assert_held(&vm->ioeventfds_lock); in hsm_ioeventfd_is_conflict() 60 list_for_each_entry(p, &vm->ioeventfds, list) in hsm_ioeventfd_is_conflict() 76 static int acrn_ioeventfd_assign(struct acrn_vm *vm, in acrn_ioeventfd_assign() argument 121 mutex_lock(&vm->ioeventfds_lock); in acrn_ioeventfd_assign() 123 if (hsm_ioeventfd_is_conflict(vm, p)) { in acrn_ioeventfd_assign() 129 ret = acrn_ioreq_range_add(vm->ioeventfd_client, p->type, in acrn_ioeventfd_assign() 134 list_add_tail(&p->list, &vm->ioeventfds); in acrn_ioeventfd_assign() [all …]
|
| /linux/drivers/gpu/drm/i915/selftests/ |
| H A D | mock_gtt.c | 27 static void mock_insert_page(struct i915_address_space *vm, in mock_insert_page() argument 35 static void mock_insert_entries(struct i915_address_space *vm, in mock_insert_entries() argument 41 static void mock_bind_ppgtt(struct i915_address_space *vm, in mock_bind_ppgtt() argument 51 static void mock_unbind_ppgtt(struct i915_address_space *vm, in mock_unbind_ppgtt() argument 56 static void mock_cleanup(struct i915_address_space *vm) in mock_cleanup() argument 60 static void mock_clear_range(struct i915_address_space *vm, in mock_clear_range() argument 73 ppgtt->vm.gt = to_gt(i915); in mock_ppgtt() 74 ppgtt->vm.i915 = i915; in mock_ppgtt() 75 ppgtt->vm.total = round_down(U64_MAX, PAGE_SIZE); in mock_ppgtt() 76 ppgtt->vm.dma = i915->drm.dev; in mock_ppgtt() [all …]
|
| /linux/tools/testing/selftests/kvm/lib/s390/ |
| H A D | processor.c | 13 void virt_arch_pgd_alloc(struct kvm_vm *vm) in virt_arch_pgd_alloc() argument 17 TEST_ASSERT(vm->page_size == PAGE_SIZE, "Unsupported page size: 0x%x", in virt_arch_pgd_alloc() 18 vm->page_size); in virt_arch_pgd_alloc() 20 if (vm->mmu.pgd_created) in virt_arch_pgd_alloc() 23 gpa = vm_phy_pages_alloc(vm, PAGES_PER_REGION, in virt_arch_pgd_alloc() 25 vm->memslots[MEM_REGION_PT]); in virt_arch_pgd_alloc() 26 memset(addr_gpa2hva(vm, gpa), 0xff, PAGES_PER_REGION * vm->page_size); in virt_arch_pgd_alloc() 28 vm->mmu.pgd = gpa; in virt_arch_pgd_alloc() 29 vm->mmu.pgd_created = true; in virt_arch_pgd_alloc() 37 static u64 virt_alloc_region(struct kvm_vm *vm, int ri) in virt_alloc_region() argument [all …]
|
| /linux/tools/testing/selftests/kvm/lib/ |
| H A D | kvm_util.c | 176 void vm_enable_dirty_ring(struct kvm_vm *vm, u32 ring_size) 178 if (vm_check_cap(vm, KVM_CAP_DIRTY_LOG_RING_ACQ_REL)) in vm_open() 179 vm_enable_cap(vm, KVM_CAP_DIRTY_LOG_RING_ACQ_REL, ring_size); in vm_open() 181 vm_enable_cap(vm, KVM_CAP_DIRTY_LOG_RING, ring_size); in vm_open() 182 vm->dirty_ring_size = ring_size; in vm_open() 185 static void vm_open(struct kvm_vm *vm) in vm_open() 187 vm->kvm_fd = _open_kvm_dev_path_or_exit(O_RDWR); in vm_open() 191 vm->fd = __kvm_ioctl(vm->kvm_fd, KVM_CREATE_VM, (void *)vm in vm_open() 168 vm_enable_dirty_ring(struct kvm_vm * vm,u32 ring_size) vm_enable_dirty_ring() argument 177 vm_open(struct kvm_vm * vm) vm_open() argument 270 vm_populate_gva_bitmap(struct kvm_vm * vm) vm_populate_gva_bitmap() argument 281 struct kvm_vm *vm; ____vm_create() local 485 struct kvm_vm *vm; __vm_create() local 553 struct kvm_vm *vm; __vm_create_with_vcpus() local 573 struct kvm_vm *vm; __vm_create_shape_with_one_vcpu() local 616 vm_arch_vcpu_recreate(struct kvm_vm * vm,u32 vcpu_id) vm_arch_vcpu_recreate() argument 622 vm_recreate_with_one_vcpu(struct kvm_vm * vm) vm_recreate_with_one_vcpu() argument 718 userspace_mem_region_find(struct kvm_vm * vm,u64 start,u64 end) userspace_mem_region_find() argument 771 vm_vcpu_rm(struct kvm_vm * vm,struct kvm_vcpu * vcpu) vm_vcpu_rm() argument 805 __vm_mem_region_delete(struct kvm_vm * vm,struct userspace_mem_region * region) __vm_mem_region_delete() argument 921 __vm_set_user_memory_region(struct kvm_vm * vm,u32 slot,u32 flags,gpa_t gpa,u64 size,void * hva) __vm_set_user_memory_region() argument 935 vm_set_user_memory_region(struct kvm_vm * vm,u32 slot,u32 flags,gpa_t gpa,u64 size,void * hva) vm_set_user_memory_region() argument 948 __vm_set_user_memory_region2(struct kvm_vm * vm,u32 slot,u32 flags,gpa_t gpa,u64 size,void * hva,u32 guest_memfd,u64 guest_memfd_offset) __vm_set_user_memory_region2() argument 967 vm_set_user_memory_region2(struct kvm_vm * vm,u32 slot,u32 flags,gpa_t gpa,u64 size,void * hva,u32 guest_memfd,u64 guest_memfd_offset) vm_set_user_memory_region2() argument 980 vm_mem_add(struct kvm_vm * vm,enum vm_mem_backing_src_type src_type,gpa_t gpa,u32 slot,u64 npages,u32 flags,int guest_memfd,u64 guest_memfd_offset) vm_mem_add() argument 1142 vm_userspace_mem_region_add(struct kvm_vm * vm,enum vm_mem_backing_src_type src_type,gpa_t gpa,u32 slot,u64 npages,u32 flags) vm_userspace_mem_region_add() argument 1165 memslot2region(struct kvm_vm * vm,u32 memslot) memslot2region() argument 1196 vm_mem_region_set_flags(struct kvm_vm * vm,u32 slot,u32 flags) vm_mem_region_set_flags() argument 1212 vm_mem_region_reload(struct kvm_vm * vm,u32 slot) vm_mem_region_reload() argument 1236 vm_mem_region_move(struct kvm_vm * vm,u32 slot,u64 new_gpa) vm_mem_region_move() argument 1265 vm_mem_region_delete(struct kvm_vm * vm,u32 slot) vm_mem_region_delete() argument 1275 vm_guest_mem_fallocate(struct kvm_vm * vm,u64 base,u64 size,bool punch_hole) vm_guest_mem_fallocate() argument 1319 vcpu_exists(struct kvm_vm * vm,u32 vcpu_id) vcpu_exists() argument 1335 __vm_vcpu_add(struct kvm_vm * vm,u32 vcpu_id) __vm_vcpu_add() argument 1374 vm_unused_gva_gap(struct kvm_vm * vm,size_t sz,gva_t min_gva) vm_unused_gva_gap() argument 1439 ____vm_alloc(struct kvm_vm * vm,size_t sz,gva_t min_gva,enum kvm_mem_region_type type,bool protected) ____vm_alloc() argument 1465 __vm_alloc(struct kvm_vm * vm,size_t sz,gva_t min_gva,enum kvm_mem_region_type type) __vm_alloc() argument 1472 vm_alloc_shared(struct kvm_vm * vm,size_t sz,gva_t min_gva,enum kvm_mem_region_type type) vm_alloc_shared() argument 1485 vm_alloc(struct kvm_vm * vm,size_t sz,gva_t min_gva) vm_alloc() argument 1490 vm_alloc_pages(struct kvm_vm * vm,int nr_pages) vm_alloc_pages() argument 1495 __vm_alloc_page(struct kvm_vm * vm,enum kvm_mem_region_type type) __vm_alloc_page() argument 1500 vm_alloc_page(struct kvm_vm * vm) vm_alloc_page() argument 1511 virt_map(struct kvm_vm * vm,gva_t gva,gpa_t gpa,unsigned int npages) virt_map() argument 1544 addr_gpa2hva(struct kvm_vm * vm,gpa_t gpa) addr_gpa2hva() argument 1577 addr_hva2gpa(struct kvm_vm * vm,void * hva) addr_hva2gpa() argument 1620 addr_gpa2alias(struct kvm_vm * vm,gpa_t gpa) addr_gpa2alias() argument 1637 vm_create_irqchip(struct kvm_vm * vm) vm_create_irqchip() argument 1755 __kvm_test_create_device(struct kvm_vm * vm,u64 type) __kvm_test_create_device() argument 1765 __kvm_create_device(struct kvm_vm * vm,u64 type) __kvm_create_device() argument 1807 _kvm_irq_line(struct kvm_vm * vm,u32 irq,int level) _kvm_irq_line() argument 1817 kvm_irq_line(struct kvm_vm * vm,u32 irq,int level) kvm_irq_line() argument 1855 _kvm_gsi_routing_write(struct kvm_vm * vm,struct kvm_irq_routing * routing) _kvm_gsi_routing_write() argument 1866 kvm_gsi_routing_write(struct kvm_vm * vm,struct kvm_irq_routing * routing) kvm_gsi_routing_write() argument 1889 vm_dump(FILE * stream,struct kvm_vm * vm,u8 indent) vm_dump() argument 2024 __vm_phy_pages_alloc(struct kvm_vm * vm,size_t num,gpa_t min_gpa,u32 memslot,bool protected) __vm_phy_pages_alloc() argument 2070 vm_phy_page_alloc(struct kvm_vm * vm,gpa_t min_gpa,u32 memslot) vm_phy_page_alloc() argument 2075 vm_alloc_page_table(struct kvm_vm * vm) vm_alloc_page_table() argument 2093 addr_gva2hva(struct kvm_vm * vm,gva_t gva) addr_gva2hva() argument 2098 vm_compute_max_gfn(struct kvm_vm * vm) vm_compute_max_gfn() argument 2238 kvm_arch_vm_post_create(struct kvm_vm * vm,unsigned int nr_vcpus) kvm_arch_vm_post_create() argument 2242 kvm_arch_vm_finalize_vcpus(struct kvm_vm * vm) kvm_arch_vm_finalize_vcpus() argument 2246 kvm_arch_vm_release(struct kvm_vm * vm) kvm_arch_vm_release() argument 2289 vm_is_gpa_protected(struct kvm_vm * vm,gpa_t gpa) vm_is_gpa_protected() argument [all...] |
| /linux/drivers/gpu/drm/i915/gt/ |
| H A D | gen8_ppgtt.c | 90 struct drm_i915_private *i915 = ppgtt->vm.i915; in gen8_ppgtt_notify_vgt() 91 struct intel_uncore *uncore = ppgtt->vm.gt->uncore; in gen8_ppgtt_notify_vgt() 102 if (i915_vm_is_4lvl(&ppgtt->vm)) { in gen8_ppgtt_notify_vgt() 180 static unsigned int gen8_pd_top_count(const struct i915_address_space *vm) in gen8_pd_top_count() argument 182 unsigned int shift = __gen8_pte_shift(vm->top); in gen8_pd_top_count() 184 return (vm->total + (1ull << shift) - 1) >> shift; in gen8_pd_top_count() 188 gen8_pdp_for_page_index(struct i915_address_space * const vm, const u64 idx) in gen8_pdp_for_page_index() argument 190 struct i915_ppgtt * const ppgtt = i915_vm_to_ppgtt(vm); in gen8_pdp_for_page_index() 192 if (vm->top == 2) in gen8_pdp_for_page_index() 195 return i915_pd_entry(ppgtt->pd, gen8_pd_index(idx, vm->top)); in gen8_pdp_for_page_index() [all …]
|
| /linux/tools/testing/selftests/kvm/include/x86/ |
| H A D | sev.h | 34 static inline bool is_sev_snp_vm(struct kvm_vm *vm) in is_sev_snp_vm() argument 36 return vm->type == KVM_X86_SNP_VM; in is_sev_snp_vm() 39 static inline bool is_sev_es_vm(struct kvm_vm *vm) in is_sev_es_vm() argument 41 return is_sev_snp_vm(vm) || vm->type == KVM_X86_SEV_ES_VM; in is_sev_es_vm() 44 static inline bool is_sev_vm(struct kvm_vm *vm) in is_sev_vm() argument 46 return is_sev_es_vm(vm) || vm->type == KVM_X86_SEV_VM; in is_sev_vm() 49 void sev_vm_launch(struct kvm_vm *vm, u32 policy); 50 void sev_vm_launch_measure(struct kvm_vm *vm, u 79 __vm_sev_ioctl(vm,cmd,arg) global() argument 96 vm_sev_ioctl(vm,cmd,arg) global() argument 112 sev_register_encrypted_memory(struct kvm_vm * vm,struct userspace_mem_region * region) sev_register_encrypted_memory() argument 123 sev_launch_update_data(struct kvm_vm * vm,gpa_t gpa,u64 size) sev_launch_update_data() argument 134 snp_launch_update_data(struct kvm_vm * vm,gpa_t gpa,u64 hva,u64 size,u8 type) snp_launch_update_data() argument [all...] |
| /linux/sound/pci/ctxfi/ |
| H A D | ctvmem.c | 30 get_vm_block(struct ct_vm *vm, unsigned int size, struct ct_atc *atc) in get_vm_block() argument 36 if (size > vm->size) { in get_vm_block() 42 guard(mutex)(&vm->lock); in get_vm_block() 43 list_for_each(pos, &vm->unused) { in get_vm_block() 48 if (pos == &vm->unused) in get_vm_block() 53 list_move(&entry->list, &vm->used); in get_vm_block() 54 vm->size -= size; in get_vm_block() 64 list_add(&block->list, &vm->used); in get_vm_block() 67 vm->size -= size; in get_vm_block() 72 static void put_vm_block(struct ct_vm *vm, struct ct_vm_block *block) in put_vm_block() argument [all …]
|
| /linux/tools/testing/selftests/kvm/arm64/ |
| H A D | smccc_filter.c | 27 struct kvm_vm *vm = vm_create(1); in test_runs_at_el2() local 30 kvm_get_default_vcpu_target(vm, &init); in test_runs_at_el2() 31 kvm_vm_free(vm); in test_runs_at_el2() 52 static int __set_smccc_filter(struct kvm_vm *vm, u32 start, u32 nr_functions, in __set_smccc_filter() argument 61 return __kvm_device_attr_set(vm->fd, KVM_ARM_VM_SMCCC_CTRL, in __set_smccc_filter() 65 static void set_smccc_filter(struct kvm_vm *vm, u32 start, u32 nr_functions, in set_smccc_filter() argument 68 int ret = __set_smccc_filter(vm, start, nr_functions, action); in set_smccc_filter() 76 struct kvm_vm *vm; in setup_vm() local 78 vm = vm_create(1); in setup_vm() 79 kvm_get_default_vcpu_target(vm, in setup_vm() 95 struct kvm_vm *vm = setup_vm(&vcpu); test_pad_must_be_zero() local 114 struct kvm_vm *vm = setup_vm(&vcpu); test_filter_reserved_range() local 136 struct kvm_vm *vm = setup_vm(&vcpu); test_invalid_nr_functions() local 149 struct kvm_vm *vm = setup_vm(&vcpu); test_overflow_nr_functions() local 162 struct kvm_vm *vm = setup_vm(&vcpu); test_reserved_action() local 177 struct kvm_vm *vm = setup_vm(&vcpu); test_filter_overlap() local 205 struct kvm_vm *vm; test_filter_denied() local 243 struct kvm_vm *vm; test_filter_fwd_to_user() local 260 struct kvm_vm *vm = vm_create_barebones(); kvm_supports_smccc_filter() local [all...] |
| /linux/drivers/gpu/drm/radeon/ |
| H A D | radeon_vm.c | 130 struct radeon_vm *vm, in radeon_vm_get_bos() argument 136 list = kvmalloc_objs(struct radeon_bo_list, vm->max_pde_used + 2); in radeon_vm_get_bos() 141 list[0].robj = vm->page_directory; in radeon_vm_get_bos() 148 for (i = 0, idx = 1; i <= vm->max_pde_used; i++) { in radeon_vm_get_bos() 149 if (!vm->page_tables[i].bo) in radeon_vm_get_bos() 152 list[idx].robj = vm->page_tables[i].bo; in radeon_vm_get_bos() 176 struct radeon_vm *vm, int ring) in radeon_vm_grab_id() argument 179 struct radeon_vm_id *vm_id = &vm->ids[ring]; in radeon_vm_grab_id() 235 struct radeon_vm *vm, in radeon_vm_flush() argument 238 uint64_t pd_addr = radeon_bo_gpu_offset(vm->page_directory); in radeon_vm_flush() [all …]
|
| /linux/tools/testing/selftests/kvm/include/ |
| H A D | kvm_util.h | 63 struct kvm_vm *vm; member 160 #define kvm_for_each_vcpu(vm, i, vcpu) \ argument 161 for ((i) = 0; (i) <= (vm)->last_vcpu_id; (i)++) \ 162 if (!((vcpu) = vm->vcpus[i])) \ 167 memslot2region(struct kvm_vm *vm, u32 memslot); 169 static inline struct userspace_mem_region *vm_get_mem_region(struct kvm_vm *vm, in vm_get_mem_region() argument 173 return memslot2region(vm, vm->memslots[type]); in vm_get_mem_region() 336 static __always_inline void static_assert_is_vm(struct kvm_vm *vm) { } in static_assert_is_vm() argument 338 #define __vm_ioctl(vm, cm argument 352 __TEST_ASSERT_VM_VCPU_IOCTL(cond,name,ret,vm) global() argument 370 TEST_ASSERT_VM_VCPU_IOCTL(cond,cmd,ret,vm) global() argument 373 vm_ioctl(vm,cmd,arg) global() argument 399 vm_check_cap(struct kvm_vm * vm,long cap) vm_check_cap() argument 407 __vm_enable_cap(struct kvm_vm * vm,u32 cap,u64 arg0) __vm_enable_cap() argument 414 vm_enable_cap(struct kvm_vm * vm,u32 cap,u64 arg0) vm_enable_cap() argument 421 vm_set_memory_attributes(struct kvm_vm * vm,gpa_t gpa,u64 size,u64 attributes) vm_set_memory_attributes() argument 442 vm_mem_set_private(struct kvm_vm * vm,gpa_t gpa,u64 size) vm_mem_set_private() argument 448 vm_mem_set_shared(struct kvm_vm * vm,gpa_t gpa,u64 size) vm_mem_set_shared() argument 457 vm_guest_mem_punch_hole(struct kvm_vm * vm,gpa_t gpa,u64 size) vm_guest_mem_punch_hole() argument 463 vm_guest_mem_allocate(struct kvm_vm * vm,gpa_t gpa,u64 size) vm_guest_mem_allocate() argument 480 kvm_vm_get_dirty_log(struct kvm_vm * vm,int slot,void * log) kvm_vm_get_dirty_log() argument 487 kvm_vm_clear_dirty_log(struct kvm_vm * vm,int slot,void * log,u64 first_page,u32 num_pages) kvm_vm_clear_dirty_log() argument 500 kvm_vm_reset_dirty_ring(struct kvm_vm * vm) kvm_vm_reset_dirty_ring() argument 505 kvm_vm_register_coalesced_io(struct kvm_vm * vm,u64 address,u64 size,bool pio) kvm_vm_register_coalesced_io() argument 518 kvm_vm_unregister_coalesced_io(struct kvm_vm * vm,u64 address,u64 size,bool pio) kvm_vm_unregister_coalesced_io() argument 531 vm_get_stats_fd(struct kvm_vm * vm) vm_get_stats_fd() argument 539 __kvm_irqfd(struct kvm_vm * vm,u32 gsi,int eventfd,u32 flags) __kvm_irqfd() argument 552 kvm_irqfd(struct kvm_vm * vm,u32 gsi,int eventfd,u32 flags) kvm_irqfd() argument 559 kvm_assign_irqfd(struct kvm_vm * vm,u32 gsi,int eventfd) kvm_assign_irqfd() argument 564 kvm_deassign_irqfd(struct kvm_vm * vm,u32 gsi,int eventfd) kvm_deassign_irqfd() argument 627 vm_get_stat(vm,stat) global() argument 667 __vm_create_guest_memfd(struct kvm_vm * vm,u64 size,u64 flags) __vm_create_guest_memfd() argument 678 vm_create_guest_memfd(struct kvm_vm * vm,u64 size,u64 flags) vm_create_guest_memfd() argument 706 vm_arch_has_protected_memory(struct kvm_vm * vm) vm_arch_has_protected_memory() argument 739 vm_untag_gpa(struct kvm_vm * vm,gpa_t gpa) vm_untag_gpa() argument 951 kvm_create_device(struct kvm_vm * vm,u64 type) kvm_create_device() argument 998 vm_phy_pages_alloc(struct kvm_vm * vm,size_t num,gpa_t min_gpa,u32 memslot) vm_phy_pages_alloc() argument 1131 sync_global_to_guest(vm,g) global() argument 1136 sync_global_from_guest(vm,g) global() argument 1147 write_guest_global(vm,g,val) global() argument 1175 vm_vcpu_add(struct kvm_vm * vm,u32 vcpu_id,void * guest_code) vm_vcpu_add() argument 1188 vm_vcpu_recreate(struct kvm_vm * vm,u32 vcpu_id) vm_vcpu_recreate() argument 1198 virt_pgd_alloc(struct kvm_vm * vm) virt_pgd_alloc() argument 1209 virt_pg_map(struct kvm_vm * vm,gva_t gva,gpa_t gpa) virt_pg_map() argument 1233 addr_gva2gpa(struct kvm_vm * vm,gva_t gva) addr_gva2gpa() argument 1255 virt_dump(FILE * stream,struct kvm_vm * vm,u8 indent) virt_dump() argument 1261 __vm_disable_nx_huge_pages(struct kvm_vm * vm) __vm_disable_nx_huge_pages() argument 1266 vm_page_align(struct kvm_vm * vm,u64 v) vm_page_align() argument [all...] |
| /linux/tools/testing/selftests/kvm/ |
| H A D | set_memory_region_test.c | 113 struct kvm_vm *vm; in spawn_vm() local 117 vm = vm_create_with_one_vcpu(vcpu, guest_code); in spawn_vm() 119 vm_userspace_mem_region_add(vm, VM_MEM_SRC_ANONYMOUS_THP, in spawn_vm() 127 gpa = vm_phy_pages_alloc(vm, 2, MEM_REGION_GPA, MEM_REGION_SLOT); in spawn_vm() 130 virt_map(vm, MEM_REGION_GPA, MEM_REGION_GPA, 2); in spawn_vm() 133 hva = addr_gpa2hva(vm, MEM_REGION_GPA); in spawn_vm() 141 return vm; in spawn_vm() 182 struct kvm_vm *vm; in test_move_memory_region() local 185 vm = spawn_vm(&vcpu, &vcpu_thread, guest_code_move_memory_region); in test_move_memory_region() 188 vm_enable_cap(vm, KVM_CAP_DISABLE_QUIRKS in test_move_memory_region() 278 struct kvm_vm *vm; test_delete_memory_region() local 331 struct kvm_vm *vm; test_zero_memory_regions() local 350 struct kvm_vm *vm; test_invalid_memory_region_flags() local 412 struct kvm_vm *vm; test_add_max_memory_regions() local 458 test_invalid_guest_memfd(struct kvm_vm * vm,int memfd,size_t offset,const char * msg) test_invalid_guest_memfd() argument 469 struct kvm_vm *vm, *vm2; test_add_private_memory_region() local 505 struct kvm_vm *vm; test_add_overlapping_private_memory_regions() local 572 struct kvm_vm *vm; test_mmio_during_vectoring() local [all...] |
| /linux/tools/testing/selftests/kvm/x86/ |
| H A D | nx_huge_pages_test.c | 72 static void check_2m_page_count(struct kvm_vm *vm, int expected_pages_2m) in check_2m_page_count() argument 76 actual_pages_2m = vm_get_stat(vm, pages_2m); in check_2m_page_count() 83 static void check_split_count(struct kvm_vm *vm, int expected_splits) in check_split_count() argument 87 actual_splits = vm_get_stat(vm, nx_lpage_splits); in check_split_count() 109 struct kvm_vm *vm; in run_test() local 114 vm = vm_create(1); in run_test() 117 r = __vm_disable_nx_huge_pages(vm); in run_test() 127 vcpu = vm_vcpu_add(vm, 0, guest_code); in run_test() 129 vm_userspace_mem_region_add(vm, VM_MEM_SRC_ANONYMOUS_HUGETLB, in run_test() 133 nr_bytes = HPAGE_SLOT_NPAGES * vm->page_size; in run_test() [all …]
|