Home
last modified time | relevance | path

Searched refs:memslots (Results 1 - 15 of 15) sorted by relevance

/kernel/linux/linux-5.10/include/linux/
H A Dkvm_host.h54 * i.e. may (or may not) have come from the previous memslots generation.
56 * This is necessary because the actual memslots update is not atomic with
58 * first would allow a vCPU to cache a spte from the old memslots using the
60 * to the new memslots would allow cache hits using the old generation number
61 * to reference the defunct memslots.
66 * cache *before* the memslots were updated.
435 * memslots are not sorted by id anymore, please use id_to_memslot()
440 /* The mapping table from slot id to the index in memslots[]. */
444 struct kvm_memory_slot memslots[]; member
451 struct kvm_memslots __rcu *memslots[KVM_ADDRESS_SPACE_NU member
1099 struct kvm_memory_slot *memslots = slots->memslots; search_memslots() local
[all...]
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/aarch64/
H A Dpage_fault_test.c173 * in a gap between memslots not backing by anything. in guest_ld_preidx()
601 vm->memslots[MEM_REGION_CODE] = CODE_AND_DATA_MEMSLOT; in setup_memslots()
602 vm->memslots[MEM_REGION_DATA] = CODE_AND_DATA_MEMSLOT; in setup_memslots()
607 vm->memslots[MEM_REGION_PT] = PAGE_TABLE_MEMSLOT; in setup_memslots()
612 vm->memslots[MEM_REGION_TEST_DATA] = TEST_DATA_MEMSLOT; in setup_memslots()
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/s390x/
H A Dcmma_test.c107 /* set the array of memslots to zero like __vm_create does */ in create_main_memslot()
109 vm->memslots[i] = 0; in create_main_memslot()
121 vm->memslots[MEM_REGION_TEST_DATA] = TEST_DATA_MEMSLOT; in create_test_memslot()
305 /* migration mode when memslots have dirty tracking off should fail */ in test_migration_mode()
377 * CMMA attributes of all pages in both memslots and nothing more dirty.
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/lib/s390x/
H A Dprocessor.c25 vm->memslots[MEM_REGION_PT]); in virt_arch_pgd_alloc()
/kernel/linux/linux-5.10/arch/s390/kvm/
H A Dkvm-s390.c1005 * Must be called with kvm->srcu held to avoid races on memslots, and with
1028 ms = slots->memslots + slotnr; in kvm_s390_vm_start_migration()
1936 * address falls in a hole. In that case the index of one of the memslots
1943 struct kvm_memory_slot *memslots = slots->memslots; in gfn_to_memslot_approx() local
1945 if (gfn >= memslots[slot].base_gfn && in gfn_to_memslot_approx()
1946 gfn < memslots[slot].base_gfn + memslots[slot].npages) in gfn_to_memslot_approx()
1952 if (gfn >= memslots[slot].base_gfn) in gfn_to_memslot_approx()
1961 if (gfn >= memslots[star in gfn_to_memslot_approx()
[all...]
H A Dpv.c133 memslot = kvm_memslots(kvm)->memslots; in kvm_s390_pv_alloc_vm()
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/include/
H A Dkvm_util_base.h121 * KVM region slots. These are the default memslots used by page
122 * allocators, e.g., lib/elf uses the memslots[MEM_REGION_CODE]
125 uint32_t memslots[NR_MEM_REGIONS]; member
162 return memslot2region(vm, vm->memslots[type]); in vm_get_mem_region()
/kernel/linux/linux-5.10/arch/powerpc/include/asm/
H A Dkvm_book3s_64.h539 return rcu_dereference_raw_check(kvm->memslots[0]); in kvm_memslots_raw()
/kernel/linux/linux-6.6/arch/powerpc/include/asm/
H A Dkvm_book3s_64.h540 return rcu_dereference_raw_check(kvm->memslots[0]); in kvm_memslots_raw()
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/lib/riscv/
H A Dprocessor.c65 vm->memslots[MEM_REGION_PT]); in virt_arch_pgd_alloc()
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/lib/
H A Dkvm_util.c366 vm->memslots[i] = 0; in __vm_create()
371 * TODO: Add proper defines to protect the library's memslots, and then in __vm_create()
373 * read-only memslots as MMIO, and creating a read-only memslot for the in __vm_create()
1340 vm->memslots[type]); in __vm_vaddr_alloc()
1989 vm->memslots[MEM_REGION_PT]); in vm_alloc_page_table()
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/lib/aarch64/
H A Dprocessor.c104 vm->memslots[MEM_REGION_PT]); in virt_arch_pgd_alloc()
/kernel/linux/linux-5.10/virt/kvm/
H A Dkvm_main.c840 rcu_assign_pointer(kvm->memslots[i], slots); in kvm_create_vm()
1027 struct kvm_memory_slot *mslots = slots->memslots; in kvm_memslot_delete()
1048 * the new slot's initial index into the memslots array.
1060 * current index into the memslots array.
1065 struct kvm_memory_slot *mslots = slots->memslots; in kvm_memslot_move_backward()
1074 * memslots with a higher GFN (than the target memslot) towards the in kvm_memslot_move_backward()
1095 * into the memslots array.
1101 struct kvm_memory_slot *mslots = slots->memslots; in kvm_memslot_move_forward()
1118 * Re-sort memslots based on their GFN to account for an added, deleted, or
1119 * moved memslot. Sorting memslots b
[all...]
/kernel/linux/linux-6.6/include/linux/
H A Dkvm_host.h64 * i.e. may (or may not) have come from the previous memslots generation.
66 * This is necessary because the actual memslots update is not atomic with
68 * first would allow a vCPU to cache a spte from the old memslots using the
70 * to the new memslots would allow cache hits using the old generation number
71 * to reference the defunct memslots.
76 * cache *before* the memslots were updated.
570 * These two memslot sets normally point to the same set of memslots.
576 * The memslots themselves are independent of each other so they can be
726 struct kvm_memslots __rcu *memslots[KVM_ADDRESS_SPACE_NUM]; member
993 return srcu_dereference_check(kvm->memslots[as_i in __kvm_memslots()
[all...]
/kernel/linux/linux-6.6/virt/kvm/
H A Dkvm_main.c617 * range is covered by zero or one memslots, don't in __kvm_handle_hva_range()
702 * Skipping invalid memslots is correct if and only change_pte() is in kvm_change_spte_gfn()
730 * start(); rechecking memslots here is unnecessary. Note, a false in kvm_mmu_notifier_change_pte()
1212 rcu_assign_pointer(kvm->memslots[i], &kvm->__memslots[i][0]); in kvm_create_vm()
1332 * memslots would deadlock without this manual intervention. in kvm_destroy_vm()
1487 * Replace @old with @new in the inactive memslots.
1566 /* Grab the generation from the activate memslots. */ in kvm_swap_active_memslots()
1573 * Do not store the new memslots while there are invalidations in in kvm_swap_active_memslots()
1586 rcu_assign_pointer(kvm->memslots[as_id], slots); in kvm_swap_active_memslots()
1602 * identifiable generation number while the memslots ar in kvm_swap_active_memslots()
[all...]

Completed in 33 milliseconds