if (global_state->active == 1) {
// unmap page
- struct v3_shadow_region * old_reg = v3_get_shadow_region(core->vm_info, core->cpu_id,
+ struct v3_mem_region * old_reg = v3_get_mem_region(core->vm_info, core->vcpu_id,
(addr_t)global_state->global_guest_pa);
if (old_reg == NULL) {
return -1;
}
- v3_delete_shadow_region(core->vm_info, old_reg);
+ v3_delete_mem_region(core->vm_info, old_reg);
}
global_state->global_guest_pa = src.value;
if (local_state->active == 1) {
// unmap page
- struct v3_shadow_region * old_reg = v3_get_shadow_region(core->vm_info, core->cpu_id,
+ struct v3_mem_region * old_reg = v3_get_mem_region(core->vm_info, core->vcpu_id,
(addr_t)local_state->local_guest_pa);
if (old_reg == NULL) {
return -1;
}
- v3_delete_shadow_region(core->vm_info, old_reg);
+ v3_delete_mem_region(core->vm_info, old_reg);
}
local_state->local_guest_pa = src.value;
local_state->active = 1;
// map page
- v3_add_shadow_mem(core->vm_info, core->cpu_id, (addr_t)local_state->local_guest_pa,
+ v3_add_shadow_mem(core->vm_info, core->vcpu_id, (addr_t)local_state->local_guest_pa,
(addr_t)(local_state->local_guest_pa + PAGE_SIZE_4KB - 1),
local_state->local_page_pa);
} else {
state->local_page = (struct v3_symspy_local_page *)V3_VAddr((void *)state->local_page_pa);
memset(state->local_page, 0, PAGE_SIZE_4KB);
- snprintf((uint8_t *)&(state->local_page->magic), 8, "V3V.%d", core->cpu_id);
+ snprintf((uint8_t *)&(state->local_page->magic), 8, "V3V.%d", core->vcpu_id);
return 0;
}
return 0;
}
+
+
+struct v3_symspy_global_page * v3_sym_get_symspy_vm(struct v3_vm_info * vm) {
+ return vm->sym_vm_state.symspy_state.sym_page;
+}
+
+struct v3_symspy_local_page * v3_sym_get_symspy_core(struct guest_info * core) {
+ return core->sym_core_state.symspy_state.local_page;
+}