Home
last modified time | relevance | path

Searched refs:vm (Results 1 – 25 of 416) sorted by relevance

12345678910>>...17

/linux/drivers/virtio/
H A Dvirtio_mem.c285 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 Dprocessor.c24 static uint64_t pgd_index(struct kvm_vm *vm, vm_vaddr_t gva) in page_align() argument
26 unsigned int shift = (vm->mmu.pgtable_levels - 1) * (vm->page_shift - 3) + vm->page_shift; in page_align()
27 uint64_t mask = (1UL << (vm->va_bits - shift)) - 1; in page_align()
32 static uint64_t pud_index(struct kvm_vm *vm, vm_vaddr_t gva) in pgd_index()
34 unsigned int shift = 2 * (vm->page_shift - 3) + vm->page_shift; in pgd_index()
35 uint64_t mask = (1UL << (vm->page_shift - 3)) - 1; in pgd_index()
37 TEST_ASSERT(vm argument
29 pgd_index(struct kvm_vm * vm,vm_vaddr_t gva) pgd_index() argument
48 pmd_index(struct kvm_vm * vm,vm_vaddr_t gva) pmd_index() argument
59 pte_index(struct kvm_vm * vm,vm_vaddr_t gva) pte_index() argument
65 use_lpa2_pte_format(struct kvm_vm * vm) use_lpa2_pte_format() argument
71 addr_pte(struct kvm_vm * vm,uint64_t pa,uint64_t attrs) addr_pte() argument
89 pte_addr(struct kvm_vm * vm,uint64_t pte) pte_addr() argument
105 ptrs_per_pgd(struct kvm_vm * vm) ptrs_per_pgd() argument
111 ptrs_per_pte(struct kvm_vm * vm) ptrs_per_pte() argument
116 virt_arch_pgd_alloc(struct kvm_vm * vm) virt_arch_pgd_alloc() argument
129 _virt_pg_map(struct kvm_vm * vm,uint64_t vaddr,uint64_t paddr,uint64_t flags) _virt_pg_map() argument
182 virt_arch_pg_map(struct kvm_vm * vm,uint64_t vaddr,uint64_t paddr) virt_arch_pg_map() argument
189 virt_get_pte_hva_at_level(struct kvm_vm * vm,vm_vaddr_t gva,int level) virt_get_pte_hva_at_level() argument
233 virt_get_pte_hva(struct kvm_vm * vm,vm_vaddr_t gva) virt_get_pte_hva() argument
238 addr_arch_gva2gpa(struct kvm_vm * vm,vm_vaddr_t gva) addr_arch_gva2gpa() argument
245 pte_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent,uint64_t page,int level) pte_dump() argument
264 virt_arch_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent) virt_arch_dump() argument
281 vm_supports_el2(struct kvm_vm * vm) vm_supports_el2() argument
291 kvm_get_default_vcpu_target(struct kvm_vm * vm,struct kvm_vcpu_init * init) kvm_get_default_vcpu_target() argument
305 struct kvm_vm *vm = vcpu->vm; aarch64_vcpu_setup() local
419 __aarch64_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id,struct kvm_vcpu_init * init) __aarch64_vcpu_add() argument
438 aarch64_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id,struct kvm_vcpu_init * init,void * guest_code) aarch64_vcpu_add() argument
448 vm_arch_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id) vm_arch_vcpu_add() argument
540 vm_init_descriptor_tables(struct kvm_vm * vm) vm_init_descriptor_tables() argument
548 vm_install_sync_handler(struct kvm_vm * vm,int vector,int ec,void (* handler)(struct ex_regs *)) vm_install_sync_handler() argument
559 vm_install_exception_handler(struct kvm_vm * vm,int vector,void (* handler)(struct ex_regs *)) vm_install_exception_handler() argument
677 vm_vaddr_populate_bitmap(struct kvm_vm * vm) vm_vaddr_populate_bitmap() argument
706 kvm_arch_vm_post_create(struct kvm_vm * vm,unsigned int nr_vcpus) kvm_arch_vm_post_create() argument
717 kvm_arch_vm_finalize_vcpus(struct kvm_vm * vm) kvm_arch_vm_finalize_vcpus() argument
723 kvm_arch_vm_release(struct kvm_vm * vm) kvm_arch_vm_release() argument
[all...]
/linux/tools/testing/selftests/kvm/s390/
H A Dcmma_test.c97 static void create_main_memslot(struct kvm_vm *vm) in create_main_memslot() argument
101 vm_userspace_mem_region_add(vm, VM_MEM_SRC_ANONYMOUS, 0, 0, MAIN_PAGE_COUNT, 0); in create_main_memslot()
104 vm->memslots[i] = 0; in create_main_memslot()
107 static void create_test_memslot(struct kvm_vm *vm) in create_test_memslot() argument
109 vm_userspace_mem_region_add(vm, in create_test_memslot()
111 TEST_DATA_START_GFN << vm->page_shift, in create_test_memslot()
116 vm->memslots[MEM_REGION_TEST_DATA] = TEST_DATA_MEMSLOT; in create_test_memslot()
119 static void create_memslots(struct kvm_vm *vm) in create_memslots() argument
135 create_main_memslot(vm); in create_memslots()
136 create_test_memslot(vm); in create_memslots()
139 finish_vm_setup(struct kvm_vm * vm) finish_vm_setup() argument
153 struct kvm_vm *vm; create_vm_two_memslots() local
164 enable_cmma(struct kvm_vm * vm) enable_cmma() argument
172 enable_dirty_tracking(struct kvm_vm * vm) enable_dirty_tracking() argument
178 __enable_migration_mode(struct kvm_vm * vm) __enable_migration_mode() argument
187 enable_migration_mode(struct kvm_vm * vm) enable_migration_mode() argument
194 is_migration_mode_on(struct kvm_vm * vm) is_migration_mode_on() argument
208 vm_get_cmma_bits(struct kvm_vm * vm,u64 flags,int * errno_out) vm_get_cmma_bits() argument
229 struct kvm_vm *vm = create_vm_two_memslots(); test_get_cmma_basic() local
274 struct kvm_vm *vm = vm_create_barebones(); test_migration_mode() local
376 assert_all_slots_cmma_dirty(struct kvm_vm * vm) assert_all_slots_cmma_dirty() argument
426 assert_no_pages_cmma_dirty(struct kvm_vm * vm) assert_no_pages_cmma_dirty() argument
449 struct kvm_vm *vm = create_vm_two_memslots(); test_get_initial_dirty() local
473 query_cmma_range(struct kvm_vm * vm,u64 start_gfn,u64 gfn_count,struct kvm_s390_cmma_log * res_out) query_cmma_range() argument
506 struct kvm_vm *vm = create_vm_two_memslots(); test_get_skip_holes() local
668 struct kvm_vm *vm = vm_create_barebones(); machine_has_cmma() local
[all...]
/linux/drivers/gpu/drm/xe/
H A Dxe_vm.h34 static inline struct xe_vm *xe_vm_get(struct xe_vm *vm) in xe_vm_get() argument
36 drm_gpuvm_get(&vm->gpuvm); in xe_vm_get()
37 return vm; in xe_vm_get()
40 static inline void xe_vm_put(struct xe_vm *vm) in xe_vm_put() argument
42 drm_gpuvm_put(&vm->gpuvm); in xe_vm_put()
45 int xe_vm_lock(struct xe_vm *vm, bool intr);
47 void xe_vm_unlock(struct xe_vm *vm);
49 static inline bool xe_vm_is_closed(struct xe_vm *vm) in xe_vm_is_closed() argument
52 return !vm->size; in xe_vm_is_closed()
55 static inline bool xe_vm_is_banned(struct xe_vm *vm) in xe_vm_is_banned() argument
[all …]
H A Dxe_vm.c44 static struct drm_gem_object *xe_vm_obj(struct xe_vm *vm) in xe_vm_obj() argument
46 return vm->gpuvm.r_obj; in xe_vm_obj()
58 int xe_vm_drm_exec_lock(struct xe_vm *vm, struct drm_exec *exec) in xe_vm_drm_exec_lock() argument
60 return drm_exec_lock_obj(exec, xe_vm_obj(vm)); in xe_vm_drm_exec_lock()
63 static bool preempt_fences_waiting(struct xe_vm *vm) in preempt_fences_waiting() argument
67 lockdep_assert_held(&vm->lock); in preempt_fences_waiting()
68 xe_vm_assert_held(vm); in preempt_fences_waiting()
70 list_for_each_entry(q, &vm->preempt.exec_queues, lr.link) { in preempt_fences_waiting()
89 static int alloc_preempt_fences(struct xe_vm *vm, struct list_head *list, in alloc_preempt_fences() argument
92 lockdep_assert_held(&vm->lock); in alloc_preempt_fences()
[all …]
H A Dxe_exec.c101 struct xe_vm *vm = container_of(vm_exec->vm, struct xe_vm, gpuvm); in xe_exec_fn() local
105 xe_vm_set_validation_exec(vm, &vm_exec->exec); in xe_exec_fn()
106 ret = xe_vm_validate_rebind(vm, &vm_exec->exec, 1); in xe_exec_fn()
107 xe_vm_set_validation_exec(vm, NULL); in xe_exec_fn()
126 struct xe_vm *vm; in xe_exec_ioctl() local
172 vm = q->vm; in xe_exec_ioctl()
178 (xe_vm_in_lr_mode(vm) ? in xe_exec_ioctl()
216 if (!xe_vm_in_lr_mode(vm) && xe_vm_userptr_check_repin(vm)) { in xe_exec_ioctl()
217 err = down_write_killable(&vm->lock); in xe_exec_ioctl()
221 err = down_read_interruptible(&vm->lock); in xe_exec_ioctl()
[all …]
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_vm.c122 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()
151 struct amdgpu_vm *vm = vm_bo->vm; in amdgpu_vm_bo_evicted() local
155 amdgpu_vm_assert_locked(vm); in amdgpu_vm_bo_evicted()
156 spin_lock(&vm_bo->vm->status_lock); in amdgpu_vm_bo_evicted()
158 list_move(&vm_bo->vm_status, &vm->evicted); in amdgpu_vm_bo_evicted()
160 list_move_tail(&vm_bo->vm_status, &vm->evicted); in amdgpu_vm_bo_evicted()
161 spin_unlock(&vm_bo->vm->status_lock); in amdgpu_vm_bo_evicted()
173 amdgpu_vm_assert_locked(vm_bo->vm); in amdgpu_vm_bo_moved()
[all …]
/linux/drivers/gpu/drm/panthor/
H A Dpanthor_mmu.c48 struct panthor_vm *vm; member
104 } vm; member
403 struct panthor_vm *vm; member
435 struct panthor_vm *vm = cookie; in alloc_pt() local
439 if (unlikely(!vm->root_page_table)) { in alloc_pt()
442 drm_WARN_ON(&vm->ptdev->base, vm->op_ctx); in alloc_pt()
443 p = alloc_pages_node(dev_to_node(vm->ptdev->base.dev), in alloc_pt()
446 vm->root_page_table = page; in alloc_pt()
453 if (drm_WARN_ON(&vm->ptdev->base, size != SZ_4K)) in alloc_pt()
459 if (drm_WARN_ON(&vm->ptdev->base, !vm->op_ctx) || in alloc_pt()
[all …]
/linux/tools/testing/selftests/kvm/lib/loongarch/
H A Dprocessor.c17 static uint64_t virt_pte_index(struct kvm_vm *vm, vm_vaddr_t gva, int level) in virt_pte_index() argument
22 shift = level * (vm->page_shift - 3) + vm->page_shift; in virt_pte_index()
23 mask = (1UL << (vm->page_shift - 3)) - 1; in virt_pte_index()
27 static uint64_t pte_addr(struct kvm_vm *vm, uint64_t entry) in pte_addr() argument
29 return entry & ~((0x1UL << vm->page_shift) - 1); in pte_addr()
32 static uint64_t ptrs_per_pte(struct kvm_vm *vm) in ptrs_per_pte() argument
34 return 1 << (vm->page_shift - 3); in ptrs_per_pte()
37 static void virt_set_pgtable(struct kvm_vm *vm, vm_paddr_t table, vm_paddr_t child) in virt_set_pgtable() argument
42 ptep = addr_gpa2hva(vm, tabl in virt_set_pgtable()
48 virt_arch_pgd_alloc(struct kvm_vm * vm) virt_arch_pgd_alloc() argument
74 virt_populate_pte(struct kvm_vm * vm,vm_vaddr_t gva,int alloc) virt_populate_pte() argument
108 addr_arch_gva2gpa(struct kvm_vm * vm,vm_vaddr_t gva) addr_arch_gva2gpa() argument
118 virt_arch_pg_map(struct kvm_vm * vm,uint64_t vaddr,uint64_t paddr) virt_arch_pg_map() argument
142 pte_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent,uint64_t page,int level) pte_dump() argument
160 virt_arch_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent) virt_arch_dump() argument
204 vm_init_descriptor_tables(struct kvm_vm * vm) vm_init_descriptor_tables() argument
217 vm_install_exception_handler(struct kvm_vm * vm,int vector,handler_fn handler) vm_install_exception_handler() argument
274 struct kvm_vm *vm = vcpu->vm; loongarch_vcpu_setup() local
359 vm_arch_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id) vm_arch_vcpu_add() argument
[all...]
/linux/drivers/gpu/drm/lima/
H A Dlima_vm.c18 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/
H A Dkvm_util.c168 void vm_enable_dirty_ring(struct kvm_vm *vm, uint32_t ring_size) in vm_enable_dirty_ring() argument
170 if (vm_check_cap(vm, KVM_CAP_DIRTY_LOG_RING_ACQ_REL)) in vm_enable_dirty_ring()
171 vm_enable_cap(vm, KVM_CAP_DIRTY_LOG_RING_ACQ_REL, ring_size); in vm_enable_dirty_ring()
173 vm_enable_cap(vm, KVM_CAP_DIRTY_LOG_RING, ring_size); in vm_enable_dirty_ring()
174 vm->dirty_ring_size = ring_size; in vm_enable_dirty_ring()
177 static void vm_open(struct kvm_vm *vm) in vm_open() argument
179 vm->kvm_fd = _open_kvm_dev_path_or_exit(O_RDWR); in vm_open()
183 vm->fd = __kvm_ioctl(vm->kvm_fd, KVM_CREATE_VM, (void *)vm in vm_open()
252 vm_vaddr_populate_bitmap(struct kvm_vm * vm) vm_vaddr_populate_bitmap() argument
263 struct kvm_vm *vm; ____vm_create() local
452 struct kvm_vm *vm; __vm_create() local
520 struct kvm_vm *vm; __vm_create_with_vcpus() local
540 struct kvm_vm *vm; __vm_create_shape_with_one_vcpu() local
583 vm_arch_vcpu_recreate(struct kvm_vm * vm,uint32_t vcpu_id) vm_arch_vcpu_recreate() argument
589 vm_recreate_with_one_vcpu(struct kvm_vm * vm) vm_recreate_with_one_vcpu() argument
685 userspace_mem_region_find(struct kvm_vm * vm,uint64_t start,uint64_t end) userspace_mem_region_find() argument
738 vm_vcpu_rm(struct kvm_vm * vm,struct kvm_vcpu * vcpu) vm_vcpu_rm() argument
772 __vm_mem_region_delete(struct kvm_vm * vm,struct userspace_mem_region * region) __vm_mem_region_delete() argument
888 __vm_set_user_memory_region(struct kvm_vm * vm,uint32_t slot,uint32_t flags,uint64_t gpa,uint64_t size,void * hva) __vm_set_user_memory_region() argument
902 vm_set_user_memory_region(struct kvm_vm * vm,uint32_t slot,uint32_t flags,uint64_t gpa,uint64_t size,void * hva) vm_set_user_memory_region() argument
915 __vm_set_user_memory_region2(struct kvm_vm * vm,uint32_t slot,uint32_t flags,uint64_t gpa,uint64_t size,void * hva,uint32_t guest_memfd,uint64_t guest_memfd_offset) __vm_set_user_memory_region2() argument
934 vm_set_user_memory_region2(struct kvm_vm * vm,uint32_t slot,uint32_t flags,uint64_t gpa,uint64_t size,void * hva,uint32_t guest_memfd,uint64_t guest_memfd_offset) vm_set_user_memory_region2() argument
947 vm_mem_add(struct kvm_vm * vm,enum vm_mem_backing_src_type src_type,uint64_t gpa,uint32_t slot,uint64_t npages,uint32_t flags,int guest_memfd,uint64_t guest_memfd_offset) vm_mem_add() argument
1116 vm_userspace_mem_region_add(struct kvm_vm * vm,enum vm_mem_backing_src_type src_type,uint64_t gpa,uint32_t slot,uint64_t npages,uint32_t flags) vm_userspace_mem_region_add() argument
1140 memslot2region(struct kvm_vm * vm,uint32_t memslot) memslot2region() argument
1171 vm_mem_region_set_flags(struct kvm_vm * vm,uint32_t slot,uint32_t flags) vm_mem_region_set_flags() argument
1187 vm_mem_region_reload(struct kvm_vm * vm,uint32_t slot) vm_mem_region_reload() argument
1211 vm_mem_region_move(struct kvm_vm * vm,uint32_t slot,uint64_t new_gpa) vm_mem_region_move() argument
1240 vm_mem_region_delete(struct kvm_vm * vm,uint32_t slot) vm_mem_region_delete() argument
1250 vm_guest_mem_fallocate(struct kvm_vm * vm,uint64_t base,uint64_t size,bool punch_hole) vm_guest_mem_fallocate() argument
1294 vcpu_exists(struct kvm_vm * vm,uint32_t vcpu_id) vcpu_exists() argument
1310 __vm_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id) __vm_vcpu_add() argument
1363 vm_vaddr_unused_gap(struct kvm_vm * vm,size_t sz,vm_vaddr_t vaddr_min) vm_vaddr_unused_gap() argument
1429 ____vm_vaddr_alloc(struct kvm_vm * vm,size_t sz,vm_vaddr_t vaddr_min,enum kvm_mem_region_type type,bool protected) ____vm_vaddr_alloc() argument
1457 __vm_vaddr_alloc(struct kvm_vm * vm,size_t sz,vm_vaddr_t vaddr_min,enum kvm_mem_region_type type) __vm_vaddr_alloc() argument
1464 vm_vaddr_alloc_shared(struct kvm_vm * vm,size_t sz,vm_vaddr_t vaddr_min,enum kvm_mem_region_type type) vm_vaddr_alloc_shared() argument
1490 vm_vaddr_alloc(struct kvm_vm * vm,size_t sz,vm_vaddr_t vaddr_min) vm_vaddr_alloc() argument
1509 vm_vaddr_alloc_pages(struct kvm_vm * vm,int nr_pages) vm_vaddr_alloc_pages() argument
1514 __vm_vaddr_alloc_page(struct kvm_vm * vm,enum kvm_mem_region_type type) __vm_vaddr_alloc_page() argument
1533 vm_vaddr_alloc_page(struct kvm_vm * vm) vm_vaddr_alloc_page() argument
1554 virt_map(struct kvm_vm * vm,uint64_t vaddr,uint64_t paddr,unsigned int npages) virt_map() argument
1588 addr_gpa2hva(struct kvm_vm * vm,vm_paddr_t gpa) addr_gpa2hva() argument
1621 addr_hva2gpa(struct kvm_vm * vm,void * hva) addr_hva2gpa() argument
1664 addr_gpa2alias(struct kvm_vm * vm,vm_paddr_t gpa) addr_gpa2alias() argument
1681 vm_create_irqchip(struct kvm_vm * vm) vm_create_irqchip() argument
1799 __kvm_test_create_device(struct kvm_vm * vm,uint64_t type) __kvm_test_create_device() argument
1809 __kvm_create_device(struct kvm_vm * vm,uint64_t type) __kvm_create_device() argument
1851 _kvm_irq_line(struct kvm_vm * vm,uint32_t irq,int level) _kvm_irq_line() argument
1861 kvm_irq_line(struct kvm_vm * vm,uint32_t irq,int level) kvm_irq_line() argument
1899 _kvm_gsi_routing_write(struct kvm_vm * vm,struct kvm_irq_routing * routing) _kvm_gsi_routing_write() argument
1910 kvm_gsi_routing_write(struct kvm_vm * vm,struct kvm_irq_routing * routing) kvm_gsi_routing_write() argument
1933 vm_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent) vm_dump() argument
2068 __vm_phy_pages_alloc(struct kvm_vm * vm,size_t num,vm_paddr_t paddr_min,uint32_t memslot,bool protected) __vm_phy_pages_alloc() argument
2114 vm_phy_page_alloc(struct kvm_vm * vm,vm_paddr_t paddr_min,uint32_t memslot) vm_phy_page_alloc() argument
2120 vm_alloc_page_table(struct kvm_vm * vm) vm_alloc_page_table() argument
2138 addr_gva2hva(struct kvm_vm * vm,vm_vaddr_t gva) addr_gva2hva() argument
2143 vm_compute_max_gfn(struct kvm_vm * vm) vm_compute_max_gfn() argument
2283 kvm_arch_vm_post_create(struct kvm_vm * vm,unsigned int nr_vcpus) kvm_arch_vm_post_create() argument
2287 kvm_arch_vm_finalize_vcpus(struct kvm_vm * vm) kvm_arch_vm_finalize_vcpus() argument
2291 kvm_arch_vm_release(struct kvm_vm * vm) kvm_arch_vm_release() argument
2334 vm_is_gpa_protected(struct kvm_vm * vm,vm_paddr_t paddr) vm_is_gpa_protected() argument
[all...]
/linux/tools/testing/selftests/kvm/lib/s390/
H A Dprocessor.c13 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 paddr = 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, paddr), 0xff, PAGES_PER_REGION * vm->page_size); in virt_arch_pgd_alloc()
28 vm->mmu.pgd = paddr; in virt_arch_pgd_alloc()
29 vm in virt_arch_pgd_alloc()
37 virt_alloc_region(struct kvm_vm * vm,int ri) virt_alloc_region() argument
50 virt_arch_pg_map(struct kvm_vm * vm,uint64_t gva,uint64_t gpa) virt_arch_pg_map() argument
89 addr_arch_gva2gpa(struct kvm_vm * vm,vm_vaddr_t gva) addr_arch_gva2gpa() argument
114 virt_dump_ptes(FILE * stream,struct kvm_vm * vm,uint8_t indent,uint64_t ptea_start) virt_dump_ptes() argument
128 virt_dump_region(FILE * stream,struct kvm_vm * vm,uint8_t indent,uint64_t reg_tab_addr) virt_dump_region() argument
150 virt_arch_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent) virt_arch_dump() argument
163 vm_arch_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id) vm_arch_vcpu_add() argument
[all...]
/linux/drivers/virt/acrn/
H A Dvm.c25 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 Dirqfd.c30 struct acrn_vm *vm; member
41 struct acrn_vm *vm = irqfd->vm; in acrn_irqfd_inject() local
43 acrn_msi_inject(vm, irqfd->msi.msi_addr, in acrn_irqfd_inject()
51 lockdep_assert_held(&irqfd->vm->irqfds_lock); in hsm_irqfd_shutdown()
63 struct acrn_vm *vm; in hsm_irqfd_shutdown_work() local
66 vm = irqfd->vm; in hsm_irqfd_shutdown_work()
67 mutex_lock(&vm->irqfds_lock); in hsm_irqfd_shutdown_work()
70 mutex_unlock(&vm->irqfds_lock); in hsm_irqfd_shutdown_work()
79 struct acrn_vm *vm; in hsm_irqfd_wakeup() local
82 vm = irqfd->vm; in hsm_irqfd_wakeup()
[all …]
H A Dioreq.c39 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 Dioeventfd.c43 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 Dmock_gtt.c27 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/drivers/gpu/drm/i915/gt/
H A Dgen8_ppgtt.c90 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/sound/pci/ctxfi/
H A Dctvmem.c30 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/drivers/gpu/drm/i915/display/
H A Dintel_dpt.c21 struct i915_address_space vm; member
28 #define i915_is_dpt(vm) ((vm)->is_dpt) argument
31 i915_vm_to_dpt(struct i915_address_space *vm) in i915_vm_to_dpt() argument
33 BUILD_BUG_ON(offsetof(struct i915_dpt, vm)); in i915_vm_to_dpt()
34 drm_WARN_ON(&vm->i915->drm, !i915_is_dpt(vm)); in i915_vm_to_dpt()
35 return container_of(vm, struct i915_dpt, vm); in i915_vm_to_dpt()
43 static void dpt_insert_page(struct i915_address_space *vm, in dpt_insert_page() argument
49 struct i915_dpt *dpt = i915_vm_to_dpt(vm); in dpt_insert_page()
53 vm->pte_encode(addr, pat_index, flags)); in dpt_insert_page()
56 static void dpt_insert_entries(struct i915_address_space *vm, in dpt_insert_entries() argument
[all …]
/linux/tools/testing/selftests/kvm/include/
H A Dkvm_util.h63 struct kvm_vm *vm; member
160 #define kvm_for_each_vcpu(vm, i, vcpu) \ in vm_get_mem_region()
161 for ((i) = 0; (i) <= (vm)->last_vcpu_id; (i)++) \ in vm_get_mem_region()
162 if (!((vcpu) = vm->vcpus[i])) \ in vm_get_mem_region()
167 memslot2region(struct kvm_vm *vm, uint32_t memslot);
169 static inline struct userspace_mem_region *vm_get_mem_region(struct kvm_vm *vm,
173 return memslot2region(vm, vm->memslots[type]);
336 static __always_inline void static_assert_is_vm(struct kvm_vm *vm) { }
338 #define __vm_ioctl(vm, cm
148 kvm_for_each_vcpu(vm,i,vcpu) global() argument
157 vm_get_mem_region(struct kvm_vm * vm,enum kvm_mem_region_type type) vm_get_mem_region() argument
313 static_assert_is_vm(struct kvm_vm * vm) static_assert_is_vm() argument
315 __vm_ioctl(vm,cmd,arg) global() argument
329 __TEST_ASSERT_VM_VCPU_IOCTL(cond,name,ret,vm) global() argument
347 TEST_ASSERT_VM_VCPU_IOCTL(cond,cmd,ret,vm) global() argument
350 vm_ioctl(vm,cmd,arg) global() argument
376 vm_check_cap(struct kvm_vm * vm,long cap) vm_check_cap() argument
384 __vm_enable_cap(struct kvm_vm * vm,uint32_t cap,uint64_t arg0) __vm_enable_cap() argument
390 vm_enable_cap(struct kvm_vm * vm,uint32_t cap,uint64_t arg0) vm_enable_cap() argument
397 vm_set_memory_attributes(struct kvm_vm * vm,uint64_t gpa,uint64_t size,uint64_t attributes) vm_set_memory_attributes() argument
418 vm_mem_set_private(struct kvm_vm * vm,uint64_t gpa,uint64_t size) vm_mem_set_private() argument
424 vm_mem_set_shared(struct kvm_vm * vm,uint64_t gpa,uint64_t size) vm_mem_set_shared() argument
433 vm_guest_mem_punch_hole(struct kvm_vm * vm,uint64_t gpa,uint64_t size) vm_guest_mem_punch_hole() argument
439 vm_guest_mem_allocate(struct kvm_vm * vm,uint64_t gpa,uint64_t size) vm_guest_mem_allocate() argument
456 kvm_vm_get_dirty_log(struct kvm_vm * vm,int slot,void * log) kvm_vm_get_dirty_log() argument
463 kvm_vm_clear_dirty_log(struct kvm_vm * vm,int slot,void * log,uint64_t first_page,uint32_t num_pages) kvm_vm_clear_dirty_log() argument
476 kvm_vm_reset_dirty_ring(struct kvm_vm * vm) kvm_vm_reset_dirty_ring() argument
481 kvm_vm_register_coalesced_io(struct kvm_vm * vm,uint64_t address,uint64_t size,bool pio) kvm_vm_register_coalesced_io() argument
494 kvm_vm_unregister_coalesced_io(struct kvm_vm * vm,uint64_t address,uint64_t size,bool pio) kvm_vm_unregister_coalesced_io() argument
507 vm_get_stats_fd(struct kvm_vm * vm) vm_get_stats_fd() argument
515 __kvm_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd,uint32_t flags) __kvm_irqfd() argument
528 kvm_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd,uint32_t flags) kvm_irqfd() argument
536 kvm_assign_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd) kvm_assign_irqfd() argument
541 kvm_deassign_irqfd(struct kvm_vm * vm,uint32_t gsi,int eventfd) kvm_deassign_irqfd() argument
604 vm_get_stat(vm,stat) global() argument
644 __vm_create_guest_memfd(struct kvm_vm * vm,uint64_t size,uint64_t flags) __vm_create_guest_memfd() argument
655 vm_create_guest_memfd(struct kvm_vm * vm,uint64_t size,uint64_t flags) vm_create_guest_memfd() argument
684 vm_arch_has_protected_memory(struct kvm_vm * vm) vm_arch_has_protected_memory() argument
719 vm_untag_gpa(struct kvm_vm * vm,vm_paddr_t gpa) vm_untag_gpa() argument
928 kvm_create_device(struct kvm_vm * vm,uint64_t type) kvm_create_device() argument
977 vm_phy_pages_alloc(struct kvm_vm * vm,size_t num,vm_paddr_t paddr_min,uint32_t memslot) vm_phy_pages_alloc() argument
1114 sync_global_to_guest(vm,g) global() argument
1119 sync_global_from_guest(vm,g) global() argument
1130 write_guest_global(vm,g,val) global() argument
1158 vm_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id,void * guest_code) vm_vcpu_add() argument
1171 vm_vcpu_recreate(struct kvm_vm * vm,uint32_t vcpu_id) vm_vcpu_recreate() argument
1181 virt_pgd_alloc(struct kvm_vm * vm) virt_pgd_alloc() argument
1204 virt_pg_map(struct kvm_vm * vm,uint64_t vaddr,uint64_t paddr) virt_pg_map() argument
1228 addr_gva2gpa(struct kvm_vm * vm,vm_vaddr_t gva) addr_gva2gpa() argument
1250 virt_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent) virt_dump() argument
1256 __vm_disable_nx_huge_pages(struct kvm_vm * vm) __vm_disable_nx_huge_pages() argument
[all...]
/linux/drivers/gpu/drm/radeon/
H A Dradeon_vm.c130 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/lib/riscv/
H A Dprocessor.c30 static uint64_t pte_addr(struct kvm_vm *vm, uint64_t entry) in page_align()
36 static uint64_t ptrs_per_pte(struct kvm_vm *vm) in pte_addr()
55 static uint64_t pte_index(struct kvm_vm *vm, vm_vaddr_t gva, int level)
59 TEST_ASSERT(level < vm->mmu.pgtable_levels, in pte_index() argument
65 void virt_arch_pgd_alloc(struct kvm_vm *vm) in pte_index()
67 size_t nr_pages = vm_page_align(vm, ptrs_per_pte(vm) * 8) / vm->page_size; in pte_index()
69 if (vm->mmu.pgd_created) in virt_arch_pgd_alloc() argument
72 vm in virt_arch_pgd_alloc()
29 page_align(struct kvm_vm * vm,uint64_t v) page_align() argument
34 pte_addr(struct kvm_vm * vm,uint64_t entry) pte_addr() argument
40 ptrs_per_pte(struct kvm_vm * vm) ptrs_per_pte() argument
82 virt_arch_pg_map(struct kvm_vm * vm,uint64_t vaddr,uint64_t paddr) virt_arch_pg_map() argument
126 addr_arch_gva2gpa(struct kvm_vm * vm,vm_vaddr_t gva) addr_arch_gva2gpa() argument
155 pte_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent,uint64_t page,int level) pte_dump() argument
177 virt_arch_dump(FILE * stream,struct kvm_vm * vm,uint8_t indent) virt_arch_dump() argument
198 struct kvm_vm *vm = vcpu->vm; riscv_vcpu_mmu_setup() local
298 vm_arch_vcpu_add(struct kvm_vm * vm,uint32_t vcpu_id) vm_arch_vcpu_add() argument
434 vm_init_vector_tables(struct kvm_vm * vm) vm_init_vector_tables() argument
442 vm_install_exception_handler(struct kvm_vm * vm,int vector,exception_handler_fn handler) vm_install_exception_handler() argument
450 vm_install_interrupt_handler(struct kvm_vm * vm,exception_handler_fn handler) vm_install_interrupt_handler() argument
[all...]
/linux/tools/testing/selftests/kvm/
H A Dset_memory_region_test.c113 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_QUIRKS2, KVM_X86_QUIRK_SLOT_ZAP_ALL); in test_move_memory_region()
[all …]
/linux/tools/testing/selftests/kvm/lib/x86/
H A Dprocessor.c162 static void virt_mmu_init(struct kvm_vm *vm, struct kvm_mmu *mmu, in virt_mmu_init() argument
167 mmu->pgd = vm_alloc_page_table(vm); in virt_mmu_init()
177 void virt_arch_pgd_alloc(struct kvm_vm *vm) in virt_arch_pgd_alloc() argument
179 TEST_ASSERT(vm->mode == VM_MODE_PXXVYY_4K, in virt_arch_pgd_alloc()
180 "Unknown or unsupported guest mode: 0x%x", vm->mode); in virt_arch_pgd_alloc()
191 .c = vm->arch.c_bit, in virt_arch_pgd_alloc()
192 .s = vm->arch.s_bit, in virt_arch_pgd_alloc()
195 virt_mmu_init(vm, &vm->mmu, &pte_masks); in virt_arch_pgd_alloc()
198 void tdp_mmu_init(struct kvm_vm *vm, int pgtable_levels, in tdp_mmu_init() argument
201 TEST_ASSERT(!vm->stage2_mmu.pgtable_levels, "TDP MMU already initialized"); in tdp_mmu_init()
[all …]

12345678910>>...17