Lines Matching full:slot
69 hvf_slot *slot; in hvf_find_overlap_slot() local
72 slot = &hvf_state->slots[x]; in hvf_find_overlap_slot()
73 if (slot->size && start < (slot->start + slot->size) && in hvf_find_overlap_slot()
74 (start + size) > slot->start) { in hvf_find_overlap_slot()
75 return slot; in hvf_find_overlap_slot()
90 static int do_hvf_set_memory(hvf_slot *slot, hv_memory_flags_t flags) in do_hvf_set_memory() argument
95 macslot = &mac_slots[slot->slot_id]; in do_hvf_set_memory()
98 if (macslot->size != slot->size) { in do_hvf_set_memory()
105 if (!slot->size) { in do_hvf_set_memory()
110 macslot->gpa_start = slot->start; in do_hvf_set_memory()
111 macslot->size = slot->size; in do_hvf_set_memory()
112 ret = hv_vm_map(slot->mem, slot->start, slot->size, flags); in do_hvf_set_memory()
131 * to remove the hvf memory slot so all accesses will trap. in hvf_set_phys_mem()
160 error_report("Failed to reset overlapping slot"); in hvf_set_phys_mem()
176 /* Now make a new slot. */ in hvf_set_phys_mem()
197 error_report("Error registering new memory slot"); in hvf_set_phys_mem()
241 hvf_slot *slot; in hvf_set_dirty_tracking() local
243 slot = hvf_find_overlap_slot( in hvf_set_dirty_tracking()
249 slot->flags |= HVF_SLOT_LOG; in hvf_set_dirty_tracking()
250 hv_vm_protect((uintptr_t)slot->start, (size_t)slot->size, in hvf_set_dirty_tracking()
254 slot->flags &= ~HVF_SLOT_LOG; in hvf_set_dirty_tracking()
255 hv_vm_protect((uintptr_t)slot->start, (size_t)slot->size, in hvf_set_dirty_tracking()